ezDICOM DICOM viewer


This software is designed to display most medical images: MRI, CT, X-ray, and ultrasound. All versions of ezDICOM can automatically detect the format of a medical image and display it on the screen. The ezDICOM project will appeal to several groups of people:

  1. ezDICOM for users. Users will find ezDICOM is a convenient tool for exploring medical images. The standalone windows ezDICOM is already used by a number of hospitals and brain imaging centers distribute copies of ezDICOM to individuals who have recently had medical scans. In addition, over 13,000 people a year download this software from my web site for education and entertainment.
  2. DCM2JPG command-line application. This Windows program is a quick way to convert DICOM images into standard bitmaps. You can either drag-and-drop files onto the program or call the program from the command line (allowing you set options, such as image brightness and contrast). It can output JPEG, PNG and BMP format images.
  3. ezDICOM for programmers. Programmers can use ezDICOM as a starting point for a medical imaging project. In particular, the ActiveX and CLX components allow programmers to drag-and-drop a fully functioning medical image viewer onto their own software without having to learn any of the complicated details about medical image formats. Examples of popular and powerful tools that use ezDICOM code include Chris Rorden's MRIcro.

My DICOM page lists a large number of free DICOM viewers. So what are the benefits of ezDICOM? The main benefit is that the software is easy to use, mature (stable, few if any bugs) and can view a wide range of medical images including proprietary formats as well as images in the DICOM standard. For example, In addition, most free DICOM viewers only read a small subset of the DICOM images available, while ezDICOM can view a broad range of images. In addition to DICOM images, thesoftware will automatically recognize and display Analyze, GE (LX, Genesis), Interfile, Siemens (Magnetom, Somatom) and NEMA images.

The greatest strength of ezDICOM is that it is free and open source. There are many variations of medical images 'in the wild' - many of these are poorly or incorrectly documented. By being free, ezDICOM has developed a wide user base, and this ensures the quality of the code. Thousands of people have used ezDICOM and sent in unusual and rare images, and the code is now mature and able to read virtually all the popular medical images. Therefore, the users are the most important strength of this software. It is important to acknowledge the many people who shared their images with the developers. The advantage of being open source is that programmers can modify and improve the code if they want. The project was started by Wolfgang Krug and has been expanded and maintained by Chris Rorden. Development was particularly aided by Earl F. Glynn's general programming tutorials and David Clunie's medical imaging FAQ. Special mention should also go to Jakob Scholbach (coauthored the lossless JPEG decoder), Armando Alaminos Bouza (Somatom formats), Yves Martel (various formats) and Sebastien Barre (useful suggestions).

This software is covered by the BSD open source license. You can distribute both compiled projects and the source code. However, you should also distribute the license (the compiled standalone program makes this easy: the license is built into the 'about' window). The license also notes that the software is provided 'as is', use it at your own risk. This software attempts to reproduce medical images accurately. However, it is not designed for clinical use: computer monitors can vary tremendously in image quality. All grayscale images are rendered in 256-levels of gray (this is true of all of the viewers which I know of).

ezDICOM for users

Introduction. The standalone ezDICOM for windows program is a basic but useful tool for viewing medical images. This software will run on computers with Windows 95 or later and requires less than 300 Kb of disk space. To view an image, you simply drag and drop the image onto the program (or you can choose 'Open...' from the 'File' menu).

Despite the ease of use, ezDICOM has a number of powerful features. For example, you can set the brightness and contrast of an image with great precision.You can also animate images that have multiple slices (e.g. see a heart beating over time or see different depths into the brain).

Installation. To download the ezDICOM standalone application [version 1, release 24 ], shift+click here. The program is distributed as a compressed zip file - simply extract the files and double click on ezDICOM.exe. Delphi source code is also included.

  • Read Analyze, DICOM, GE LX, Genesis, Interfile, Siemens Magnetom Vision, Siemens Somatom and NEMA formats
  • Save images as BMPs, JPEGs
  • Custom color look up tables (see images in grayscale or other schemes like 'hot iron')
  • Precise contrast control
  • Read ECAT format
  • Loads uncompressed, compressed and color DICOM images (RLE, palette, RGB, YBR, lossy JPeG, lossless JPeG)
DCM2JPG console application

DCM2JPG is a simple command-line Windows program. If you drop a file on the program it will create a JPEG version of the file (alternatively, if you name the program 'dcm2png.exe' or 'dcm2bmp.exe' it will create PNG or BMP format images). You can also call the program from the command line, to do special functions like change the image brightness or contrast (most grayscale DICOM images have much higher precision than can be saved to standard bitmap formats). Another nice feature is the ability to create nice zoomed versions of DICOM images - e.g. save a 128x128 pixel image as a 192x192 pixel bitmap (scaling is done using a bilinear-interpolation method to reduce any jaggy edges). Both a compiled program and the (ezDICOM-based) source code can be downloaded by shift+clicking here. Here is a short overview of the commands:


  • b Brightness [window center]: a,h,-9999..9999 for auto, header, custom
    default: auto
  • c Contrast [window width]: a,h,0..9999 for auto, header, custom
    default: auto
  • -f Format of Output: b,p,j, txtfor bmp, png, jpg, txt
    default: jpg
  • -o Output Directory, e.g. 'C:\TEMP'
    default: source directory
  • -s Silent [errors not reported]: y,n for yes or no
    default: no
  • -z Zoom of Output, e.g. ''1.5'' for 150% zoom
    default: 1.0


  • dcm2jpg -f p -o C:\TEMP -z 1.5 C:\DICOM\input1.dcm C:\input2.dcm


  • To change default conversion, change name to 'dcm2bmp.exe', 'dcm2txt.exe' or 'dcm2png.exe'
ezDICOM for programmers

The basic concept is that code for ezDICOM can be included in more complicated projects. A good example is Chris Rorden's MRIcro freeware. MRIcro includes a lot of powerful features that are useful for scientists studying the brain. The casual user will find MRIcro much more difficult to use than the basic ezDICOM, but specialist will appreciate MRIcro's additional features. There are actually three versions of ezDICOM available for programmers, depending on the computer language you use. In all cases, the source code is provided, so you can either use the software as a modular unit without needing to learn about any of the details of medical imaging, or you can modify how these components work.

  1. ActiveX component. This is the easiest choice for Windows programs. You can simply drop this component onto your project and then edit the properties to control the behaviour of the program. This component can be used with any compiler that supports ActiveX, for example Visual Basic, Delphi, Internet Explorer, VisualC, etc.
  2. CLX component. This component has most of the functions of the ActiveX component, but can run on both Windows or Linux. Windows programming can be done with Delphi, while Linux programming can be done with Kylix. Further details about this component are available on the web page.
  3. Delphi Units. The standalone ezDICOM application is another good starting point for a software project. This application does not have the overhead of a CLX/ActiveX component, but it is also a bit more difficult to use and less modular. This option is available to Delphi programmers. Details are available in the 'ezDICOM for Users' section.