我在本地驅動器上有很多產品圖像,我從不同的來源獲得,其中一些產品搞砸了。我正在談論分辨率很大的圖像,但顯然通過從非常小的來源調整圖像大小來實現此分辨率。搜索由低分辨率製成的大圖像
有沒有一款軟件能找到這些常見的高分辨率但質量較低的圖像?感謝您的任何想法。
我在本地驅動器上有很多產品圖像,我從不同的來源獲得,其中一些產品搞砸了。我正在談論分辨率很大的圖像,但顯然通過從非常小的來源調整圖像大小來實現此分辨率。搜索由低分辨率製成的大圖像
有沒有一款軟件能找到這些常見的高分辨率但質量較低的圖像?感謝您的任何想法。
我有幾個想法,我會告訴什麼,我在與ImageMagick的這是安裝在大多數Linux發行版,並提供(免費)適用於MacOS和Windows獲得。
爲了說明我在說什麼,當圖像從較小的圖像變大(up-rezzed)時,缺少高頻信息(細節)。下面是一個例子:
該技術是這樣的。拍攝一張圖像,複製圖像,將其縮小到其原始大小的百分比,然後將其縮小並測量其與原始圖像的差異程度。這裏有一個例子:
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%,我可以把它們放在一起在動畫中是這樣的:
希望,你可以看到紫色的點,從x軸(其中MSE誤差爲低)出發,立即在對應的百分比點原始大小,圖像被重新激活。
所以,我建議你看看你的圖像,並找到一個錯誤的閾值,這個錯誤對應於可能存在的上升程度,然後根據該閾值測試任何單個圖像的錯誤。
如果你是在Windows上,這將是一樣的,上面的所有代碼只是爲了生成動畫的圖和數字。你只需要用一條線獲得MSE:
magick YOURIMAGE -set option:geom "%G" \(+clone -resize "${size}%" -resize "%[geom]"\! \) -metric MSE -compare -format "%[distortion]" info:
哇,這真的很複雜。我會看看它,看看我能做些什麼。現在我會將你的答案設定爲接受。非常感謝你! :) –