Is "Pixel Value" to get Hounsfield value the IPixelData data resulting from the PixelDataFactory.Create using Fellow Oak Dicom Lib?

430 Views Asked by At

I could only find a reference explaining how to get the Hounsfield value using the Fellow Oak library which says it's determined by formula

Hounsfield units = (Rescale Slope * Pixel Value) + Rescale Intercept

Is "Pixel Value" in this formula above the IPixelData data resulting from the Create Method in PixelDataFactory?

For the MONOCHROME2 image dataset I'm working with the DicomPixelData is BitsAllocated=16 BitsDepth.BitStored=16. The PixelDataFactor.Create method returns GrayscalePixelData16S IPixelData and this data for all images ranges in values (using MinMax()) -2048 and 1013). I generate this IPixelData.Data with:

var dicomFile = DicomFile.Open(string.Concat(path, "/", file.Name));
DicomPixelData pixelData = DicomPixelData.Create(dicomFile.Dataset, false);
var pixelDataRender = PixelDataFactory.Create(pixelData, 0);

For the 95 axial images I'm working with, the Rescale Intercept=0 and Rescale Slope=1, so in my case Hounsfield unit would be the "Pixel Value" input in the formula shown in the stackoverflow post.

References I could find say Hounsfield value ranges -1024 HU to 3071 HU, does that mean the resulting IPixelData data is not the Hounsfield value? ultimately, how then can I get the Hounsfield field using the fellow oak lib?

1

There are 1 best solutions below

0
Sergio Solorzano On

In case it helps anyone, I think the GrayscalePixelData16S data was correct. In fact the images view correctly. I had not considered converting the 16 bit of data to select the data to display. So I changed the approach - instead of taking raw pixel data as hounsfield values, in the case of the data I'm using I applied default linear function for window center and width as a way to reach for hounsfield values, meaning I change window width/center to target houndsfield values.

If VOI LUT Function (0028,1056) is absent or has a value of LINEAR, Window Center (0028,1050) and Window Width (0028,1051) specify a linear conversion from stored pixel values (after any Modality LUT or Rescale Slope and Intercept specified in the IOD have been applied) to values to be displayed.