2020年5月26日火曜日

【OpenCV】画像の連結

 画像処理ライブラリOpenCVで画像を縦に連結するvconcat、画像を横に連結するhconcatについて説明する。


OpenCVを使うには次のようにインポートが必要。
import cv2


1. 画像を縦に連結するvconcat

 vconcatで引数に画像を指定すると画像が縦に連結される。
その際、画像の横幅が等しくないとエラーとなるので注意が必要。

次の2つの画像を縦に貼り合わせる例

pink.png (横400x縦100)



skyblue.png (横400x縦200)



import cv2

img1 = cv2.imread('pink.png')
img2 = cv2.imread('skyblue.png')

img = cv2.vconcat([img1, img2])

cv2.imwrite('vconcat.png', img) 

実行結果




2. 画像を横に連結するhconcat

 hconcatで引数に画像を指定すると画像が横に連結される。
その際、画像の高さが等しくないとエラーとなるので注意が必要。

次の2つの画像を縦に貼り合わせる例

blue.png (横100x縦120)



green.png (横200x縦120)



import cv2

img1 = cv2.imread('blue.png')
img2 = cv2.imread('green.png')

img = cv2.hconcat([img1, img2])

cv2.imwrite('hconcat.png', img) 

実行結果




3. リファレンス

OpenCV > Operations on arrays > vconcat()
OpenCV > Operations on arrays > hconcat()

使用したバージョン:Python 3.7.0 / OpenCV 4.0.0

0 件のコメント:

コメントを投稿