7 个版本
0.7.1 | 2024 年 8 月 13 日 |
---|---|
0.7.0 | 2024 年 4 月 25 日 |
0.2.2 | 2023 年 11 月 21 日 |
0.2.1 | 2023 年 8 月 26 日 |
0.1.0 | 2022 年 10 月 23 日 |
#1216 在 命令行实用程序 中
每月 135 次下载
2.5MB
42K SLoC
DICOM-rs findscu
这是 DICOM Find SCU (C-FIND) 的实现,可用于在 DICOM 存档中搜索研究和患者记录。
此工具是 DICOM-rs 项目的一部分。
用法
请注意,此工具不一定可以替换其他 DICOM 软件工具包中的 findscu
工具。运行 dicom-findscu --help
以获取更多信息。
基本用法包括通过某些属性搜索研究或患者。目前支持以下查询/检索信息模型
-S
:研究根查询/检索信息模型 – FIND(默认)-P
:患者根查询/检索信息模型 - FIND-W
:模式工作列表信息模型 – FIND
指定 DICOM 查询有三种 非互斥 方法
传递 DICOM 查询对象文件
您可以提供 DICOM 查询对象文件的路径以启动您的查询对象,否则您将从一个空的开始。目前 DICOM-rs 中没有工具帮助创建这些对象,但可以将 DCMTK DICOM 数据转储转换为兼容的 DICOM 查询对象,或自己编写这些工具。
# query is defined in query.dcm
dicom-findscu [email protected]:1045 --study query.dcm
传递查询文本文件
指定查询的更简单方法是使用命令行参数 --query-file «file»
。文本文件应包含一系列行,每行形式为 «field_path»=«field_value»
,其中
field_path
是数据元素选择器路径(请参阅以下元素选择器语法);- 和
field_value
是与指定的 DICOM 属性值匹配的相应值或模式。它可以是空的,在这种情况下,也可以省略=
。
例如,给定文件 query.txt
# comments are supported
AccessionNumber
# declare sequence items before setting nested elements
ScheduledProcedureStepSequence
ScheduledProcedureStepSequence.Modality=MR
ScheduledProcedureStepSequence.ScheduledProcedureStepStartDate=20240703
您可以这样做
dicom-findscu [email protected]:1045 -W --query-file query.txt
使用多值 -q
选项
最后,-q
选项接受与--query-file
相同的多个查询值。下面有更多示例。
这些形式中的每一个都将按此顺序扩展并覆盖此处的查询对象。
选择器语法
简单属性选择器由一个数据元素键组成,由标准DICOM标签指定(以下形式之一:(gggg,eeee)
,gggg,eeee
或ggggeeee
)或标签关键字名称,例如PatientName
。要指定序列,请使用由点分隔的多个此类元素(例如ScheduledProcedureStepSequence.0040,0020
)。在编写嵌套属性时,您目前需要在一个单独的查询选项中声明序列,然后仅在此之后在该序列内部定义属性,按照此顺序。下面通过示例进行说明。
示例
# query application entity STORAGE for a study with the accession number A123
dicom-findscu [email protected]:1045 --study -q AccessionNumber=A123
# query application entity PACS for patients born in 1990-12-25
dicom-findscu [email protected]:1045 --patient -q PatientBirthDate=19901225
# wild-card query: grab a list of all study instance UIDs
dicom-findscu [email protected]:1045 -S -q "StudyInstanceUID=*"
# retrieve the modality worklist information
# for scheduled procedures where the patient has arrived
dicom-findscu [email protected]:1045 --mwl \
-q ScheduledProcedureStepSequence \
-q ScheduledProcedureStepSequence.ScheduledProcedureStepStatus=ARRIVED
依赖项
~10-20MB
~279K SLoC