问题标签 [pynetdicom]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pynetdicom qyuery/retrive 使用学习日期和时间
我正在尝试来自pynetdicom的查询/检索示例 (qrscu.py),但在我们搜索时它与患者姓名配合得很好。但是我需要根据studyDate和studyTime来搜索study。
注意:这里有一些DICOM 的 SOP可用。所以我尝试使用StudyRootFindSOPClass
我尝试使用:
但它给出了错误
请帮助我使用研究日期和时间获取研究。
python - 在 argparse 中从变量而不是命令行获取值
我正在使用 pynetdicom 脚本从 dcm4chee 获取数据。要运行脚本,我需要从命令行传递参数。但是我已经在某个变量或其他对象中拥有该值,我需要从那里使用,但我不知道如何将该值传递给解析器,或者是否可以不解析。
请帮助我了解如何使用一些变量而不是通过命令行传递值。
脚本 :
python - 尝试从 SCP 查询时如何调用 C-STORE
我一直在使用以下代码,该代码来自 pynetdicom 库,用于在我的机器(SCU)上查询和存储来自远程服务器 SCP 的一些图像。
运行程序,我得到以下输出:
Echo 工作,所以我知道我的关联正在工作,并且我能够按照输出的建议查询和查看服务器上的文件。但是,正如您所看到的,OnReceiveStore
似乎没有被调用。我对 DICOM 很陌生,我想知道可能是什么情况。如果我错了,请纠正我,但我认为该行gen = assoc2.PatientRootMoveSOPClass.SCU(d, 'SAMTEST', 1)
应该调用OnReceiveStore
. 如果没有,请了解如何调用 C-STORE。
python - 由于 libdispatch 使子线程崩溃,Python 正在崩溃
我正在使用pynetdicom库来接收和处理医学 dicom 图像。该处理在回调函数“on_association_released”中执行。但是,在接受某些研究时,它会由于看似子线程崩溃而导致 Python 崩溃。
从 OSX 崩溃报告来看,原因似乎是 libdispatch 库,但不确定如何或为什么。
这是功能:
这是来自应用程序日志的最终日志消息:
这是 OSX 崩溃报告:
这是线程 1 崩溃跟踪的顶部:
python - 从请求处理程序将项目添加到异步队列
我有一个 TCP 服务器正在运行,并且有一个处理函数,它需要获取请求的内容,将其添加到 asyncio 队列并以 OK 状态回复。
在后台,我运行了一个异步协程,它检测何时添加新项目并执行一些处理。
如何将项目从处理程序函数放入异步队列中,这不是也不能是异步协程?
我正在运行一个 DICOM 服务器pynetdicom,它在端口 104 上侦听传入的 TCP 请求(C-STORE
特别是 DICOM)。
我需要将请求的内容保存到队列并返回0x0000
响应,以便侦听器可用于网络。
这是由生产者-消费者模式建模的。
由于无法正确定义生产者,我试图定义一个consume_dicom()
当前卡住的消费者协程。await queue.get()
生产者需要简单地调用queue.put(produce_item)
,但这发生在一个handle_store(event)
函数内部,该函数不是该函数的一部分,event_loop
而是在每次服务器接收到请求时调用。
我想找到一种将项目添加到队列并在handle_store()
函数中返回 OK 状态的方法。
python - SCU 如何使用 C-GET 从 Dicom Server 接收 dcm 图像?
我已经看过官方的 pynetdicom 文档,但是在接收图像时我没有正确的事件处理程序(用于 SCU)。
首先,我创建了所需的 .dcm 文件数据集并使用了 C-GET 命令,它实际上应该给我 .dcm 文件,但我还没有指定我的图像在 SCU 上的存储位置。我是否需要使用 C-MOVE 命令来实际获取图像或我的代码不完整(从某种意义上说,没有为 SCU onReceiveStore 指定事件处理程序)?
我希望 .dcm 是从 DICOM 服务器(即我的情况下的 ConQuest 服务器)发送的,但我只收到 DICOM 标签确认该数据集(作为对 ConQuest 服务器的查询)存在!我想确切地知道如何使用此应用程序实体 (ae) 在我的 SCU 上接收图像
这是来自 ConQuest 服务器的响应
ConQuest 服务器正在发送文件,但 SCU 无法接收!
python-3.x - 使用 pynetdicom 验证 DICOM 连接请求的最佳方法
根据已知主机列表验证请求的 DICOM 连接的首选方法是什么?我可以连接到 EVT_CONN_OPEN 事件。但在这方面,event.assoc.requestor.info.ae_title 元素始终为空 (b'')。我从 TCP 网络分析中看到,名称已传输。那么,它在哪里呢?验证请求主机的正确方法是什么?
dicom - 如何获取在 C-MOVE 调用期间未成功检索的所有 SOP 实例的列表?
我正在使用 PyNetDicom 从 PACS 服务器下载(C-MOVE)图像。我已经实现了一个向 PACS 发送 C-MOVE 请求的 SCU,以及一个接收 C-STORE 请求的 SCP。
我下载整个研究,这意味着一次有几千张 DICOM 图像。由于某种原因,我没有收到其中一些。我从 C-MOVE 请求中得到的响应显示了成功发送的图像数量和失败的图像数量(以及正在进行的数量,以及任何警告)。
我不仅想知道有多少失败,还想知道哪些失败,这意味着我想获得失败的 SOP 实例 UID 列表。这是我的代码的相关部分:
这不起作用,标识符始终 None
为,即使status.Status
显示操作失败。我做错了什么,还是我关联的 PACS 不符合 DICOM?
python - pynetdicom C_GET 失败,没有“CT 图像存储”的表示上下文已被 SCP 角色的对等方接受
我第一次尝试使用 pynetdicom。我已经在我的 PC 上安装了它和 ConQuest DICOM 服务器。我能够使 pynetdicom echo 示例正常工作,但是当我尝试 pynetdicom Storage SCU 示例(https://pydicom.github.io/pynetdicom/stable/examples/storage.html)时,它失败了:
问题是,据我所知,该示例已经协商了 CT 图像存储上下文。这是日志记录:
因此,日志显示 CT 图像存储上下文已被接受,但具有 SCP/SCU 角色:默认值,无论这意味着什么。当我通过 pynetdicom 处理进行调试时,我看到有一个 CT 上下文,但仅适用于 SCP 角色。ConQuest 显示它已发送 DICOM 文件,然后断开连接。
当然还有代码(仅对 pynetdicom 示例进行了细微更改:
我一直在谷歌搜索,直到我的谷歌用户感到疼痛。
python - 突然中止关联时取回 StudyInstanceUID
我正在编写一个示例 DICOM SCP Store。我使用 SCU Store 命令模拟了许多 DCM 文件夹的传输(从连接到我的 LAN 的另一台计算机)。同时模拟3个传输。由于未知原因,其中一项传输被中止。我试图跟踪中止的关联以取回相关的 StudyInstanceUID。这是我的SCP:
我在 association.py 中找到了相关消息,但有机会获得中止的 dataset.StudyInstanceUID :