C# Dicom 文件太大,如何瘦身?
C# Dicom file is to big, how do i slim down?
尝试按照以下要点将 pdf 嵌入到 dcm 文件中。我们的查看器尚不支持嵌入式 pdf。 pdf通过ghostscript转为图片,在磁盘上为1000k(多页,150dpi)。
https://gist.github.com/mdubey82/4030263
无论我做什么,fo-dicom
都需要一个 1000k 的 jpg 或 png 或 bmp 文件并创建一个 11 兆的 dcm 文件。
有什么办法可以减肥吗?
谢谢!
编辑
在很多帮助下,这里有一个构建压缩 dcm 的要点。
https://gist.github.com/WilliamDoman/e2365104f565a3bf9376fcec6609f432
创建的 DICOM 文件没有压缩像素数据。这意味着您的 PDF(可能 JPEG/JPEG2000 压缩)正在解压缩并创建一个非常大的 DICOM 文件。你想看看ChangeTransferSyntax()
方法在保存前重新压缩像素数据。
DicomFile file = new DicomFile(dataset);
file.ChangeTransferSyntax(DicomTransferSyntax.JPEGProcess14SV1);
file.Save("dicom.dcm");
尝试按照以下要点将 pdf 嵌入到 dcm 文件中。我们的查看器尚不支持嵌入式 pdf。 pdf通过ghostscript转为图片,在磁盘上为1000k(多页,150dpi)。
https://gist.github.com/mdubey82/4030263
无论我做什么,fo-dicom
都需要一个 1000k 的 jpg 或 png 或 bmp 文件并创建一个 11 兆的 dcm 文件。
有什么办法可以减肥吗?
谢谢!
编辑
在很多帮助下,这里有一个构建压缩 dcm 的要点。
https://gist.github.com/WilliamDoman/e2365104f565a3bf9376fcec6609f432
创建的 DICOM 文件没有压缩像素数据。这意味着您的 PDF(可能 JPEG/JPEG2000 压缩)正在解压缩并创建一个非常大的 DICOM 文件。你想看看ChangeTransferSyntax()
方法在保存前重新压缩像素数据。
DicomFile file = new DicomFile(dataset);
file.ChangeTransferSyntax(DicomTransferSyntax.JPEGProcess14SV1);
file.Save("dicom.dcm");