2

我是 DICOM 的新手,想知道如何返回 C-FIND 的结果,类似于 Osirix 等应用程序在查询后显示它们的方式。

我在 Python 中使用 pynetdicom 严格执行此操作,并在 GUI 中显示结果。目前,我已经使用正则表达式分别提取了每个标识符以显示,但这并不能让我合并每个单独的系列。我正在“研究”级别运行我的查询。

我可以查询/检索和显示来自其他 PACS 的标识符,但我不确定如何在研究级别显示来自其他 PACS 数据库的检查结果,然后能够下拉并查看每个系列。

我刚刚完成了这个测试项目,目前可以读取 DICOM 文件,在收到它们后添加到数据库,从各种 PACS 查询/检索。显示从本地文件夹接收到的图像并将其传输到另一个存档。我只是无法弄清楚上述情况,必须有比我当前配置的更好的方法来做到这一点。查看我当前如何返回结果的图像。

我确信 pynetdicom 可以做到这一点,我只是不确定如何去做。

截屏

4

1 回答 1

2

要从 Study-Level 扩展到 Series-Level,您基本上会形成这样的请求:

(0008,0052) [SERIES]
(0020,000d) [<the study instance UID that you obtained from the Study-Level query>]
(0020,000e) []

这是您需要的最低要求。QueryRetrieveLevel (0008,0052) 表示这是一个系列级别的查询。Study Instance UID (0020,000d) 是匹配特定研究系列的匹配键(唯一允许的),而 Series Instance UID (0020,000e) 是您在 C-MOVE 该系列时需要的用户的请求或随后查询该系列的图像。

SERIES-Level 上的其他属性(仅此而已)可能包含在零长度中。这样,您就可以指示 SCP 用数据库中的值填充它们,就像您在 STUDY 级别所做的那样。通常,医生希望看到:

  • 模态 (0008,0060)
  • 系列日期 (0008,0021)
  • 系列时间 (0008,0031)
  • 系列说明 (0008,103E)

请注意,并非所有这些都是强制返回键,这意味着 SCP 可能会以零长度返回它们。

另请注意,此示例指的是 Study-Root Q/R 信息模型。对于 Patient-Root,您必须包含 Patient ID (0010,0020) 作为匹配键(= 带有值)以及说“请给我这个特定患者的这项特定研究的系列”。

进一步推荐阅读的是Query/Retrieve Service Class的描述

于 2021-09-29T05:50:37.973 回答