使用VTK和Matlab读取DICOM图像数据失真问题

        最近在处理DICOM数据时,发现使用VTK的vtkDICOMImageReader类以及使用Matlab的dicomread函数读取到的Dicom图像存在像素值失真的问题,即使用上述两种方式读取到的图像像素值与使用RadiAnt DICOM Viewer、MicroDicom等软件中显示的亮度值不同。

        经过对比发现,上述两种方式都将图像的像素值范围进行了压缩,而且并不是等比例的缩放,所以很难从压缩后的数据中准确的还原出原始数据。如果只是显示DICOM图像而不对数据进行处理,这个问题的影响不大。但如果需要对图像数据进行处理,建议不要使用这两种方式。

        推荐的方式是先使用ITK的itkImageSeriesReader读取DICOM数据(具体过程见 使用ITK读写DICOM序列),然后使用ITK库对数据进行处理,最后将处理结果通过itkImageToVTKImageFilter将数据传递给VTK库进行显示或三维重建。

你可能感兴趣的:(医学影像处理,vtk,itk,dicom)