Pythonの「Pillow」モジュールを使って画像を編集する

スポンサーリンク

Pythonの「Pillow」モジュール」ってなに?

Pythonの「Pillow」モジュール」ってなに?を使用すると、画像の編集ができるようになります。

Pillowモジュールを使用してわざわざ画像編集するかはわからないけど、とりあえずpythonで画像編集ができるみたいなので簡単なものを紹介したいと思います。

使用するモジュールやメソッド

モジュールPillow
メソッド
  • ImageGolor.getcolor() → カラーを取得する
  • img.save(‘.png’) → 画像ほ保存する
スポンサーリンク

PythonのPillowを使って画像編集するコード

#カラーを取得する
from PIL import ImageColor, Image
print(ImageColor.getcolor('red', 'RGBA'))

#画像オブジェクトの取得
img = Image.open('a.png')
#画像の情報を表示
print(img.size)#画像のサイズ
width, height = img.size
print(width)#画像の横幅
print(height)#画像の縦幅
print(img.filename)#画像のファイル名
print(img.format)#画像ファイルの形式
print(img.format_description)#画像ファイルの情報

#画像の生成
im = Image.new('RGBA',(100,200), 'purple')

#画像の切り抜き
cutim = img.crop((100,50,200,200))#前2つが始点、後ろ2つが終点
#cutim.save('aa.png')

#画像のコピーペースト
copyimg = img.copy()
copyimg.paste(cutim,(0,0))
copyimg.save('aaa.png')

プログラムコードの解説

  • 15行目で画像ファイルを開いてImageオブジェクトを生成しています。
  • 26行目は新たに画像ファイルを生成しています。紫色の横幅100縦200の画像を生成します。
  • 29行目はImageオブジェクトを切り抜いています。
  • 33行目はImageオブジェクトをコピーしています。
  • 34行名はコピーしたImageオブジェクトに切り抜いたもの(cutim)を貼り付けています。
  • 35行目は画像を保存しています。

Pillowのcopy()メソッドはいつ使う?

実は、crop()メソッドを使って画像を切り抜いても、それはImageオブジェクトから切り抜いているだけで、元ファイルには影響がでないです。(元のファイル名でsaveしなければ)

そのためcopy()メソッドの使いみちがわかりませんでした。

画像をsave()で保存するときは元のファイル名と違う名前で保存しておけば、元のファイルが影響を受けることはありません。またPillowモジュールを仕事で使うことは考えにくいですね。趣味の領域になってくると思います。

コメント

タイトルとURLをコピーしました