2017-08-30 84 views
-3

有沒有辦法用命令行工具逐個像素地比較.tiff文件?是否有一個命令行工具可以直觀地比較.tiff文件(逐個像素)?

例如:

輸入:工具image1.tiff image2.tiff

輸出:真(布爾)(如果相同),假(布爾)(如果差異是找到)

也許還有一個Java代碼/工具?

預先感謝您!

+0

如果你只想要一個真/假響應,只需計算和比較md5或其他東西。 –

+0

目前尚不清楚是否比較_files_,像diff和md5sum這樣的操作系統工具可能是適合的,或者比較實際的圖像數據。如果目的是比較圖像數據,例如,如果顏色在不同文件中編碼的方式不同,會發生什麼情況?我們是否需要檢查圖像數據是否相同(只要這是可能的),或者在某個閾值內。 FWIW我可以提供一些Java代碼,將TIFF讀入RGB像素值的數組中;但是你仍然需要弄清楚如何進行實際的比較。 –

回答

1

您可以使用ImageMagick for comparing images。根據其documentation,它也支持TIFF文件。

命令用於比較圖像:

compare -verbose -metric mae pic1.tiff pic2.tiff difference.png 

對於相同的圖像,將打印僅零:

Channel distortion: MAE 
    red: 0 (0) 
    green: 0 (0) 
    blue: 0 (0) 
    alpha: 0 (0) 
    all: 0 (0) 

對於不同的圖像,將打印的非零值,例如:

Channel distortion: MAE 
    red: 2282.91 (0.034835) 
    green: 1853.99 (0.0282901) 
    blue: 2008.67 (0.0306503) 
    all: 1536.39 (0.0234439) 

或者如果圖像的大小不同,它會抱怨:

image widths or heights differ 

您可以使用這些輸出爲您自己生成真/假值。 (Here are some ideas.

相關問題