Python を使って画像処理を行おうと思ってぐぐったら
がひっかかったのでこれを使ってみた。
インストールはDownload欄にあるexe(Linux や Mac の場合はソースコード一式かな?)をダウンロードし、実行するだけ。
Pythonのバージョン毎に実行ファイルがわかれているので多少注意が必要。
とりあえず自分にとって今必要だったところをメモ
>>> import Image
>>> im = Image('test.png')
>>> print im.filename
test.png
>>> print im.size
(1280, 800)
>>> # サムネイル作成
>>> im.thumbnail((128,128))
>>> im.save('test_t.png','PNG')
>>> # トリミング
>>> imcrop = im.crop((100,100,400,300))
>>> imcrop.save('test2.png', 'PNG')
>>> # 回転
>>> imrotate = im.rotate(90)
>>> imrotate.save('test4.png', 'PNG')
>>> # スクリーンショットを撮る
>>> import ImageGrab
>>> img=ImageGrab.grab()
>>> img.save('test_ss.png')
もちろんこの他にもモジュール、メソッドは沢山ある。これは便利。
-- 2010/11/11 追記
ちょっと今実行したやつがあるのでサンプルとして追記
30秒毎にランダムに画像が変わるアプリケーションがあったので、定期的にスクリーンショットを撮り(これは別のソフトウェアを使用した)トリミングした上で保存した。ちょっとファイル名決める部分が汚いけど。
import os
import Image
file_list = os.listdir('./')
for i in file_list:
if i.split('.')[-1] != 'png':
continue
new_fname = ''.join(''.join(i.split('-')).split('_'))
im = Image.open(i)
im.crop((508,142,1003,637)).save(new_fname, 'PNG')
cropに渡すタプルは4項目すべて座標な様で、最初後ろ2つは大きさだと思ってたので少しはまった。。
コメント
[…] This post was mentioned on Twitter by R.Akazawa, Ryo Matsufuji. Ryo Matsufuji said: Python Imaging Library を使ってみた。 http://ff.im/-tu6qJ […]