[python] 동영상 파일에서 특정 영역의 색상 변경하기

동영상 처리를 위한 Python 라이브러리 OpenCV를 사용하여 동영상 파일에서 특정 영역의 색상을 변경하는 방법을 알아봅시다.

동영상 읽기

먼저, OpenCV를 사용하여 동영상 파일을 읽어와야 합니다. 다음은 동영상을 읽어오는 코드입니다.

import cv2

video_capture = cv2.VideoCapture('input_video.mp4')

while True:
    ret, frame = video_capture.read()
    if not ret:
        break

    # 동영상 프레임에 대한 작업 수행

video_capture.release()

색상 변경

특정 영역의 색상을 변경하려면 OpenCV의 색상 변환 함수를 사용해야 합니다. 아래는 색상 변경을 위한 예시 코드입니다.

import cv2
import numpy as np

video_capture = cv2.VideoCapture('input_video.mp4')

while True:
    ret, frame = video_capture.read()
    if not ret:
        break

    # 특정 색상 포인트 선택
    target_color = [0, 0, 255]  # 파란색을 빨간색으로 변경

    # 특정 색상 영역 선택
    lower_bound = np.array([0, 0, 0], dtype=np.uint8)
    upper_bound = np.array([50, 50, 255], dtype=np.uint8

    mask = cv2.inRange(frame, lower_bound, upper_bound)

    # 색상 변경
    frame[mask > 0] = target_color

    # 변경된 프레임 출력
    cv2.imshow('Color Changed Video', frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

video_capture.release()
cv2.destroyAllWindows()

위 코드에서는 파란색을 빨간색으로 변경하는 예시를 보여주고 있습니다.

이제 동영상 파일에서 특정 영역의 색상을 변경하는 방법을 알게 되었습니다. 이를 응용하여 자신만의 프로젝트를 만들어보세요.

참고 자료