【问题标题】:why does GE PACS use Modality with c-find in StudyLevel为什么 GE PACS 在 StudyLevel 中使用带有 c-find 的 Modality
【发布时间】:2018-11-30 09:58:25
【问题描述】:

我使用 DCMTK 的 c-find 来查询 GE 的 pacs,包括 study root、study level。并且条件是studydate = 20181112, Modality="" 查询PatientID。

我知道 Modality 是系列级别的标签。 PACS 不应将此条件与研究根、研究级别一起使用。而且我用dicomobject和dcm4chee做scp,cfind不返回模态。

我使用 ModalitiesInStudy 而不是 Modality,GE pacs 可以找到正确的数字。我知道学习 ModalitiesInStudy 是学习级别。

为什么GE当天返回的模态值和查询的学习次数错误,比实际的少很多?

【问题讨论】:

  • 听起来像是 bug 和功能之间的东西。不确定是否完全了解您想知道的内容。问题真的是:“为什么我的错误请求会产生错误的答复”?
  • 对不起。是的,将 Modality 与 StudyLevel 一起使用来查询 pacs 是错误的。但是 pacs 应该忽略 Modality。
  • 我也经常看到 Modality 和 ModalitiesInStudy 的混淆。我知道一些将模态视为 ModalitesInStudy 的实现。你说查询比实际数字少得多。我假设:如果研究只有具有相同模态“XX”的系列,那么 ModalitiesInStudy 也是“XX”。仅当研究具有一系列不同的模态“XX”和“YY”时,ModalitiesInStudy 才会是“XX\YY”。按 Study-Modality 'XX' 过滤只会为您提供仅包含 'XX' 系列的研究,而不是具有混合模式的研究?
  • @gofal3 谢谢。也许 GE PACS 就像你说的那样工作。

标签: dicom dcmtk


【解决方案1】:

假设 PACS 应该忽略不适当的查询键是不正确的。对格式错误的查询最符合 DICOM 的反应是拒绝状态为 A900(标识符与 SOP 类不匹配)的请求。

但在实践中,限制如此严格并不总是最好的选择。因此,您观察到的行为可以被视为“GE PACS 试图充分利用您的格式错误的请求”。显然,这没有对错之分。

在不知道 PACS 的内容以及确切的请求和响应的情况下,无法猜测 PACS 如何在过滤中使用不适当的属性。但由于基线是“垃圾输入/垃圾输出”,我认为这并不重要

【讨论】:

  • SCP 必须非常灵活,才能支持更广泛的 SCU。您在第二段中所说的内容是正确的,并且在生产中很常见。 GE所做的实际上是违反规范的;但在实践中可能需要。 SCU 应该更灵活(可能基于设置)以支持此类行为。是的;这既可以称为功能,也可以称为错误...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-22
  • 2020-05-13
  • 2011-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多