首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么dcm4che在使用不同的传输语法从CharruaSoft sendscu工具发送DICOM时会创建巨大的文件?

为什么dcm4che在使用不同的传输语法从CharruaSoft sendscu工具发送DICOM时会创建巨大的文件?
EN

Stack Overflow用户
提问于 2019-05-07 07:05:45
回答 1查看 785关注 0票数 2

我没有16位和8位的DICOM文件,我使用dcm4che sendscu工具将其传输到StoreSCP。

它对16位文件很好,但是对于8位简单的2MB文件,它生成一个巨大的90 MB文件。

我试着使用StoreSCU从dcm4che本身发送,它运行得很好。但是它通过CharruaSoft SendSCU创建了巨大的文件。

复制步骤:

  1. 下载CharruaSoft SendSCU
  2. 安装dcm4che工具SCP maven项目。
  3. 使用--help中给出的适当参数运行java的main方法。
  4. 使用CharruaSoft SendSCU发送一个16位的DICOM,工作正常。
  5. 现在发送一个8位的DICOM,它可以工作,但是创建一个巨大的文件,在我的例子中,2MB变成了90 MB。

首先,我认为这可能是一个CharruaSoft SendSCU问题,但是CharruaSoft SendSCU能够正确地发送到其他SCP以获取例如: mymedicalimages.com。

有没有人遇到过类似的问题?

编辑:

如果我从CharruaSoft sendscu中选择JPEG有损8位压缩,它可以工作,并且不会创建一个巨大的90 mb文件。

但我无法控制CharruaSoft sendSCU工具。我想让java dcm4che SCP来处理这个问题。

编辑2: --如果我只是用正确的语法覆盖传输语法,那么它就可以将dicom文件保存为精确的大小文件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-08 07:19:05

我在SendSCU上调试了你的问题。

我得到了一个JPEG 2000有损压缩的图像。我与我的SCP建立了联系,并推动了这一形象。

以下是协理日志:

代码语言:javascript
复制
Implementation Version:  CharruaSoft
Maximum PDU Size:        16384
Called AE Title:         remote
Calling AE Title:        local
Presentation Contexts:   1
  Presentation Context:  1 [Proposed]
      Abstract:  CT Image Storage
      Transfer:  Explicit VR Little Endian
      Transfer:  JPEG 2000 Image Compression
      Transfer:  Implicit VR Little Endian: Default Transfer Syntax for DICOM

请注意,SendSCU建议的只是一个表示上下文(PC),其中包含三个传输语法。现在该由SCP来接受了。好消息是,SCU自动检测要发送的原始图像TS .

对于8位简单的2MB文件,它生成一个巨大的90 MB文件。

这是因为SCP接受第一个传输语法并将ASSOCIATE-ACCEPT发送回SendSCU。然后,SendSCU (如预期的那样)动态地解压缩图像,从而增大图像的大小。

我试着使用StoreSCU从dcm4che本身发送,它运行得很好。

我相信StoreSCU一定是在提议:

  • 只有一个TS -失败的一个或
  • 多个TS在不同的PC机中。SCP接受每台PC。StoreSCU使用最好的一个--失败或
  • 顶部有亏损TS的多个TS

在上述任何一种情况下,StoreSCU都不会解压缩映像,也不会出现大小问题。也许你应该像上面那样得到类似的日志。

CharruaSoft SendSCU能够正确地向其他SCP发送例如: mymedicalimages.com。

如果在一台PC机上提出多个TS,则由SCP决定接受哪个TS。因为您提到的SCP是托管在internet上的,所以很可能它接受Lossy TS (为了提高性能和节省带宽)的优先级,因此文件大小很小。你应该检查他们的一致性声明。如果你把它上传到这里,我可能会帮上一点忙。

如果我从CharruaSoft sendscu中选择JPEG有损8位压缩,它可以工作,并且不会创建一个巨大的90 mb文件。

以下是这种情况下的协理日志:

代码语言:javascript
复制
Implementation Version:  CharruaSoft
Maximum PDU Size:        16384
Called AE Title:         remote
Calling AE Title:        local
Presentation Contexts:   1
  Presentation Context:  1 [Proposed]
      Abstract:  CT Image Storage
      Transfer:  JPEG 2000 Image Compression
      Transfer:  Implicit VR Little Endian: Default Transfer Syntax for DICOM

注意,JPEG 2000是这里提出的第一个TS。SCP接受它,一切都很好。

但我无法控制CharruaSoft sendSCU工具。我想让java dcm4che SCP来处理这个问题。

我从未使用过dcm4che工具;我在这里无能为力。您可以检查dcm4che文档,以查看如何配置在PC中建议接受的TS。希望有一个设置/开关来处理该行为。这是你唯一的方法,如果你想要处理这与SCP的飞行。

另一种选择是使用-t开关进行离线TS转换,如解释的这里

-t,--传输语法 将源转换为指定的传输语法。默认情况下使用显式VR小终端

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56017266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档