gpt4 book ai didi

MATLAB tiff 文件格式与 PNG 文件格式。真正的无损压缩?

转载 作者:行者123 更新时间:2023-12-02 03:55:43 27 4
gpt4 key购买 nike

我一直在研究一个问题,我需要将矩阵保存为图像,并使其成为 MATLAB 中矩阵的真正无损示例。

我试过将图像写成 png 和 tiff 两种无损形式:

Name              Size                 Bytes  Class     Attributes  diff            237x354               671184  double                imPng           237x354               167796  uint16                imPngD          237x354               671184  double                imTiff          237x354                83898  uint8                 imTiffD         237x354               671184  double                padded         2042x2170            35449120  double                testImage       237x354               671184  double              

testImage is the matrix I would like to save losslessly.

I used the following lines to write the matrix as a tif and png:

EDU>> imwrite(testImage,'imTiff.tif','tiff','compression','none');
EDU>> imwrite(testImage,'imTiff.png','PNG','bitdepth',16);

然后我将图像加载回工作空间(imTiff 和 inPng)并将它们转换为 double。

EDU>> imPngD = im2double(imPng);
EDU>> imTiffD = im2double(imTiff);

但是当我从 testImage 中减去 imPngD 或 imTiffD 时,还剩下剩余值。

我的问题是:
我的处理有问题吗?
如果不是,这是否意味着 tif 和 png 并非真正完全无损?

如果您认为有帮助,我可以提供图片。

我认为这些图片可能会有所帮助:测试图片
testImage - original
imTiffD 和 testImage 的区别
Difference between imTiffD and testImage
imPngD 和 testImage 的区别
Difference between imPngD and testImage

请注意:图像 2-3 中的灰色像素值为零,即 testImage 与重新加载图像之间的差异为零。

最佳答案

PNG 和 TIFF 都是真正无损的(忽略 TIFF 选项来打包 JPEG,您没有使用它)。然而,考虑到它们的输入,它们是真正无损的,对于 PNG,每个像素每个颜色值 8 位或 16 位,或者对于 TIFF,每个像素每个颜色值 8 位。

如果您正在寻找超出 8 位或 16 位值可以携带的精度,那么您会看到差异。

关于MATLAB tiff 文件格式与 PNG 文件格式。真正的无损压缩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12783602/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com