我希望能够在 C# 中读取 DICOM 文件。目前仅想知道如何读取元素,但首先需要了解如何读取文件头以检查它是否为有效的 DICOM 文件,并不需要进行其它处理。
DICOM 文件由二进制数据元素组成。前 128 字节未使用(设置为零),后跟字符串“DICM”。接下来是组织为组的头信息。
一个样例 DICOM 文件头
前 128 字节:未使用的 DICOM 格式。 接下来是字符 'D'、'I'、'C'、'M' 接下来是额外的头信息,例如:
0002,0000,文件元素组长度:132 0002,0001,文件元信息版本:256 0002,0010,传输语法 UID:1.2.840.10008.1.2.1。 0008,0000,识别组长度:152 0008,0060,形态:MR 0008,0070,制造商:MRIcro
在上面的示例中,头部按组织,16 进制下的组 0002 是文件元信息组,其中包含 3 个元素:一个定义组长度,一个存储文件版本,第三个存储传输语法。
问题
- 如何读取文件头并通过检查 128 字节引导后的 'D'、'I'、'C'、'M' 字符来验证它是否为 DICOM 文件?
- 我如何继续解析文件以读取数据的其他部分?