我想用 C# 读取一个 DICOM 文件。我不想做任何花哨的事情,我现在只想知道如何读取元素,但首先我实际上想知道如何读取标题以查看是否是有效的 DICOM 文件。
它由二进制数据元素组成。前 128 个字节未使用(设置为零),后面是字符串“DICM”。紧随其后的是标题信息,这些信息被组织成组。
示例 DICOM 标头
前 128 个字节:未使用的 DICOM 格式。 后跟字符'D'、'I'、'C'、'M' 后面是额外的标头信息,例如: 0002,0000,文件元元素组 Len:132 0002,0001,文件元信息版本:256 0002,0010,传输语法 UID:1.2.840.10008.1.2.1。 0008,0000,识别组长度:152 0008,0060,方式:MR 0008,0070,制造商:MRIcro
在上面的示例中,标题被组织成组。组 0002 hex 是文件元信息组,它包含 3 个元素:一个定义组长度,一个存储文件版本,一个存储传输语法。
问题
- 如何读取头文件并通过检查 128 字节前导码后的“D”、“I”、“C”、“M”字符来验证它是否是 DICOM 文件?
- 如何继续解析读取数据其他部分的文件?