画像を左右反転して貼る
pythonの画像処理ライブラリPillowを使って画像を左右反転し元画像と合算し一枚の画像にします。
環境
- windows10 home
- Anaconda 3/ jupyter notebook 5.6.0
- Python 3.7.0
- Pillow 5.2.0
準備
画像ファイルはフリー写真素材ぱくたそからダウンロードさせていただき、jupyter notebookファイル(***.ipynb)と同じディレクトリにファイル名'light.jpg'で保存しました(使用した画像サイズは300x200)。
コード
元画像を左右反転した画像を作り、貼り付け用に生成した白画像に元画像と左右反転画像を並べて貼ります。
from PIL import Image # 画像読み出し im = Image.open('light.jpg') # 画像を左右反転 im_inv = im.transpose(Image.FLIP_LEFT_RIGHT) # 貼り付け用画像生成(元画像の幅2倍) im_new = Image.new(mode='RGB', size=(im.width*2, im.height), color=(255, 255, 255)) im_new.paste(im, (0,0)) im_new.paste(im_inv, (im.width,0)) #画像保存 im_new.save('light_new.jpg', quality=95)
実行結果
以下のサイトを参考にさせていただきました
Pythonの文法メモ > 【Pillow】画像の回転、反転