问题标签 [dcmtk]

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.

0 投票
2 回答
570 浏览

dicom - 为什么PACS可以通过c-move-rsp返回0000,0092个值

我使用 dcmtk3.6.3 向 pacs 发送 c-move 命令。
并且 dcmtk 接收到 c-move-rsp,其中出现“(0000, 0902)”错误。
我知道错误的原因,但我不知道为什么PACS可以通过c-move-rsp返回0000,0092的值? 据我所知,C-move-rsp在dicom中只有status 0000,0090,没有标签“(0000, 0902)”
一 二 三

“(0000, 0902)”的错误信息是通过c-move-rsp传递的吗?

0 投票
1 回答
46 浏览

c++ - ubuntu14.0中dcmtk3.6.3的makefile是否有-g可以调试?

我想在ubuntu14.0中用vs代码调试dcmtk3.6.3的代码。

但我不知道原始makefile是否有-g参数。

我尝试调试,但它不起作用。那么,我应该在makefile中添加“-g”吗?以及在哪里添加?

这是makefile中dcmtk的movescu。 在此处输入图像描述

0 投票
2 回答
1118 浏览

windows - DCMTK movecu 错误:响应成功但未收到文件

我是 DICOM 和 DCMTK 的新手。我试图在 Windows 平台上使用 movecu 命令从私有 PACS 服务器(172.18.1.1)检索 dcm 文件。传入和传出消息正常,但在指定目录下没有收到数据。命令如下:

输出消息如下:

我还尝试添加--port 104 或-aem TEST1,但也失败了。

0 投票
1 回答
155 浏览

msys - 如何使用 make 命令(MSYS)来构建 DCMTK?

我已经使用 CMAKE 来配置和生成 DCMTK 源代码。现在我正在尝试在msys中使用make命令构建库。但是一旦我通过make命令,我就会得到这个:

为什么我得到这个

Microsoft Windows [版本 10.0.16299.726] (c) 2017 Microsoft Corporation。版权所有。

通过make命令后?我无法构建库。我该如何解决这个问题?

0 投票
1 回答
174 浏览

android - 如何解决 fopen64、freopen64、tmpfile64 未声明错误?

我已经编译了 DCMTK 源代码来生成库(用于 android 平台)并将这些库添加到我的 QT 项目中。在构建我的 qt 项目时,我遇到了这些错误:

我该如何解决这个问题?

0 投票
1 回答
603 浏览

dicom - 如何使用 DCMTK 命令区分来自两个不同制造商的 CT 图像?

我正在尝试从服务器中提取图像。我有兴趣为特定患者提取 CT 图像。我正在从命令提示符(Windows)执行以下 DCMTK 命令:

1) 我获得了我的患者 ID (0020,000D) 的研究实例 UID

输出:

……

I: (0010,0020) LO [303XXXXX] # 8, 1 患者 ID

I: (0020,000d) UI [1.2.840.113619.2.278.3.346865037.482.15052672XX.XXX] # 52, 1 StudyInstanceUID

……

2) 我得到了研究中存在的 CT 模态的系列实例 UID (0020,000E):

输出:

...

系列 1:制造商 1

I: (0008,0060) CS [CT] # 2, 1 模态

I: (0010,0020) LO [3038XXXX] # 8, 1 PatientID

I: (0020,000d) UI [1.2.840.113619.2.278.3.346865037.388.15390421XX.XXX] # 52, 1 StudyInstanceUID

I: (0020,000e) UI [1.2.246.352.62.2.4715824891563742196.178434434465388XXXX] # 56, 1 SeriesInstanceUID

I: (0020,0011) IS [2 ] # 2, 1 系列号

...

系列 2 : 制造商 2

I: (0008,0060) CS [CT] # 2, 1 模态

I: (0010,0020) LO [3038XXXX] # 8, 1 PatientID

I: (0020,000d) UI [1.2.840.113619.2.278.3.346865037.388.15390421XX.XXX] # 52, 1 StudyInstanceUID

I: (0020,000e) UI [1.2.840.113619.2.278.3.346865037.388.15390421XX.XXX] # 56, 1 SeriesInstanceUID

I: (0020,0011) IS [3] #2, 1 系列号

...

3) 我现在可以使用系列实例 UID 从服务器中提取 CT 图像:

输出

...

I: (0020,000e) UI [1.2.840.113619.2.278.3.346865037.388.15390421XX.XXX] # 54, 1 SeriesInstanceUID

I:收到移动响应 1(待处理)

...

问题是患者有两种类型的CT系列:“ConeBeam CT”和“CT:

但是两种类型的 CT 系列的模态标签 (0008,0060) 都是“CT”。我只想拉“ConeBeam”CT系列。使用前面的命令,我正在拉动所有东西(两者)。即我无法区分“ConeBeam CT”和“CT”。

那么,有什么方法可以使用 DCMTK 命令区分“ConeBeam CT”系列和“CT”系列吗?

以下是“ConeBeam CT”标头的转储:

以下是 CT 标头的转储:

0 投票
1 回答
203 浏览

dicom - 为什么 GE PACS 在 StudyLevel 中使用带有 c-find 的 Modality

我使用 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 当天返回的模态值和查询的学习次数是错误的,比实际数少得多?

0 投票
1 回答
472 浏览

c++ - 如何在 macos 上的 C++ 项目中使用 DCMTK

我正在开发一个小型 C++ 项目,需要从 DICOM TAG 中提取信息。

我正在使用 VSCode 来管理 C++ 代码和 CMake 来构建。

通过 Macport 安装 DCMTK:port install dcmtk。

如何将 DCMTK 作为库添加到我的项目中?有没有分步教程?

谢谢!

更新:

这是我根据@mattdibi所做的

在我的 CMakeLists.txt 中添加了以下几行

然后将包含路径“/opt/local/include”添加到文件 c_cpp_properties.json 中的“includePath”部分。

在我的源文件中添加了包含行:

cd 到我在项目根目录中的 Debug 文件夹,运行 cmake -DCMAKE_BUILD_TYPE=Debug ..

最后,在 Debug 文件夹下运行 make,以下是有错误的构建日志:

0 投票
1 回答
184 浏览

c++ - QtDCM 编译失败的可能原因是什么?

QtDCM编译失败。我按照本手册中的说明进行了所有操作,DCMTK并且ITK编译没有任何问题,但是当我尝试编译时QtDCM,它失败并出现错误:

图书馆src有麻烦吗?是否有可能我在CMake-GUI配置时犯了错误?

我想编译QtDCM库。

0 投票
0 回答
328 浏览

c# - DCMTK:从 C# 调用的包装 dcmsend dll 在多次调用时会出错

我正在尝试将 DCMTK 3.6.4(一个 C++ 库)集成到 C# 环境中。虽然我已经成功包装了 DLL

为此,我采用了 dcmsend 的代码,将其包装在一个 'extern "C" {}' 中,将 '_declspec(dllexport)' 放在 main 方法之前,然后将其导出到一个 DLL。然后我使用此代码从 C# 调用此 DLL。

这是DLLImport:

我这样称呼方法;ip、端口和文件名都是字符串,并且都是有效的。

当我只调用一次上述方法时,它会输出以下文本:

但是,在同一会话中调用该方法的所有后续时间,即使文件名不同,也会产生以下输出:

正如输出所示,后续操作也没有正确发送。

我该如何解决这个问题?