学习开发 DICOM 查看器

Learning to develop a DICOM viewer

所有,我得到了一项任务,为 DICOM 图像开发一个网络查看器,用于与 PACS 服务器通信。我认为目前我的问题是我对 DICOM 一无所知。没听过

刚知道DICOM有一个标准。但我试图搜索类似 org 的网站,但没有找到。有人可以告诉我文件位置吗?

有人告诉我dcm4che是一个开源库。有没有其他好的工具可以推荐给我,帮助我更多地了解它,以便我可以开始开发查看器?谢谢

Dcm4che (http://www.dcm4che.org/) 无疑是访问 DICOM 对象的一个​​很好的替代方法 - 它是一个 Java API,允许访问存储在 DICOM 服务器中的 DICOM 对象。您不仅可以获得 API,还可以获得执行各种操作的命令行实用程序 - 这些也可以作为开始了解 DICOM 交互技术方面的良好起点。 对于查看器应用程序,我建议关注 "dcmqr"(查询检索:如何列出服务器上的可用研究 - 命令行实用程序还允许存储对象)。 DICOM 的另一个有趣的部分是 WADO,它是一个基于 http API 的访问 DICOM 对象的工具 - 它也经常被观众使用 - 作为标准 DICOM 的替代品或结合使用。

如果您还没有服务器,您也可以使用 Dcm4chee(请注意此处的第二个 'e'),这是一个构建在 dcm4che 之上的全功能开源服务器(因此 DICOM 交互使用它)。我使用过版本 2,但较新的版本 5 (https://github.com/dcm4che/dcm4chee-arc-light/wiki) 更现代但功能较少。

根据您选择的语言,还有其他选择(我不熟悉)。

此模块可以帮助您访问 dicom 文件:https://github.com/darcymason/pydicom, if you need some comunication, this module can help too: https://github.com/patmun/pynetdicom。要制作查看器,您需要对图像格式有一些经验,如果您想进行一些图像处理,则需要一点 numpy。

DICOM 文件工作起来非常复杂,但并非不可能。该文档位于 http://dicom.nema.org/

有任何疑问我都可以,如果你想要一些具体的代码,我可以给你解释。

Chris Chafey 有一个不错的 javascript 工具箱,你不使用就是傻瓜。

https://github.com/chafey/cornerstone

你也可以看看DWV:https://github.com/ivmartel/dwv

剧透:我是作者!