ImageMagick的“比较”在使用SSIM作为比较指标时似乎提供了不相关的数字。我使用的是ImageMagick 7.0.8-58 Q16。
我尝试了不同级别的WebP压缩(包括无损压缩)。
magick compare -metric SSIM original.png lossless.webp difference.png提供0.734809。虽然我期望一个视觉上难以分辨的图像(显然没有工件,因为它是一个在无损模式下压缩的WebP文件)在0.999左右的东西。
收到这样的结果后,我假设具体地将PNG与WebP进行比较存在问题,所以我尝试将原始的PNG与压缩的JPEG与目标SSIM进行比较。Fred的ImageMagick脚本的SSIM软件包给出了ssim=0.949和dssim=0.051的结果。相反,ImageMagick为同一文件提供了0.711049的结果。
magick compare -metric SSIM original.png compressed.jpg difference.png不幸的是,弗雷德的SSIM似乎不适用于WebP,GraphicsMagick的比较不支持SSIM。那么,我如何从ImageMagick中获得一个准确的SSIM,或者如何获得WebP文件的SSIM呢?
发布于 2019-08-05 12:20:53
其实答案很简单。我使用了一个被窃听的ImageMagick版本。仅仅改变比较的顺序就可以了:
magick compare -metric SSIM compressed.jpg original.png difference.png发布于 2019-08-04 20:13:39
--您是否已将webp安装为ImageMagick的委托?如果是的话,它应该显示在来自magick -version的委托列表中。你的平台/操作系统是什么?
我的ssim脚本似乎适用于IM 7.0.8.59 Q16 Mac
magick rose: rose.webp
ssim rose.webp rose.webp
ssim=1 dssim=0另外,ImageMagick比较对我也很好。
magick compare -metric ssim rose.webp rose.webp null:
1我认为webp到png的较低值可能与webp有损压缩有关。我从ImageMagick和我的脚本中获得类似的值:
magick rose: rose.webp
magick rose: rose.png
magick compare -metric ssim rose.webp rose.png null:
0.895189
ssim rose.webp rose.png
ssim=0.895 dssim=0.105然而,如果我使用无损压缩,那么我得到了一个完美的比较:
magick rose: -define webp:lossless=true rose.webp
magick rose: rose.png
ssim rose.webp rose.png
ssim=1 dssim=0
magick compare -metric ssim rose.webp rose.png null:
1增添:
对我来说,webp映像在命令行中的顺序并不重要。
在这里,我使用无损压缩。
magick rose: rose.png
magick rose: -define webp:lossless=true rose.webp
magick compare -metric ssim rose.webp rose.png null:
1
1magick compare -metric ssim rose.png rose.webp null:
1在这里,我不使用无损压缩。
magick rose: rose.png
magick rose: rose.webp
magick compare -metric ssim rose.webp rose.png null:
0.895189
magick compare -metric ssim rose.png rose.webp null:
0.895189https://stackoverflow.com/questions/57349763
复制相似问题