我想编写一个脚本来使用c或c ++提取DICOM文件的PixelDATA,我不想使用像dicomsdl这样的外部库...如果有人可以帮我编写提取和显示算法图片。
答案 0 :(得分:6)
仅提取像素数据下的图像数据不足以正确解释DICOM图像。您需要来自DICOM文件的其他属性,例如Rows
,Columns
,Bit Allocated
,Bit Stored
,High Bit
,Photometric Interpretation
,{{1} } Sample Per Pixel
仅用于解释原始未压缩图像数据的信息。此外,存储的图像数据可以是Number of Frames
或Little Endian
字节顺序。此外,图像数据可以封装或压缩(例如使用不同的压缩算法压缩,例如Big Endian
,JPEG
,JPEG 2000
,JPEG LS
等))和压缩流的存储方式与未压缩的图像数据不同。甚至PixelData元素也可以存在于单个DICOM文件中的多个位置(例如,一个位于图像图像序列(缩略图)下面,一个位于顶层(实际图像)。
当您需要考虑RLE
(分段与未分段),Palette Color
,modality LUT
等时,它会变得更复杂。我的建议是使用现有的DICOM SDK和有许多开源和商业SDK可用于不同的平台和编程环境。