Перетворіть JPEG2000 на DICOM за допомогою Java
Перетворіть JPEG2000 у DICOM за допомогою власних API Java, не потребуючи будь-якого редактора зображень або сторонніх бібліотек.
Як перетворити JPEG2000 на DICOM за допомогою Java
Перетворення форматів файлів може здатися рутинним завданням, з яким стикаються графічні дизайнери. Проте недооцінювати його значення було б помилкою. Оцінка вашої роботи може залежати від того, наскільки швидко і ефективно ви вирішите це завдання. Як правило, оригінальні зображення потребують перетворення у формати, які краще підходять для друку або публікації в Інтернеті. Якщо вихідне зображення походить із графічного редактора, воно може бути у векторному форматі. У цьому випадку його потрібно растеризувати та перетворити на растровий формат для публікації. У вас є вибір: зберегти зображення в нестисненому форматі для оптимальної якості або конвертувати його у стиснутий формат без втрат, щоб зменшити розмір файлу. У певних контекстах, як-от веб-публікація, ви можете вибрати формати зі стисненням із втратами даних. Спеціально розроблені алгоритми стиснення даних зображення дозволяють значно зменшити розмір файлу, зберігаючи прийнятну якість зображення. Це полегшує швидке завантаження файлів зображень з Інтернету. Щоб перетворити JPEG2000 на DICOM, ми будемо використовувати Aspose.Imaging for Java API, який є багатофункціональним, потужним і простим у використанні API для обробки зображень і перетворення для платформи Java. Ви можете завантажити його останню версію безпосередньо з Maven і встановити на своєму Maven на основі проекту, додавши такі конфігурації до pom.xml.
Репозиторiй
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Залежність
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>Version of aspose-imaging API</version>
<classifier>jdk16</classifier>
</dependency>
Кроки для перетворення JPEG2000 у DICOM за допомогою Java
Розробники можуть легко завантажити та перетворити файли JPEG2000 у DICOM лише за кілька рядків коду.
- Завантажити файл JPEG2000 методом Image.load
- Створіть і встановіть екземпляр необхідного підкласу ImageOptionsBase (наприклад, BmpOptions, PngOptions тощо)
- Викличте метод Image.save
- Передайте шлях до файлу з розширенням DICOM і об’єкт класу ImageOptionsBase
Системні вимоги
Перш ніж запускати код прикладу перетворення, переконайтеся, що у вас є такі передумови.
- Операційна система: Windows або Linux.
- Середовище розробки: підтримує .NET Core 7 і вище, наприклад Microsoft Visual Studio.
Безкоштовна програма для перетворення JPEG2000 у DICOM
- Виберіть або перетягніть зображення JPEG2000
- Виберіть формат і натисніть кнопку Конвертувати.
- Натисніть кнопку «Завантажити», щоб завантажити зображення DICOM
Перегляньте наші демонстрації в прямому ефірі для перетворення JPEG2000 у DICOM
Перетворити JPEG2000 на DICOM - Java
import com.aspose.imaging.Image; | |
import com.aspose.imaging.ImageOptionsBase; | |
import com.aspose.imaging.fileformats.jpeg2000.Jpeg2000Codec; | |
import com.aspose.imaging.fileformats.png.PngColorType; | |
import com.aspose.imaging.fileformats.tiff.enums.TiffExpectedFormat; | |
import com.aspose.imaging.imageoptions.*; | |
//This example demonstrates how to convert all supported file formats from one to another | |
String templatesFolder = "D:\\WorkDir\\"; | |
//Formats that support both - save and load | |
HashMap<String, ImageOptionsBase> formatsThatSupportExportAndImport = new HashMap<String, ImageOptionsBase>(); | |
formatsThatSupportExportAndImport.put("bmp", new BmpOptions()); | |
formatsThatSupportExportAndImport.put("gif", new GifOptions()); | |
formatsThatSupportExportAndImport.put("dicom", new DicomOptions()); | |
formatsThatSupportExportAndImport.put("emf", new EmfOptions()); | |
formatsThatSupportExportAndImport.put("jpg", new JpegOptions()); | |
formatsThatSupportExportAndImport.put("jpeg", new JpegOptions()); | |
formatsThatSupportExportAndImport.put("jpeg2000", new Jpeg2000Options() ); | |
formatsThatSupportExportAndImport.put("j2k", new Jpeg2000Options() {{ setCodec(Jpeg2000Codec.J2K); }} ); | |
formatsThatSupportExportAndImport.put("jp2", new Jpeg2000Options() {{ setCodec(Jpeg2000Codec.Jp2); }} ); | |
formatsThatSupportExportAndImport.put("png",new PngOptions() {{ setColorType(PngColorType.TruecolorWithAlpha); }}); | |
formatsThatSupportExportAndImport.put("apng", new ApngOptions()); | |
formatsThatSupportExportAndImport.put("svg", new SvgOptions()); | |
formatsThatSupportExportAndImport.put("tiff", new TiffOptions(TiffExpectedFormat.Default)); | |
formatsThatSupportExportAndImport.put("tif", new TiffOptions(TiffExpectedFormat.Default)); | |
formatsThatSupportExportAndImport.put("wmf", new WmfOptions()); | |
formatsThatSupportExportAndImport.put("emz", new EmfOptions() {{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("wmz", new WmfOptions() {{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("svgz", new SvgOptions(){{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("tga", new TgaOptions()); | |
formatsThatSupportExportAndImport.put("webp", new WebPOptions()); | |
formatsThatSupportExportAndImport.put("ico", new IcoOptions()); | |
//Formats that can be only saved | |
HashMap<String, ImageOptionsBase> formatsOnlyForExport = new HashMap<String, ImageOptionsBase>(); | |
formatsOnlyForExport.put("psd", new PsdOptions()); | |
formatsOnlyForExport.put("dxf", new DxfOptions() {{ setTextAsLines(true); setConvertTextBeziers(true); }} ); | |
formatsOnlyForExport.put("pdf", new PdfOptions()); | |
formatsOnlyForExport.put("html", new Html5CanvasOptions()); | |
//Formats that can be only loaded | |
List<String> formatsOnlyForImport = Arrays.asList("djvu", "dng", "dib", "eps", "cdr", "cmx", "otg", "odg"); | |
//Get total formats that can be saved | |
HashMap<String, ImageOptionsBase> exportToFormats = new HashMap<String, ImageOptionsBase>(formatsOnlyForExport); | |
exportToFormats.putAll(formatsThatSupportExportAndImport); | |
//Get total formats that can be loaded | |
List<String> importFormats = new LinkedList<>(formatsOnlyForImport); | |
importFormats.addAll(formatsThatSupportExportAndImport.keySet()); | |
importFormats.forEach((formatExt) -> { | |
String inputFile = templatesFolder + "template." + formatExt; | |
for (Map.Entry<String, ImageOptionsBase> exportFormat : exportToFormats.entrySet()) | |
{ | |
String outputFile = String.format("%s\\%s\\%s-%s-to-%s.%s", templatesFolder, "convert", "convert-", formatExt, exportFormat.getKey(), exportFormat.getKey()); | |
System.out.println(outputFile); | |
// More about load method can be found at | |
// https://apireference.aspose.com/imaging/java/com.aspose.imaging/Image#load-java.lang.String- | |
try (Image image = Image.load(inputFile)) | |
{ | |
ImageOptionsBase exportOptions = exportFormat.getValue().deepClone(); | |
if ((formatExt.equals("emf") || formatExt.equals("emz")) && (exportFormat.getValue() instanceof WmfOptions)) | |
{ | |
EmfRasterizationOptions rasterizationOptions = new EmfRasterizationOptions(); | |
rasterizationOptions.setPageWidth(image.getWidth()); | |
rasterizationOptions.setPageHeight(image.getHeight()); | |
exportOptions.setVectorRasterizationOptions(rasterizationOptions); | |
} | |
image.save(outputFile, exportOptions); | |
} | |
} | |
}); |
JPEG2000 Що таке JPEG2000 формат
JPEG 2000 (JP2) — це система кодування зображень і сучасний стандарт стиснення зображень. Розроблений із використанням вейвлет-технології JPEG 2000 може кодувати вміст без втрат у будь-якій якості одночасно. Крім того, без суттєвого зниження ефективності кодування JPEG 2000 має можливість отримувати доступ і ефективно декодувати той самий вміст у різні інші роздільності та якості. Потоки коду в JPEG 2000 є значно масштабованими, маючи області інтересу, які забезпечують можливість просторового довільного доступу. Має до 16384 різноманітних компонентів із розмірами в терапікселях і точністю до 38 біт/зразок.
Детальніше | JPEG2000DICOM Що таке DICOM формат
DICOM — це абревіатура від Digital Imaging and Communications in Medicine і відноситься до галузі медичної інформатики. DICOM — це поєднання визначення формату файлу та протоколу мережевого зв’язку. DICOM використовує розширення .DCM. .DCM існує у двох різних форматах, тобто форматі 1.x і форматі 2.x. Формат DCM 1.x також доступний у двох версіях: звичайній і розширеній. DICOM використовується для інтеграції медичних пристроїв візуалізації, таких як принтери, сервери, сканери тощо від різних постачальників, а також містить ідентифікаційні дані кожного пацієнта для унікальності. Файли DICOM можуть використовуватися між двома сторонами, якщо вони здатні отримувати дані зображення у форматі DICOM. Комунікаційна частина DICOM є протоколом прикладного рівня та використовує TCP/IP для зв’язку між об’єктами. Для веб-служб DICOM використовуються протоколи HTTP і HTTPS. Веб-службами підтримуються версії 1.0, 1.1, 2 або новіші.
Детальніше | DICOMІнші підтримувані перетворення
Використовуючи Java, можна легко конвертувати різні формати, зокрема.