Note

OpenCV (15) - Contour 사각형 외곽 찾기 본문

Deep Learning/Computer Vision

OpenCV (15) - Contour 사각형 외곽 찾기

알 수 없는 사용자 2022. 6. 9. 20:58
728x90

Contour의 사각형 외곽 찾기

cv2.boundingRect(contour) 

사각형의 X,Y 좌표와 너비, 높이를 반환.

import cv2
import matplotlib.pyplot as plt

image = cv2.imread('digit_image.png')
image_gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
ret, thresh = cv2.threshold(image_gray, 230, 255, 0) # 픽셀 값이 230 보다 큰 경우 255, 원본은 배경이 하얀색
thresh = cv2.bitwise_not(thresh) # 검정과 하얀색 반전

plt.imshow(cv2.cvtColor(thresh,cv2.COLOR_GRAY2RGB))
plt.show()

contours = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)[0]
image = cv2.drawContours(image, contours, -1, (0,255,0), 4)

plt.imshow(cv2.cvtColor(image,cv2.COLOR_BGR2RGB))
plt.show()

contour = contours[0]
x, y, w, h = cv2.boundingRect(contour)
image = cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 3)

plt.imshow(cv2.cvtColor(image,cv2.COLOR_BGR2RGB))
plt.show()

'Deep Learning > Computer Vision' 카테고리의 다른 글

OpenCV (17) - Contour 유사 다각형 구하기  (0) 2022.06.11
OpenCV (16) - convexHull  (0) 2022.06.10
OpenCV (14) - Contour  (0) 2022.06.08
OpenCV (13) - 텍스트 그리기  (0) 2022.06.07
OpenCV (12) - 다각형 그리기  (0) 2022.06.06
Comments