別再殘害自己的雙眼了!使用ImageDifferencer快速查看兩張圖片的差異程度


當我們需要對照圖片壓縮前後的差異,或是對照差異很小的波形圖或是頻譜圖等複雜的圖形時,若是用肉眼直接對照,看一兩張圖還好,若是有很多張圖要處理,那可真是傷眼。ImageDifferencer是一個簡單的程式,可以將兩張圖片做「減法」運算,並將運算結果最大化,讓兩張圖片的差異看起來更明顯,最後將結果直接輸出成另一張圖片。

取得ImageDifferencer

https://github.com/magiclen/ImageDifferencer

本站下載

使用ImageDifferencer

本程式只提供命令列介面,使用方式很簡單,可以使用以下指令來執行:

java -jar ImageDifferencer.jar

執行後可以輸入圖片的輸入路徑和輸出路徑,以及輸出的格式。

image-differencer

也可以直接在命令列參數傳入路徑和格式,指令格式如下:

java -jar ImageDifferencer.jar INPUT_IMAGE_FILE_PATH_1 INPUT_IMAGE_FILE_PATH_2 OUTPUT_IMAGE_FILE_PATH [PNG/JPEG/TIFF/BMP/GIF]

image-differencer

檢查圖片壓縮品質

用「MagicCat.jpg」這張大小7.1MB、解析度3776x2520的圖片來舉例,可用以下連結下載原圖:

//file.magiclen.org/index.php?file=4d616769634361742e726172

將圖片壓縮後,只剩1.4MB。

magicimage

比較壓縮圖和原圖的差異,結果圖如下:

image-differencer

差異愈大的話,細節愈明顯,代表兩張圖品質的差異愈多。

檢查聲音訊號壓縮音質

ImageDifferencer甚至還可以用來檢查聲音訊號的壓縮音質,原理很簡單,就是將兩個聲音訊號來源(如兩個音樂檔案)轉成頻譜圖,再相減之後比較差異程度,即可直接用肉眼看出聲音品質的差異。

以下來看看WAV轉AAC的頻譜差異。

首先看一下WAV檔案的頻譜圖。

image-differencer

再看一下使用FAAC參數「-q 700」轉出來的AAC檔案。

image-differencer

將它們使用ImageDifferencer處理之後,就可以知道兩者的音質差異了!

image-differencer

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章