2010-01-29 35 views
1

我正在創建一個python腳本來排序很多圖像(遊戲截圖)。運行外部子進程並閱讀返回代碼

我在imagemagick中找到了一種方法:我知道,如果圖像的特定平方與參考作物相同,那麼該圖像屬於第一類。如果不是,我檢查另一個作物和另一個類別,如果這不合適,我把圖像放在第三類。

我發現怎麼做,在ImageMagick的:

convert file.jpg -crop 80x10+90+980 +repage crop.jpg 
compare -metric PSNR reference.jpg crop.jpg crop.jpg 

(我切了一塊的圖像,然後比較一塊「reference.jpg」)

如何調用從腳本,並做一個基於什麼轉換回報(這是一個數字)?

回答

4
import subprocess 

retcode = subprocess.call(['convert', 'file.jpg', '-crop', 
          '80x10+90+980', '+repage', 'crop.jpg']) 
if retcode != 0: 
    print 'error on convert' 
else: 
    retcode = subprocess.call(['compare', '-metric', 'PSNR', 
           'reference.jpg', 'crop.jpg', 'crop.jpg']) 
    print retcode