如何压缩DICOM文件

本篇文章分享一个基本的LEADTOOLS C #代码示例,讲解如何载入DICOM文件,然后将它压缩保存以大大减少文件大小。

发布于 2017/09/30 00:00

葡萄城技术博客

本篇文章分享一个基本的LEADTOOLS C #代码示例,讲解如何载入DICOM文件,然后将它压缩保存以大大减少文件大小。

在压缩时,你将使用jpeg2000压缩类型。一旦初始化了DicomJpeg2000Options选项,就可以开始为新的DICOM文件设置选项了。

有两个枚举,将在这个过程中使用的:

CompressionControl-获取或设置指示如何确定所产生的压缩。

CompressionRatio -获取或设置指示压缩比使用整型值。

一旦你有了这些枚举集合的DicomJpeg2000Options选项,你需要给数据集本身的选项。

现在你可以使用ChangeTransferSyntax改变数据集的传输语法。

最后,你可以使用保存方法保存数据集。

通过这些设置,我们可以将DICOM文件从从854kb压缩到36kb。

DicomEngine.Startup();
using (DicomDataSet ds = new DicomDataSet())
{
   //Load DICOM File 
   ds.Load(input, DicomDataSetLoadFlags.None);

   //Initialize J2K Options
   DicomJpeg2000Options options = ds.DefaultJpeg2000Options;

   //Set Options
   options.CompressionControl = DicomJpeg2000CompressionControl.Ratio;
   options.CompressionRatio = 50;

   //Add options to the dataset
   ds.Jpeg2000Options = options;

   //Change the transfer syntax to J22K
   ds.ChangeTransferSyntax(DicomUidType.JPEG2000, 2, ChangeTransferSyntaxFlags.MinimizeJpegSize);

   //Save Dicom file
   ds.Save(dest, DicomDataSetSaveFlags.None);

   //Shut down the DICOM engine
   DicomEngine.Shutdown();
}
 
支持

关于其他产品的更多信息,请访问我们的官方网站

欢迎下载免费的全功能评估版SDK,全功能试用版中有这个例子的全部源代码。

同时欢迎您使用评估版期间的免费技术支持

 

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态