GDCM is an open source with a BSD license library that allows you to
read DICOM and ACR-NEMA file. It has been sucessfully integrated in ITK
(http://itk.org) and more recently in VTK (http://vtk.org).

You can download the CVS version from :


Please note that the VTK writer is brand new so consider it as very


Gdcm is yet another C++ library dedicated to reading/parsing and writing
Dicom medical files.
GDCM stands as a short for "Grass roots DiCoM.
What gdcm IS

* gdcm implements the dicom base standard part 5 that concentrates
on image file format. Hence gdcm supports the following formats:
o ACR-NEMA version 1 and 2
o Dicom version 3.0 (including various encodings of jpeg,
RLE). Please refer to gdcm conformance summary for more details.
* gdcm is distributed with Berkeley-like license.
* gdcm targets both GNU/Un*ces and Windows/VC++ (refer to
requirements for details).
* gdcm comes with a VTK shallow wrapper class vtkGdcmReader (refer
to VtkGdcm) to ease the burden of VTK users,
* gdcm also comes with gdcmPython it's SWIG generated Python wrappers.

What gdcm is NOT
Except for dicom base standard part 5 gdcm does NOT implement any other
part of the Dicom base standard (as opposed to other C++ based with open
license libraries like DCMTK . or CTN).
In particular gdcm is not aware of:

* the Dicom network file exchange protocol (Query/Retrieve),
* the Dicom media storage formats,
* Print, Verification
* ANY OTHER PART of Dicom.

What gdcm still misses
Among all the features of the dicom part 5 gdcm doesn't implement (yet?)

* the integration of (optional) overlays on image.
* a more complete supports of the various Jpeg encodings

Gdcm also still needs

* an enhanced and simpler API to access the various forms of pixel
data (e.g. RGB, GrayLevel, RawData...),
* a decent user's guide (currently, only a partial doxygenation is
* the python wrappers to be fixed,
* a simple wxWidgets Dicom file editor.