파이썬과 OpenCV를 사용하여 이미지에서 경계선 검출하기

이미지 처리를 위한 파이썬과 OpenCV를 사용하면 이미지에서 다양한 작업을 수행할 수 있습니다. 이번에는 이미지에서 경계선을 검출하는 방법에 대해 알아보겠습니다.

필요한 라이브러리 설치

먼저 OpenCV를 설치해야 합니다. 아래 명령을 사용하여 OpenCV를 설치하세요.

pip install opencv-python

이미지 불러오기

경계선을 검출할 이미지를 불러옵니다. 아래 코드를 사용하여 이미지를 불러올 수 있습니다.

import cv2

# 이미지 불러오기
image = cv2.imread('image.jpg')

이미지 전처리

경계선을 검출하기 전에 이미지를 전처리해야 합니다. 일반적으로 이미지를 그레이스케일로 변환하고 노이즈를 제거하는 등의 작업을 수행합니다.

# 이미지를 그레이스케일로 변환
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# 가우시안 블러를 사용하여 노이즈 제거
blurred = cv2.GaussianBlur(gray, (5, 5), 0)

경계선 검출

이미지 전처리가 완료되면, 검출한 경계선을 표시할 수 있습니다. OpenCV의 Canny 함수를 사용하여 경계선을 검출할 수 있습니다.

# 경계선 검출
edges = cv2.Canny(blurred, threshold1, threshold2)

threshold1threshold2는 경계선을 검출하기 위한 임계값으로 적절한 값을 설정해야 합니다.

결과 확인

최종적으로 경계선이 검출된 이미지를 확인할 수 있습니다. 아래 코드를 사용하여 경계선이 표시된 이미지를 확인할 수 있습니다.

# 결과 확인
cv2.imshow('Edges', edges)
cv2.waitKey(0)
cv2.destroyAllWindows()

위의 코드를 실행하면 경계선이 표시된 이미지가 나타납니다.

이제 이미지에서 경계선을 검출할 수 있는 간단한 방법을 알게 되었습니다. OpenCV를 활용하면 이미지 처리와 컴퓨터 비전 작업을 쉽게 수행할 수 있습니다.

References