[python] OpenCV를 사용하여 이미지에서 동영상 추적하기

이번 포스트에서는 Python과 OpenCV를 사용하여 이미지에서 동영상을 추적하는 방법에 대해 알아보겠습니다. 동영상 추적은 영상 처리 및 컴퓨터 비전 분야에서 중요한 주제 중 하나로, 객체를 찾거나 이동하는 데 사용됩니다.

1. OpenCV 설치하기

먼저, OpenCV를 설치해야 합니다. 아래 명령어를 사용하여 pip를 통해 OpenCV를 설치할 수 있습니다.

pip install opencv-python

2. 이미지 및 동영상 파일 준비하기

이미지 추적을 위해 먼저 추적할 대상이 있는 이미지 파일을 준비해야 합니다. 적절한 이미지를 선택하고 파일을 준비하세요.

3. 코드 작성하기

이제 코드를 작성해보겠습니다. 아래는 이미지에서 동영상을 추적하는 코드의 예입니다.

import cv2

# 이미지 파일 경로 지정
image_path = 'path_to_image_file.jpg'

# 이미지 파일 불러오기
image = cv2.imread(image_path)

# 동영상 추적을 위한 변수 초기화
tracking = cv2.TrackerKCF_create()

# 추적할 대상 영역 선택
bbox = cv2.selectROI(image, False)

# 추적 시작
tracking.init(image, bbox)

# 동영상 추적 반복
while True:
    # 현재 프레임 읽기
    success, frame = video.read()
    
    # 추적 대상 위치 업데이트
    success, bbox = tracking.update(frame)
    
    # 추적된 대상 표시
    if success:
        # 추적 결과를 사각형으로 표시
        x, y, w, h = [int(v) for v in bbox]
        cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
        
    # 화면에 출력
    cv2.imshow("Tracking", frame)
    
    # 'q' 키를 누르면 종료
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
        
# 종료 후 리소스 해제
video.release()
cv2.destroyAllWindows()

위의 코드는 cv2.TrackerKCF_create() 함수를 사용하여 KCF(Kernelized Correlation Filters) 추적기를 초기화합니다. 추적할 대상 영역을 선택한 후 tracking.init() 함수로 추적을 시작합니다. 추적이 성공하면 추적된 대상을 사각형으로 표시하고, ‘q’ 키를 누르면 종료됩니다.

4. 실행하기

코드를 작성한 후 실행해보세요. 이미지 파일을 불러와서 동영상 추적을 할 수 있습니다. 추적 결과는 화면에 실시간으로 표시됩니다.

마무리

이번 포스트에서는 OpenCV를 사용하여 이미지에서 동영상 추적하는 방법에 대해 알아보았습니다. 동영상 추적은 객체를 찾거나 이동하는 데 사용되며, 컴퓨터 비전 분야에서 중요한 주제 중 하나입니다. OpenCV를 사용하면 간단한 코드로 이미지에서 동영상을 추적할 수 있습니다.

더 자세한 내용은 OpenCV 공식 문서1를 참조하시기 바랍니다.

  1. https://docs.opencv.org/opencv-python/