DICOMをImageJavaに変換する

医用画像と通信(DICOM)は、医用画像情報と関連データの通信と管理の標準です。ただし、DICOMファイルを表示するには専用のソフトウェアが必要であり、プレゼンテーションやWebページに単純に埋め込むことはできません。この制限に対処するために、DICOMファイルをJPEGGIFPNGBMPなどのラスター画像形式に変換できます。この記事では、JavaでプログラムによってDICOMファイルを変換する方法を学びます。

Java DICOM Converter API

Aspose.Imaging for Javaは、DICOMファイルをJPEG、GIF、PNG、BMP、およびPDFに忠実に変換できる強力な画像作成および操作APIです。 APIのダウンロードJARするか、次の構成を使用してMavenベースのアプリケーションにインストールすることができます。

<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>20.10</version>
    <classifier>jdk16</classifier>
</dependency>

JavaでのDICOMからJPEGへ

以下は、JavaでDICOMをJPEGに変換する手順です。

  • 指定されたファイルパスからDicomImageオブジェクトにDICOMファイルをロードします。
  • JPEGに変換するDICOMのアクティブページを選択します(設定されていない場合、デフォルトのアクティブページが変換されます)。
  • DicomImage.save(String filePath, ImageOptionsBase options)メソッドを使用して、変換されたJPEG画像を保存します。

次のコードサンプルは、DICOMのページをJavaのJPEGに変換します。

DicomImage dicomImage = (DicomImage) Image.load("src/main/resources/image.dcm");

// JPEGに変換するアクティブなページを設定します
dicomImage.setActivePage(dicomImage.getDicomPages()[0]);

JpegOptions jpegOptions = new JpegOptions();

// JPEGとして保存
dicomImage.save("src/main/resources/Output/DICOM_to_JPEG.jpg", jpegOptions);

入力DICOM

入力DICOMファイル

DICOMからJPEGへ

DICOMからJPGに変換

JavaでのDICOMからGIFへ

DICOMをGIFに変換する手順は、上記でDICOMをJPEGに変換するために使用した手順と同じです。 DICOMファイルにアクセスし、.gif拡張子を付けて保存するだけです。以下は、JavaでDICOMをアニメーションGIFに変換する手順です。

次のコードサンプルは、JavaでDICOMをGIFに変換する方法を示しています。

DicomImage dicomImage = (DicomImage) Image.load("src/main/resources/image.dcm");

GifOptions gifOptions = new GifOptions();

// GIFとして保存
dicomImage.save("src/main/resources/Output/DICOM_to_GIF.gif", gifOptions);

JavaでのDICOMからPNGへ

すでにお察しのとおり、DICOMをPNGに変換する手順は、他の変換を実行するために上記で使用した手順と同じです。 DicomImageクラスを使用してDICOMファイルにアクセスし、.png拡張子を付けて保存するだけです。 DICOMファイルの各ページをPNGに変換する必要がある場合は、DicomImage.getDicomPages()関数を呼び出してDicomPage[]配列を取得し、以下に示すように繰り返します。

次のコード例は、JavaでDICOMをPNGに変換する方法を示しています。

DicomImage dicomImage = (DicomImage) Image.load("src/main/resources/image.dcm");

// 各ページを個別のPNG画像として保存します。
for (DicomPage dicomPage : dicomImage.getDicomPages()) {
    // ページインデックスに基づいてファイル名を生成します。
    String fileName = String.format("DICOM_to_PNG.%d.png", dicomPage.getIndex());

    // PNGとして保存します。
    dicomPage.save("src/main/resources/Output/" + fileName, new PngOptions());
}

JavaでのDICOMからBMPへ

DICOMからBMPへの変換はパイと同じくらい簡単です。 DicomImageクラスを使用してDICOMファイルにアクセスし、DicomImage.save(String filePath, ImageOptionsBase options)メソッドを使用してDICOMをBMPとして保存します。次のコードサンプルは、JavaでDICOMをBMPに変換する方法を示しています。

DicomImage dicomImage = (DicomImage) Image.load("src/main/resources/image.dcm");

// 幅を比例してサイズ変更します。
dicomImage.resizeWidthProportionally(dicomImage.getWidth()* 2, ResizeType.NearestNeighbourResample);

BmpOptions bmpOptions = new BmpOptions();

// BMPとして保存
dicomImage.save("src/main/resources/Output/DICOM_to_BMP.bmp", bmpOptions);

JavaでのDICOMからPDFへ

PDFは、最も一般的なファイル形式の1つです。したがって、JavaでDICOMファイルをPDFに変換する方法を知ることが重要です。次のコードサンプルは、この変換を行う方法を説明しています。

DicomImage dicomImage = (DicomImage) Image.load("src/main/resources/image.dcm");

PdfOptions pdfOptions = new PdfOptions();

// PDFとして保存
dicomImage.save("src/main/resources/Output/DICOM_to_PDF.pdf", pdfOptions);

結論

この記事では、JavaでDICOMファイルをJPEG、GIF、PNG、BMP、PDFに変換する方法を学びました。また、アクティブなページを設定し、DICOMファイルのすべてのページを変換する方法も確認しました。 Aspose.Imaging APIの詳細については、ドキュメントを確認してください。

も参照してください