C-Find (Query/Retrieve) 中 SOP Class UID 的匹配是如何工作的?

How does matching work for SOP Class UID in C-Find (Query/Retrieve)?

我对 SOP Class UID 在 QR 查询 C-Find 中的作用感到困惑。

我对 DCMTK 的体验是它不会在 C-Find 响应中填充该字段。但我不确定这是否符合标准,或者 DCMTK 或我使用 DCMTK QR 的代码中其他地方的问题。

SOP 实例 UID 是图像级请求中查询 SCP 的强制性 return 键。它不得出现在任何其他级别(患者、研究、系列)的任何请求中。 SOP Class UID 是可选的,但通常由 SCP 支持。 Standard SOP中很多地方Class-和Instance UID组成一对唯一标识对象,这里SOPClass UID是必须的属性。 所以不支持会大大减少SCP的使用场景。

由于查询 SOP 实例 UID 的背景通常是:“请给我一份属于这个特定患者、研究和系列的图像列表”,因此在请求中将其发送为空是很常见的。这指示 SCP 在其响应中填写此属性。

您正在询问 Query/Retrieve 信息模型中的 C-FIND request/response。

参考Table C.6-4。患者根的复合对象实例级密钥 Query/Retrieve 信息模型 在规范中,SOP Class UID 标记为 [O-Optional]。

PS3.4 2021a - Service Class Specifications - C.6.1.1.5 Composite Object Instance Level

在table中:

  • R = 必需(SCP 必须 return 值)
  • U = 唯一标识符(SCU 必须在查询中包含此键;SCP 必须支持匹配和 return)
  • O = 可选(SCU 可以传递空属性来请求一个值。如果支持,SCP 可以 return 值;不是强制性的)

但是,重要的是 table 底部的注释部分:

Note

  1. SOP Class UID (0008,0016) is an optional key, but it is strongly recommended that it always be returned by all SCPs, if matching is requested.

虽然是可选的,规格强烈推荐到return吧。

这对于具有 PATIENT ROOT 和 STUDY ROOT 的 IMAGE 级别是相同的。

C.6.2.1.4 Composite Object Instance Level
Attributes for the Composite Object Instance Level of the Study Root Query/Retrieve Information Model are the same as the Attributes for the Composite Object Instance Level of the Patient Root Query/Retrieve Information Model described in Section C.6.1.1.5.
PS3.4 2021a - Service Class Specifications - C.6.2.1.4 Composite Object Instance Level

简单说明请参考this文章

现在,让我们回答您的问题。当您询问 SOP Class UID.

时,我在 IMAGE 级别的上下文中回答

In the C-Find request can I have SOP Class UID (0008,0016) empty?

是;您可以将任何属性(标记为 U 的除外)留空。标记为 R 的属性总是 return 由 SCP 编辑。

should that field be then populated in each response with the SOP Class UID of that image?

如上所述,这是可选的。 SCP 可能会或可能不会填充 (return) 此属性。

DCMTK 的 Query/Retrieve SCP“dcmqrscp”的 documentation 没有为 IMAGE 级别列出 SOP Class UID (0008,0016)。请注意,正如其他人已经解释的那样,不需要支持此属性。