사용하지않는공간/openCV

[openCV] 컨투어 contours

반나무 2021. 5. 5. 22:13

컨투어

 

특정 영역의 경계를 따라 같은 픽셀 강도를 갖는 지점을 연결하는 선

 

cv2.findCountours(image, mode, method)

- image : 경계를 만들 이미지

- mode : 

- method : cv2.CHAIN_APPROX_SIMPLE(점), cv2.CHAIN_APPROX_NONE(선)

import cv2

# 컬러 이미지를 불러온다.
img_color = cv2.imread('./contour/dog2.jpg')

# 불러온 컬러 이미지를 흑백화한다.
img_gray = cv2.cvtColor(img_color, cv2.COLOR_BGR2GRAY)

# 흑백 이미지를 이진화한다.
ret, img_binary = cv2.threshold(img_gray, 127,255,0)

# 흰색과 검은색으로 이미지로 변환
contours, hierarchy = cv2.findContours(img_binary, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)

# 컨투어를 그리는 코드
# 0번째 인덱스에 초록색으로 선을 그렸고, 1번째 인덱스에 파란색으로 선을 그렸다
cv2.drawContours(img_color, contours, -1, (0, 255, 0), 3)
cv2.drawContours(img_color, contours, 1, (255, 0, 0), 3)

cv2.imshow("result", img_color)
cv2.waitKey(0)

 

반응형