[python] OpenCV로 동영상 파일 읽기

이번 포스트에서는 Python의 OpenCV 라이브러리를 사용하여 동영상 파일을 읽어오는 방법에 대해 알아보겠습니다.

필요한 라이브러리 설치

먼저 OpenCV 라이브러리를 설치해야 합니다. 다음 명령어를 사용하여 설치할 수 있습니다.

pip install opencv-python

동영상 파일 읽어오기

동영상 파일을 읽어오기 위해서는 cv2.VideoCapture 클래스를 사용해야 합니다. 다음 코드는 “video.mp4”라는 파일을 읽어오는 예제입니다.

import cv2

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

# 동영상이 정상적으로 열렸는지 확인
if not cap.isOpened():
    print("동영상 파일을 열 수 없습니다.")
    exit()

# 동영상의 프레임 수, 너비, 높이 가져오기
fps = cap.get(cv2.CAP_PROP_FPS)
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))

print("프레임 수:", fps)
print("너비:", width)
print("높이:", height)

# 동영상 재생
while True:
    ret, frame = cap.read()

    if not ret:
        print("동영상 파일을 읽을 수 없습니다.")
        break

    cv2.imshow('Video', frame)

    # 'q' 키를 누르면 동영상 종료
    if cv2.waitKey(1) == ord('q'):
        break

# 동영상 파일과 윈도우 창 닫기
cap.release()
cv2.destroyAllWindows()

위 코드에서는 cv2.VideoCapture 클래스로 동영상 파일을 열고, cap.isOpened() 메서드로 정상적으로 열렸는지 확인합니다. 그리고 cv2.CAP_PROP_FPS, cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT를 사용하여 동영상의 프레임 수, 너비, 높이를 가져옵니다. 그 후 while 루프를 통해 동영상을 프레임 단위로 읽어와 화면에 표시하고, ‘q’ 키를 누르면 동영상 재생을 종료합니다.

결론

이번 포스트에서는 OpenCV를 사용하여 동영상 파일을 읽어오는 방법에 대해 알아보았습니다. OpenCV는 동영상 처리에 매우 편리한 기능을 제공하므로, 다양한 비디오 관련 프로젝트에 유용하게 활용될 수 있습니다.