[Python] OpenCV로 영상 재생부터 저장까지! 실전 예제로 마스터하기

발라·2025년 6월 19일

AI 이해의 첫걸음

목록 보기
16/21
post-thumbnail

Python의 OpenCV를 활용해 영상 파일 재생, 카메라 출력, 사진 저장, 영상 녹화, 이미지 → 영상 변환까지 실습 중심으로 정리해봤어!


1. 동영상 파일 재생하기

import cv2

cap = cv2.VideoCapture('./data/dogs.mp4')

while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break
    cv2.imshow('video', frame)
    if cv2.waitKey(33) == 49:  # 숫자 1 입력
        break

cap.release()
cv2.destroyAllWindows()

2. 웹캠 영상 출력

cap = cv2.VideoCapture(0)
  • 0: 기본 카메라
  • 외장 카메라는 1, 2, …
  • IP 카메라는 'rtsp://ip:port/경로'

3. 사진 저장 (스샷 찍기)

if key == ord('w'):
    cv2.imwrite(f'./data/img{cnt}.png', frame)
  • 'w' 누르면 현재 프레임을 이미지로 저장

4. 저장한 이미지 확인 (matplotlib 사용)

from matplotlib import pyplot as plt
img = cv2.imread('./data/img1.png')
img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.imshow(img_rgb)
plt.show()

5. 영상 녹화

codec = cv2.VideoWriter_fourcc(*'MP4V')
out = cv2.VideoWriter('./data/myface.mp4', codec, 30.0, (w, h))

if record:
    out.write(frame)
  • 'w'로 녹화 시작, 'q'로 종료

6. 여러 이미지 → 영상 만들기

for i in range(1, 68):
    img = cv2.imread(f'./data/img{i}.png')
    out.write(img)
  • 이미지 파일들을 순서대로 불러와 영상으로 저장

7. 흑백 영상 만들기

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray_bgr = cv2.cvtColor(gray, cv2.COLOR_GRAY2BGR)
  • 흑백을 GRAY2BGR로 변환해야 영상으로 저장 가능

8. 실시간 흑백 카메라 출력

gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('gray video', gray)

마무리

OpenCV를 활용하면 영상 관련 기초 기능을 이렇게 손쉽게 구현할 수 있어!
실전 프로젝트 할 때도 바로 써먹을 수 있으니, 꼭 한 번 따라 해보는 걸 추천해요.


작성일: 2025.06.19'
작성자: 발라

profile
능숙한 바이브코딩을 할 수 있게 됨을 꿈꾸며

0개의 댓글