[Insight-users] Error reading images with negative values

Kajetan Berlinger kaje at kaje.info
Tue Aug 15 12:19:18 EDT 2006


Hi Xin,

On Tuesday 15 August 2006 09:00, Xin Guan wrote:
> Hi Kajetan,
>
> You were right. I did find that the range is not from - 16686 (MRIcro
> histogram came up with this value, not sure why). Looking through the data
> I see that its actually [-1000, 3000]. However, reading directly from DICOM
> series, I still got [0, 4094], but reading Analyze file (converted by
> MRIcro) gave the correct value.

Then everything should be fine with your image data. The data ist just 
represented 0 based now. For rendering the images you should convert the data 
to 8 bit as grayscale images have 256 different intensities. I think your 
should use itk::RescaleIntensityImageFilter for doing this.

>
> What is HU scale? Maybe I should use this information to render the images.

The Hounsfield scale is a quantitative scale for describing radiodensity. 
-1000 represents air, 0 water. Just have a look at:
http://en.wikipedia.org/wiki/Hounsfield_scale

>
> Thanks a lot, that's very helpful.
>
> - xin

cu
Kaj

>
> On 8/14/06, Kajetan Berlinger <kaje at kaje.info> wrote:
> > Hi Xin,
> >
> > On Monday 14 August 2006 08:05, Xin Guan wrote:
> > > Hi,
> > >
> > > I'm using ITK image IO to read images. MRI images are okay, but CT
> >
> > images
> >
> > > -- no matter it's DICOM or converted Analyze files -- always gave some
> > > weird images. The actual pixel value range is  -16330 to 3000, but the
> > > loaded image has a range of 0 to 4094.
> >
> > A range from -16330 to 3000 ist not possible, as the intensity value of a
> > CT
> > voxel  is represented by 12 bit. That is from 0 to 4095 or with respect
> > to the HU scale -1023 to 3072.
> > How do you come to this -16330 to 3000 value range?
> > Is there perhaps a pixel padding value defined?
> > This value is stored in DicomTag (0028,0120).
> > If the image is non-rectangular, this value marks pixels used to pad to
> > rectangular format.
> >
> > > It seems that part of the negative
> > > values were simply negated to positive. The error remains the same
> > > regardless of the pixel type specified -- signed short or float.
> > >
> > > I followed ITK example DicomSeriesReadSeriesWrite and Image2 (
> > > itk::ImageFileReader).
> > >
> > > I'd appreciate any help on this. Thanks in advance.
> > >
> > > - xin
> >
> > cu
> > kaj
> > _______________________________________________
> > Insight-users mailing list
> > Insight-users at itk.org
> > http://www.itk.org/mailman/listinfo/insight-users


More information about the Insight-users mailing list