1

嗯,这些数组实际上是来自 DICOM 图像的像素数据。当我只是将它们作为像素数组(每个大约 1mb)的数组(大小 100)发送时,它显然会使浏览器过载。作为编程的新手,我希望能指出正确的方向,开始经济地加载大文件,即,将图像堆栈加载到浏览器窗口中,最好是动态的。如果查询不清楚,请道歉

4

2 回答 2

1

嗯...所以你的应用程序是同时的?DICOM 服务器和 DICOM 查看器?

服务器用于响应查询检索 SOP 类并提供图像,查看器将是发送这些请求的系统。

DICOM 概念会说您的服务器应该只是提供图像,查看器正在显示它们(包括本地文件管理,...)。

最终会出现一个胖客户端(例如,如果您希望查看器位于 Web 浏览器中,则使用 javascript),否则您将无法以您想要的速度与图像交互(平滑滚动,也许是 3D 重建, ETC。)。

如果您只想在您的服务器上拥有一些图像预览功能,我建议您制作一个包含约 10-16 个缩略图的页面,一个视图用于一个或两个全尺寸图像,如果用户需要,则根据请求加载它们预览图像系列或单个图像。这样,您可以显着减少加载时间,并且您的用户可以在发送完整请求之前预先选择图像。

对于完整的查看器,我会考虑在客户端上使用本地解决方案。它是否应该基于网络(或者可能是混合的)取决于您的进一步应用程序。

在过去的项目中,我们使用现有的开源 DICOM 服务器(如dcm4che)来处理服务器部分,然后从那里提取我们的数据。但是对于一个教学系统,自己构建服务器以及展示概念的所有部分可能会很有趣。

随时发表评论,我会尝试更新帖子以回答问题。

于 2013-11-05T05:23:21.537 回答
0

我在尝试使用纯 html5开发多帧 dicom 查看器时遇到了完全相同的问题。

为了能够在浏览器中加载如此大量的影像数据,我决定尝试在客户端使用一些网络存储技术。特别是,我正在考虑使用indexedDB进行一些初始测试。

可悲的是,我目前正在参与其他任务,因此 Web 查看器的开发现在停止(再次!)并且这些测试仍未完成。

无论如何,我会尝试用indexedDB做一个概念证明。

于 2013-10-31T07:03:48.620 回答