Цифровото изображение и комуникации в медицината (DICOM) е стандартът за комуникация и управление на информация за медицински изображения и свързаните с нея данни. Той също така съдържа множество монохромни изображения заедно с богат набор от метаданни. Такава информация може да бъде всичко - от информация за пациента, институция, модалност и др. Освен това са популярни, защото могат лесно да осигурят интегриране на медицински устройства за изображения като скенери, сървъри, работни станции, принтери, мрежов хардуер. Въпреки това, за да покажем DICOM изображението, имаме нужда от конкретно приложение и става наистина трудно, когато трябва да го покажем в уеб страница. Така че едно от жизнеспособните решения е да конвертирате DICOM във формат JPG. Друго предимство на JPEG файловете е, че те съдържат едно монохромно (или цветно) изображение. Тъй като JPG изображението няма свързани метаданни, то намалява размера на изображението и изходът също е компресиран/по-малък по размер.
- DICOM API за преобразуване на изображения
- Конвертирайте DCM в JPG в Java
- DCM към JPG с помощта на cURL команди
DICOM API за преобразуване на изображения
Aspose.Imaging Cloud SDK за Java ви позволява да внедрите популярни възможности за обработка на формати на изображения. Можете да редактирате и трансформирате растерни изображения, Photoshop файлове, метафайлове и други формати като WebP. По същия начин той е еднакво способен да обработва DICOM изображения и ние ще го използваме за преобразуване на DCM в JPG формат. Сега, за да започнем с използването на SDK, трябва да добавим неговата референция в нашия java проект, като включим следната информация в pom.xml (проект тип компилация на maven).
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging-cloud</artifactId>
<version>22.4</version>
</dependency>
</dependencies>
Ако вече сме се регистрирали в Aspose Cloud Dashboard, моля, получете вашите клиентски идентификационни данни от Cloud Dashboard. В противен случай трябва първо да регистрирате безплатен акаунт, докато използвате валиден имейл адрес.
Конвертирайте DCM в JPG в Java
Този раздел предоставя подробности за това как да заредите и конвертирате DCM в JPG формат с помощта на кодов фрагмент на Java.
- Създайте обект на ImagingApi, като използвате персонализирани идентификационни данни на клиента
- Сега заредете DCM файла, като използвате метода readAllBytes(…) и преминете към масива byte[].
- Създайте екземпляр на UploadFileRequest, като същевременно предоставите аргумент за името на изображението DICOM и го качите в облачно хранилище, като използвате метода uploadFile(…)
- Следващата стъпка е да създадете обект на ConvertImageRequest, който приема въведено DCM име и JPG като аргументи
- Извикайте метода convertImage(…) за конвертиране на DCM в JPG формат и резултатът се връща като поток от отговори
- Накрая запазете получения JPG на локално устройство, като използвате обект FileOutputStream
// Вземете ClientID и ClientSecret от https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// създайте обект за изображения
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// заредете DICOM изображение от локално устройство
File file1 = new File("skull_2.dcm");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// създаване на обект на заявка за качване на файл
UploadFileRequest uploadRequest = new UploadFileRequest("input.dcm",imageStream,null);
// качете изображението DICOM в облачно хранилище
imageApi.uploadFile(uploadRequest);
// задайте изходния формат на изображението
String format = "jpg";
// Създайте обект на заявка за преобразуване на изображение
ConvertImageRequest convertImage = new ConvertImageRequest("input.dcm", format, null, null);
// конвертирайте DCM в JPG и върнете изхода в потока на отговор
byte[] resultantImage = imageApi.convertImage(convertImage);
// Запазете получения JPG на локално устройство
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Resultant.jpg");
fos.write(resultantImage);
fos.close();
Примерното DICOM изображение, използвано в горния пример, може да бъде изтеглено от skull2.dcm, а изходът от Resultant.jpg.
DCM към JPG с помощта на cURL команди
Освен език за програмиране, REST API може да бъде достъпен и чрез cURL команди. Тъй като Aspose.Imaging Cloud е разработен според REST архитектура, така че в тази статия ще обсъдим подробностите за това как да конвертирате DICOM изображения в JPG с помощта на cURL команди. Първите стъпки е да генерирате JWT токен за достъп (базиран на идентификационните данни на клиента), като използвате следната команда.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
След генерирането на JWT, моля, изпълнете следната команда, за да конвертирате DCM във формат JPG.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.dcm/convert?format=Resultant.jpg" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o Resultant.jpg
Заключение
Обсъдихме подробностите за това как можем програмно да конвертираме DICOM изображения в JPG формат с помощта на Aspose.Imaging Cloud SDK за Java. В същото време проучихме и опция за конвертиране на DCM в JPG с помощта на cURL команди. Освен това Документацията на продукта е невероятен източник на информация, за да научите за други вълнуващи функции, предлагани от API.
Моля, имайте предвид, че функциите на API могат също да бъдат тествани с помощта на SwaggerUI в рамките на уеб браузър и пълният изходен код на Cloud SDK е достъпен на GitHub (под лиценз на MIT), така че може да обмислите изтегляне и като го модифицирате според вашето удобство. И накрая, в случай че срещнете някакви проблеми, докато използвате API, може да обмислите да се свържете с нас за бързо разрешаване чрез безплатен форум за поддръжка на продукти.
Свързани статии
Моля, посетете следните връзки, за да научите повече за: