1

たくさんの画像(ゲームのスクリーンショット)を並べ替えるためのPythonスクリプトを作成しています。

imagemagickでそれを行う方法を見つけました。画像の特定の正方形が参照クロップと同じである場合、その画像はカテゴリ1になります。そうでない場合は、別の作物と別のカテゴリをチェックし、それがどちらにも当てはまらない場合は、画像をカテゴリ3に入れます。

私はImagemagickでそれを行う方法を見つけました:

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

(画像の一部を切り取り、その部分を「reference.jpg」と比較します)

スクリプトからそれを呼び出し、変換が返すもの(数値)に基づいてifを実行するにはどうすればよいですか?

4

1 に答える 1

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
于 2010-01-29T17:15:09.517 に答える