Python OpenCVで画像の右下部分をトリミングする方法


はじめに

初投稿です。
メモ用に残します。

 対象者

  • Python初心者
  • 写真をトリミングしたいけど、やり方がわからない人
  • 複数写真を一気にトリミングしたい方

やったこと

複数写真の右下部分だけ切り出しを行い保存するソースの実装。
言葉だけ書いてもわかりづらいので、早速トリミングした写真です。

トリミング前

トリミング後

ソースコード

trim_photo.py
#インポート
import os, glob
import cv2

#トリミング対象の写真フォルダ
importPath = r"C:\Users\User\Desktop\photo"
#トリミング後のファイル格納場所
outputPath = r"C:\Users\User\Desktop\output"
#保存用ファイル名
fileName = "trim_photo"

#ループで対象フォルダ内の写真をトリミング
i = 1
for infile in glob.glob( os.path.join(importPath, '*.png') ): #png形式のみ指定
    # ファイル名の生成
    imgname= fileName + str(i)
    #ファイル読み込み
    img = cv2.imread(infile)
    #トリミングエリアを指定し、切り出す
    img = img[0 : 200, 0 : 300]
    cv2.imwrite(outputPath + imgname + '.png', img)
    i = i +1

トリミングエリア指定部分

下記箇所にてトリミングエリアを指定している。

    #トリミングエリアを指定し、切り出す
    img = img[0 : 200, 0 : 300]

上記の場合下から200ピクセル、右から300ピクセル切り出すよう指定している。

最後に

Pyhtonって楽に実装できて素敵ですね。