How to read DICOM Image files in Java

In this post I will be showing you how to read DICOM images in Java.

ImageIO and JAI do not have support for reading the Dicom file format. In order to do so you need to find a third party library. Due to this lack of support we decided to create JDeli, which does not make use of ImageIO and allows you to read Dicom images out of the box.

First an introduction to Dicom images…

What is a DICOM?

DICOM stands for Digital Imaging and Communications in Medicine. DICOM is a standard for medical images. It sets out how to store, exchange and transmit them. You can read more about DICOMs in our previous article explaining the file format.

How to read DICOMs using ImageJ

As ImageIO and JAI do not have support form DICOMs, you will need a third party alternative. For example ImageJ (download and Javadoc) provides a DICOM decoder and viewer. The application provides a user interface which can be used to decode and view DICOM files. Alternatively by adding the JAR file (included in the download) to your Java project you can use the DICOM class to decode and open DICOM files:

DICOM dcm = new DICOM();
dcm.open("image.dicom");
if (dcm.getWidth()==0)
        IJ.log("Error opening image.dicom");
else
        dcm.show();

How to read DICOMs using JDeli

JDeli is the image library we wrote to replace ImageIO and JAI (Javadoc and download). It has the ability to read DICOM files in Java:

DicomDecoder decoder = new DicomDecoder();
BufferedImage image = decoder.read(dicomByteData);

You can find more tutorials in our series on handling common image formats in Java, JDeli and other image libraries.

If you’re a first-time reader, or simply want to be notified when we post new articles and updates, you can keep up to date by social media (Twitter, Facebook and Google+) or the Blog RSS.

 

Related Posts:

The following two tabs change content below.

Bethan Palmer

Developer at IDR Solutions
Bethan is a Java developer at IDR Solutions and was a speaker at JavaOne 2016. She has a degree in English Literature and in her spare time enjoys sports including running and handball.

Latest posts by Bethan Palmer (see all)

Bethan

About Bethan Palmer

Bethan is a Java developer at IDR Solutions and was a speaker at JavaOne 2016. She has a degree in English Literature and in her spare time enjoys sports including running and handball.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>