我已经使用 ImageMagick 从 .tif 创建了我希望的无损 .jp2 文件。
for %%a in (*.tif) do magick "%%a" -quality 0 "%%~na.jp2"
我想检查转换是否无损,因此使用了以下命令:
for %%a in (*.jp2) do magick compare -verbose "%%a" "%%~na.tif" -metric RMSE
列出两个文件的详细信息后,返回一个错误:
magick 比较 -verbose "DSC09906.jp2" "DSC09906.tif" -公制 RMSE DSC09906.jp2 JP2 5463x3851 5463x3851+0+0 16 位 sRGB 84.1136MiB 7.566u 0:07.566 DSC09906.tif TIFF 5463 x3851 5463x3851+0+0 16-位真彩色 sRGB 120.385MiB 0.126u 0:00.126 比较:`RMSE' @ error/compare.c/CompareImagesCommand/1159
这个错误是两个文件之间的差异(我希望是 0)还是我要求进行比较的方式犯了错误?
非常感谢 :-)
您的 Imagemagick 语法可能有错误。您的顺序错误——将度量放在图像之前——并且我没有看到比较结果的任何输出图像。因此,对于给定的图像,也许您应该使用以下语法
JP2 质量(以 DB 为单位)的默认值是无损的。请参阅https://imagemagick.org/script/defines.php
我不确定为什么您可能希望输出比较图像是 JP2。尽管如此,上面的语法应该可以工作。如果您不希望输出比较图像,请使用 NULL: 代替。