のんびりサイト

Pillow 画像処理

画像の詳細を取得&表示
from PIL import Image
im = Image.open("sample.jpg")

# 画像ファイル情報を取得
print(im.filename)  # ファイル名
print(im.size)  # サイズ
print(im.width)  # 幅
print(im.height)  # 高さ
print(im.mode)  # モード
print(im.format)  # フォーマット

画像をリサイズ

from PIL import Image
im = Image.open("sample.jpg")

width = 100
ratio = width / im.width  # 縮小比率
height = int(im.height * ratio)

im_resized = im.resize((width, height))
im_resized.save('sample2.jpg')

# 画像表示
im.show()

複数の画像を一気にリサイズ

from PIL import Image
import os
import glob

for file_name in glob.glob('*.jpg'):
    im = Image.open(file_name)
    width = 100
    f = im.filename
    height = int(im.height * width / im.width)
    im_resized = im.resize((width, height), Image.LANCZOS) #Image.LANCZOS 画像の品質
    saved_path = os.path.join('resized', f)
    im_resized.save(saved_path)

関連ページ