Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
DICOM中的JPEG无损压缩_Jpeg_Dicom_Pillow - Fatal编程技术网

DICOM中的JPEG无损压缩

DICOM中的JPEG无损压缩,jpeg,dicom,pillow,Jpeg,Dicom,Pillow,其中一种传输语法是1.2.840.10008.1.2.4.70,定义为JPEG无损、非分层、一阶预测(过程14[选择值1]) “JPEG无损、非分层、一阶预测(处理14[选择值1])是什么意思?此格式与JPEG-LS相同吗?似乎表明存在一些差异(JPEG-LS列在底部部分) 可以用Python读写这种格式吗?在查看文档时,我不清楚该格式是否受支持 .JPEG无损一阶压缩 Identical to the main JPEG lossless, but with a constrained val

其中一种传输语法是
1.2.840.10008.1.2.4.70
,定义为
JPEG无损、非分层、一阶预测(过程14[选择值1])

“JPEG无损、非分层、一阶预测(处理14[选择值1])是什么意思?此格式与JPEG-LS相同吗?似乎表明存在一些差异(JPEG-LS列在底部部分)

可以用Python读写这种格式吗?在查看文档时,我不清楚该格式是否受支持


.JPEG无损一阶压缩

Identical to the main JPEG lossless, but with a constrained value for the
predictor, giving a slightly simplified algorithm, with slightly greater
speed, but slightly less compression on most images (2-5% typically)
(from medicalconnections wiki)
您可以看看GDCM编码jpeg压缩的dicom图像。

JPEG无损压缩和JPEG-LS是非常不同的图像压缩实现。JPEG无损的定义见标准文件:ITU-T T.81,ISO/IEC is 10918-1,而JPEG-LS的定义见ITU-T.87,ISO/IEC is 14495-1

JPEG-LS是一种与所有其他JPEG-*压缩系列非常不同的方法,因为在其有损形式中,它是以与原始像素最大偏差的方式设置的。因此,您可以从输入文件生成有损JPEG-LS,其中生成的像素与原始像素之间的最大差值为-2

UNIX上的大多数工具包最初不支持JPEG无损压缩,因为算术编解码器存在一些专利问题:

因此,IJG(又称libjpeg)是ITU T.81的一个非常有限的实现,在UNIX发行版上默认只提供标准的有损8位压缩形式(顺序和渐进)。有损12位和无损16位都不可用。从技术上讲,12位有损应该是可能的,但由于它需要重新编译,大多数(所有?)发行版并不提供这种“双”库


在使用新的实现时,上述所有内容都是正确的,因为libjpeg-turbo只是原始libjpeg的优化(二进制兼容)版本(准确地说是版本6b).DICOM提供了支持JPEG-LS图像压缩的机制,DICOM标准PS 3.5附录A定义了参考JPEG-LS标准(ISO/IS-14495-1(JPEG-LS第1部分))的两种不同传输语法。UID为“1.2.840.10008.1.2.4.80”的传输语法是无损的(保留位),UID为“1.2.840.10008.1.2.4.80”的传输语法是无损的(保留位的)“1.2.840.10008.1.2.4.81”是有损(接近无损)压缩方案。

我有一个类似的问题,我用@JohnnyQ提示解决了这个问题:

conda install -n myenv -c clinicalgraphics gdcm
conda install -n myenv -c anaconda pillow
您还可以使用
pip安装…
安装gdcm枕头。
看看

有没有处理解码ITU-T.81、ISO/IEC是10918-1无损的库?我知道GDCM有,但它需要一个完整的DICOM文件,而不仅仅是图像数据。@AlexRothberg GDCM有点模块化,因此您可以在自己的项目中完美地重复使用GDCM中使用的JPEG库(这都是很好的BSD风格许可证)