PythonとOpenCVを使用して画像にパディングを追加する方法について説明します。パディングは、画像の周囲に特定のピクセル数の余白を追加する処理です。これは、画像処理や機械学習のタスクで頻繁に使用されます。
OpenCVには、このタスクを簡単に行うための関数 cv2.copyMakeBorder()
があります。
import cv2
# 画像を読み込む
img = cv2.imread('./sample.jpg')
# パディングを追加するピクセル数を設定
top = bottom = left = right = 50
# パディングの色を設定(ここでは黒)
color = (0, 0, 0)
# パディングを追加
img_pad = cv2.copyMakeBorder(img, top, bottom, left, right, cv2.BORDER_CONSTANT, value=color)
# パディングを追加した画像を保存
cv2.imwrite('./sample_padded.jpg', img_pad)
このコードは、指定したピクセル数の黒いパディングを画像の周囲に追加します。cv2.copyMakeBorder()
関数の引数は次のとおりです。
src
: 入力画像top
,bottom
,left
,right
: 画像の上下左右に追加するピクセル数borderType
: 追加する境界の種類を指定するフラグ。パディングを追加する場合はcv2.BORDER_CONSTANT
を選択します。value
: パディング部分の色を指定します。例えば(0,0,0)
は黒、(255,255,255)
は白になります。
以上がPythonとOpenCVを使用した画像パディングの基本的な方法です。この知識を活用して、さまざまな画像処理タスクに取り組んでみてください。