2017-06-13 39 views
2

我遇到包含私有标记中的序列的DICOM对象;该序列中的每个项目都包含自己的特定字符集(0008,0005)。所有特定字符集元素具有相同的值。 我还发现这些额外的特定字符集在某些应用程序中会产生问题。 DICOM标准允许在单个对象中拥有多个特定字符集吗?如果是,范围规则是什么?单个DICOM对象中的几个特定字符集属性

我在Nema文件中找不到答案。我还检查了几个DICOM符合性声明,结果相同。

回答

0

关于序列编码的一切都是在PS3.5的第7.5章和PS3.3中为每个单独的序列编写的。在这两个文档中,都不会找到包含属性特定字符集的参考。

长话短说:这显然是错误的。

+0

谢谢,但我的问题不是关于多值特定字符集。它关于序列中的几个特定字符集属性。 即:一个在顶层。然后有一个私有属性VR SQ,这些项目包含它们自己的特定字符集属性。不是多值。 – dmitry

+0

这显然是错误的。 –

+0

再次感谢。你会更新答案,我会接受它。 – dmitry

1

在DICOM中明确允许包含特定字符集。基准是在这里:

DICOM PS3.5

具体而言,标准说:

包封的数据集应仅包括特定的字符集(0008,0005)的数据元素,如果属性特定的字符集在IOD中对该项目序列进行了定义。

注:封装的数据集不包含特定字符集数据元素,除非特定字符集属性被定义为该序列的IOD的一部分。

如果封装的数据集包含特定字符集属性,则它只应用于封装的数据集。如果属性特定字符集未明确包含在封装数据集中,则封装数据集的特定字符集值将适用。

在这种情况下,“封装的数据集”是DICOM序列。从技术上讲,由于您看到私有序列中的属性,这是不合法的,尽管这可能会在IOD定义它时发生(专门针对DICOMDIR)。

+0

谢谢史蒂夫,我想我没有明确提出我的问题。就我而言,特定字符集元素被嵌入到专用数据序列中。这些在IOD中没有定义。由于引用文本中的条件“只应包括......如果在该项目序列中在IOD中定义属性特定字符集”在任何私密数据序列的情况下不满足,则不应包括特定字符集在这样的数据序列中。 – dmitry

+0

啊,好吧,这是有道理的。我已经编辑了答案,说实际上是非法的。 –

+0

嗯,一般来说,私人数据序列从来没有IOD,或者他们更愿意被视为遵守只有各个供应商都知道的“未知IOD”才是真的吗?在这种情况下,他们可以指定“私人IOD”以包含“特定字符集”属性。问题是一个人是否需要期待和处理这个问题?从技术上来说这似乎是可行 –

相关问题