DICOM -传输语法是否足以用于数据集解码



我正试图确定在DICOM处理模块之间传播能力的正确方法。其中一个步骤是"将数据集从信封中取出",我的意思是基于传输语法解码属性。有两件事我不明白:

  1. DICOM表6.2-1。DICOM值表示给出了值代码必须满足的要求,以便被认为是有效的(例如,在AE中没有控制字符)。然而,一些vr依赖于(0008,0005)定义的字符集——也是"信封"的成员。这不是自相矛盾吗?
  2. "数据元素(7FE0,0010)像素数据,如果分配的位(0028,0100)的值小于或等于8,则其值表示为OB或OW,并以小端字节编码。"这个句子在标准中出现了好几次。如何确定是否交换字节?(不看BitsAllocated——信封的成员)

我错过了什么,还是真的有必要从数据集中解释一些数据元素,以便在DICOM文件和数据结构中验证其他数据元素?

编辑:让我重复一下我的问题:

大多数情况下,传输语法足以解码(解压缩)像素数据并将端烷平化为首选格式。这是在任何高位/位分配/位存储转换和以下模式-> voi之前。

但是在像素数据存储在VR=OW的情况下,我们不知道是否交换字节,因为我们不知道图像是否分配了8位或更多(它现在也正在解码(端序交换,VR验证))。

字符串的情况与此类似。

编辑:OW问题的答案在这里:是"另一个词"吗?8位RGB图像的VR合法吗?

最后一个问题是:在不知道(0008,0005)字符集是什么的情况下,如何检查VR=LO元素是否不包含任何控制字符?(因为它可能还没有编码)

如果传输语法指定Jpeg图像,那么您不需要更多,因为大多数信息都在Jpeg流中。

你需要知道的所有传输语法:

  • 光度解释(但要注意一些错误的数据集,指定RGB光度而不是YBR)。MONOCHROME或MONOCHROME2指定最小像素值是代表白色还是黑色

此外,对于DICOM传输语法和无损JPEG,您还需要知道:

    <
  • 比特分配/gh>
  • 高一些
  • 整数类型(有符号/无符号)
对于DICOM传输语法,您还需要知道:

  • 当数据类型为OW
  • 时,用于反转字节的大端或小端

最新更新