2017-08-30 71 views
0

我在本地驅動器上有很多產品圖像,我從不同的來源獲得,其中一些產品搞砸了。我正在談論分辨率很大的圖像,但顯然通過從非常小的來源調整圖像大小來實現此分辨率。搜索由低分辨率製成的大圖像

有沒有一款軟件能找到這些常見的高分辨率但質量較低的圖像?感謝您的任何想法。

Example of enlarged image from a small source

回答

1

我有幾個想法,我會告訴什麼,我在與ImageMagick的這是安裝在大多數Linux發行版,並提供(免費)適用於MacOS和Windows獲得。

爲了說明我在說什麼,當圖像從較小的圖像變大(up-rezzed)時,缺少高頻信息(細節)。下面是一個例子:

enter image description here

該技術是這樣的。拍攝一張圖像,複製圖像,將其縮小到其原始大小的百分比,然後將其縮小並測量其與原始圖像的差異程度。這裏有一個例子:

magick start.jpg -set option:geom "%G" \(+clone -resize 50% -resize "%[geom]"\! \) -metric MSE -compare -format "%[distortion]" info: 
0.00220709 

如果我現在要做的是,在一個循環,我可以得到MSE(「均方誤差」)用於調整圖像大小下降到10%和備份,下降到20 %和備份,下降到30%和備份這樣的:

for ((size=10;size<100;size+=10)); do 
    distortion=$(magick start.jpg -set option:geom "%G" \(+clone -resize "${size}%" -resize "%[geom]"\! \) -metric MSE -compare -format "%[distortion]" info: 2>&1) 
    echo $size $distortion 
done 

樣本輸出

10 0.00641669 
20 0.00461728 
30 0.00351362 
40 0.0027639 
50 0.00220709 
60 0.00173019 
70 0.00130171 
80 0.000935031 
90 0.000637741 

如果你運行一個增益,但輸出重定向到一個叫"data"文件,你可以用gnuplot繪製它:

gnuplot --persist -e "set yrange [0:0.01];set title '10: MSE vs Resize Percentage';plot 'data'" 

現在,我們來點實際的。如果我爲一個文件從原始大小的75%上傳到另一個文件,那麼對於一個從原始文件大小的50%上升到另一個文件的文件,再次爲25%和15%,我可以把它們放在一起在動畫中是這樣的:

enter image description here

希望,你可以看到紫色的點,從x軸(其中MSE誤差爲低)出發,立即在對應的百分比點原始大小,圖像被重新激活。

所以,我建議你看看你的圖像,並找到一個錯誤的閾值,這個錯誤對應於可能存在的上升程度,然後根據該閾值測試任何單個圖像的錯誤。

如果你是在Windows上,這將是一樣的,上面的所有代碼只是爲了生成動畫的圖和數字。你只需要用一條線獲得MSE:

magick YOURIMAGE -set option:geom "%G" \(+clone -resize "${size}%" -resize "%[geom]"\! \) -metric MSE -compare -format "%[distortion]" info: 
+0

哇,這真的很複雜。我會看看它,看看我能做些什麼。現在我會將你的答案設定爲接受。非常感謝你! :) –