파이썬으로 OpenCV를 이용하여 동영상에서 색상 추적하기

이번 글에서는 파이썬과 OpenCV를 사용하여 동영상에서 특정 색상을 추적하는 방법을 알아보겠습니다.

1. OpenCV 설치

먼저, OpenCV를 사용하기 위해 파이썬 환경에 OpenCV를 설치해야 합니다. 아래 명령어를 사용하여 OpenCV를 설치합니다.

pip install opencv-python

2. 동영상에서 색상 추적하기

우리가 추적하고자 하는 색상을 가진 객체가 있는 동영상 파일을 준비합니다. 예를 들어, video.mp4라는 동영상 파일을 사용하겠습니다. 다음은 파이썬 코드를 통해 동영상에서 색상을 추적하는 예제입니다.

import cv2
import numpy as np

# 동영상 파일 열기
cap = cv2.VideoCapture('video.mp4')

# 추적할 색상 범위
lower_color = np.array([0, 100, 100])
upper_color = np.array([30, 255, 255])

while True:
    # 프레임 읽기
    ret, frame = cap.read()
    
    if not ret:
        break
    
    # BGR을 HSV로 변환
    hsv_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
    
    # 색상 추출
    mask = cv2.inRange(hsv_frame, lower_color, upper_color)
    
    # 추출한 색상 표시
    result = cv2.bitwise_and(frame, frame, mask=mask)
    
    # 결과 출력
    cv2.imshow('Result', result)
    
    # ESC 키로 종료
    if cv2.waitKey(1) == 27:
        break

# 종료
cap.release()
cv2.destroyAllWindows()

위 코드를 실행하면, 동영상에서 추적하고자 하는 색상의 객체를 감지하고 해당 색상만 표시한 결과를 볼 수 있습니다.

3. 추가적인 기능 구현하기

이 예제 코드를 확장하여 다양한 기능을 추가할 수 있습니다. 예를 들어, 객체의 움직임을 추적하거나 추적한 색상의 좌표를 저장하는 등의 기능을 구현할 수 있습니다. 이러한 추가 기능을 구현하기 위해서는 OpenCV의 다른 함수와 메서드를 활용하면 됩니다.

마무리

이번 글에서는 파이썬과 OpenCV를 이용하여 동영상에서 특정 색상을 추적하는 방법을 알아보았습니다. OpenCV를 이용하면 보다 간편하게 이미지 및 동영상 처리를 할 수 있습니다. 추가적인 기능을 구현하여 더욱 다양한 응용을 개발해보세요!


References: