Help us understand the problem. What is going on with this article?

python pillowで画像のトリミング自動化

More than 1 year has passed since last update.

TL;DR

画像から右端の凡例をそぎ落とす

できあがりサイズ調査

この辺が要らないからここまで削りたい、を今回はPhotoshopのカーソル位置表示で座標確認した。

https://www.ipentec.com/document/photoshop-show-cursor-pixel-position-on-image

必要ライブラリ

pillow

※Anacondaに入っている

実装

crop.py
import glob
from PIL import Image, ImageFilter

# 対象フォルダ配下の、対象拡張子ファイル一覧のリストを返す
def ls_suffix(search_dir, suffix):
  file_name_list = glob.glob(search_dir + "*." + suffix)
  return file_name_list

# 幅をafter_widthに変更して上書き保存。高さそのまま。
# 基準点を左上原点にしているため、右端を削ぐ
def crop_right(picture_path, after_width):
  im = Image.open(picture_path)
  before_width,before_height = im.size

  im = im.crop((0,0,after_width,before_height))
  im.save(picture_path, quality=95)


if __name__ == "__main__":
  file_name_list = ls_suffix("./", "png")

  for file_path in file_name_list:
    crop_right(file_path, 600)

Before, After

※Webページだと適宜拡大されたりしてて、印象ちょっと違うかもですが、今回削ったのは凡例だけ。

before

doshamesh_201803220810.png

after

doshamesh_201803220810.png

参考文献

http://www.yukun.info/blog/2008/08/python-directory-listdir-glob.html
https://note.nkmk.me/python-pillow-image-crop-trimming/

it__ssei
自動テストと定時退社が好き。専門は物理学(大気力学、力学系)
https://twitter.com/it__ssei
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away