Pythonで画像を縦1000px、横1000pxでトリミングする方法

Pythonで画像を縦1000px、横1000pxでトリミングする方法について説明します。画像のトリミングには主にPIL(Pillow)ライブラリを使用します。PillowはPythonで画像処理を行うための強力なライブラリであり、多くの画像操作機能を提供しています。

まずは、Pillowライブラリがインストールされていることを確認し、インストールされていない場合は以下のコマンドでインストールします。

bash
pip install pillow

次に、Pythonコードを使って画像の縦横を1000pxにトリミングする方法を示します。

python
from PIL import Image

def crop_to_square(image_path):
    # 画像を開く
    img = Image.open(image_path)

    # 画像のサイズを取得
    width, height = img.size

    # 縦と横で短い方の長さを取得
    min_dimension = min(width, height)

    # 画像を正方形にトリミングする範囲を計算
    left = (width - min_dimension) // 2
    top = (height - min_dimension) // 2
    right = (width + min_dimension) // 2
    bottom = (height + min_dimension) // 2

    # 画像をトリミング
    cropped_img = img.crop((left, top, right, bottom))

    # トリミング後の画像を保存(任意)
    cropped_img.save("cropped_image.jpg")

    # トリミング後の画像を表示(任意)
    cropped_img.show()

# 画像ファイルのパスを指定してトリミングを実行
image_path = "path_to_your_image.jpg"
crop_to_square(image_path)

このコードでは、以下の手順で画像をトリミングしています。

  1. Image.open() 関数で画像を開きます。
  2. img.size で画像の幅と高さを取得します。
  3. min() 関数を使用して、縦と横の短い方の長さを min_dimension として取得します。
  4. crop() メソッドを使用して、画像を正方形にトリミングします。トリミングする範囲は (left, top, right, bottom) で指定され、ここでは中心に合わせて正方形にトリミングしています。
  5. cropped_img.save() でトリミング後の画像を任意のファイル名で保存します。
  6. cropped_img.show() でトリミング後の画像を表示します(任意)。

このコードを適切に変更して、自分の環境や必要に応じて使ってください。

未分類

Posted by ぼっち