我的工作需要使用 DICOM 文件。每个 DICOM 文件由单个目录中的多个 .dcm 文件组成。我需要通过网络发送这些文件,由于文件很大,这个过程有点如此。我也是一名程序员,我想知道压缩此类文件的理想方法是什么?我说的是将在本地计算机上进行压缩,然后在目标计算机上解压缩(即压缩仅用于加快文件的网络传输速度)。有没有一种简单的方法来裁剪 DICOM 文件?(这些文件包含整个头部的成像,而我只对头部的一小部分感兴趣)。
谢谢!
在医学领域,有损压缩介于不鼓励和禁止之间。如果您坚持裁剪现有数据集,该标准要求您至少形成新的图像和系列 UID。该标准确实允许以 jpeg2000 的形式进行无损压缩,但这种情况非常罕见 - 如果我必须打赌,我会说你的数据集完全未压缩。
根据我的经验,将医疗数据集压缩为可靠的存档要好得多,即将所有图像统一到单个流中。这很有意义,因为附近的图像之间通常存在很多相似性,而这是利用这种相似性的方法(统一的压缩字典)。这可作为 rar 和 gzip 压缩器的命令行选项使用。
您可以在一端使用 lzma 压缩之类的简单方法来打包文件并将其发送出去。这是最简单的解决方案,因为您可以获取 gzip 之类的东西并以编程方式轻松打包/解包文件。这可能会有很大帮助,因为现代计算机更喜欢传输/接收一个大文件而不是许多小文件(单个 1GB 文件的传输速度比 10000 个 100KB 文件的传输速度快得多)。
至于实际减少聚合大小,每个 .dcm 文件可能是一个切片(如果您正在查看 MRI 或 CT 数据等内容),并且您使用的查看器将切片重建为 3D 图像。裁剪它们并非不可能,但解析 DICOM 格式有点棘手。我不知道有任何免费程序可以帮助您解析 DICOM 文件,但我已经有一段时间没有寻找了。
由于 DICOM 是一种容器格式,您所追求的图像数据通常以通用格式存储(例如 JPEG),因此如果您能够抓取文件的相关部分来提取图像数据,您可以使用以下任何一种大量图像处理工具可用于将图像裁剪为您选择的任何尺寸。