[python] OpenCV를 사용하여 이미지에서 동영상에서 색상 검출하기
이번 블로그 포스트에서는 Python에서 OpenCV를 사용하여 이미지에서 동영상에서 색상을 검출하는 방법을 알아보겠습니다.
필요한 패키지 설치
먼저, OpenCV를 사용할 수 있도록 다음 명령어를 사용하여 필요한 패키지를 설치해야 합니다.
pip install opencv-python
pip install opencv-contrib-python
코드 작성
다음은 OpenCV를 사용하여 색상을 검출하는 간단한 예제 코드입니다.
import cv2
import numpy as np
# 동영상 파일 열기
cap = cv2.VideoCapture('video.mp4')
# 색상 범위를 정의합니다. 여기서는 파란색을 검출하도록 하겠습니다.
lower_blue = np.array([100, 50, 50])
upper_blue = np.array([130, 255, 255])
# 반복해서 프레임을 읽어오고 색상을 검출합니다.
while(cap.isOpened()):
ret, frame = cap.read()
# 프레임 크기를 축소합니다.
frame = cv2.resize(frame, None, fx=0.5, fy=0.5)
# BGR을 HSV로 변환합니다.
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
# 색상을 검출합니다.
mask = cv2.inRange(hsv, lower_blue, upper_blue)
# 검출된 색상을 원본 이미지에 표시합니다.
result = cv2.bitwise_and(frame, frame, mask=mask)
# 결과를 출력합니다.
cv2.imshow('Color Detection', result)
# 'q' 키를 눌렀을 때 종료합니다.
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 작업을 마치고 창을 닫습니다.
cap.release()
cv2.destroyAllWindows()
실행
위 코드를 실행하면 동영상에서 파란색을 검출할 수 있습니다. 파란색으로 검출된 부분은 원본 이미지에서 보여지고, 다른 부분은 검은색으로 처리됩니다.
결론
OpenCV를 사용하여 이미지에서 동영상에서 색상을 검출하는 방법을 알아보았습니다. 이를 통해 다양한 색상을 검출하는 애플리케이션을 개발할 수 있습니다.