두개의 이미지를 옆에 또는 아래쪽에 붙이는 기능 입니다. 단순한 기능이라 자세한 설명은 필요가 없을 것 같고 주의 사항으로는 가로로 붙이는 경우 높이가 같아야 하고 세로로 붙이는 경우는 폭이 같아야 합니다.
1. concat
- 세로 붙이기
cv2.vconcat([img1, img2]) 함수를 이용하면 두개의 이미지를 세로로 붙여 리턴 합니다.
- 가로 붙이기
cv2.hconcat([img1, img2]) 함수를 이용하면 두개의 이미지를 가로로 붙여 리턴 합니다.
#-*-coding:utf-8-*- import cv2 import numpy as np from matplotlib import pyplot as plt
imgFile1 = 'F:/Python/images/heart01.png' imgFile2 = 'F:/Python/images/heart02.png'
# 이미지 읽기 img1 = cv2.imread(imgFile1, 1); img2 = cv2.imread(imgFile2, 1);
# 사이즈 조절 img1 = cv2.resize(img1,(230,260)) img2 = cv2.resize(img2,(230,260))
# 이미지 붙이기 addv = cv2.vconcat([img1, img2]) addh = cv2.hconcat([img1, img2])
cv2.imshow('imgv',addv) cv2.imshow('imgh',addh)
cv2.waitKey(0) cv2.destroyAllWindows() |
- cv2.vconcat([img1, img2]) 결과
- cv2.hconcat([img1, img2]) 결과
2. stack
- 세로 붙이기
cv2. vstack ([img1, img2]) 함수를 이용하면 두개의 이미지를 세로로 붙여 리턴 합니다.
- 가로 붙이기
cv2. hstack ([img1, img2]) 함수를 이용하면 두개의 이미지를 가로로 붙여 리턴 합니다.
#-*-coding:utf-8-*- import cv2 import numpy as np from matplotlib import pyplot as plt
imgFile1 = 'F:/Python/images/heart01.png' imgFile2 = 'F:/Python/images/heart02.png'
# 이미지 읽기 img1 = cv2.imread(imgFile1, 1); img2 = cv2.imread(imgFile2, 1);
# 이미지 사이즈 조절 img1 = cv2.resize(img1,(230,260)) img2 = cv2.resize(img2,(230,260))
# 이미지 붙이기 addv = np.vstack((img1, img2)) addh = np.hstack((img1, img2))
cv2.imshow('imgv',addv) cv2.imshow('imgh',addh)
cv2.waitKey(0) cv2.destroyAllWindows() |
- np.vstack((img1, img2)) 결과
- np.hstack((img1, img2)) 결과
'Tensorflow > OpenCV' 카테고리의 다른 글
OpenCV threshold 설명 (0) | 2020.11.23 |
---|---|
OpenCV 6. 히스토그램 (Python) (1) | 2020.10.03 |
OpenCV 5. 임계처리 (이진화) (Python) (0) | 2019.04.07 |
OpenCV 4. 이미지 비트 연산 (Python) (0) | 2019.04.06 |
OpenCV 4. 이미지 연산 (Python) (0) | 2019.04.05 |