728x90
Video Read
import cv2
import numpy as np
#FPS = Frame Per Second : 초당 사진 구성
cap = cv2.VideoCapture('data/videos/chaplin.mp4')
if cap.isOpened() == False:
print('Error opening video stream or file')
else:
#반복문이 필요한 이유? 비디오는 여러 사진으로 구성되어있음.
while cap.isOpened():
#사진을 1장씩 가져와서
ret, frame = cap.read()
#제대로 가져왔으면 화면 표시.
if ret == True:
cv2.imshow("Frame", frame)
#키보드에서 esc를 누르면 exit하라
if cv2.waitKey(25) & 0xFF ==27:
break
else:
break
cap.release()
cv2.destroyAllWindow()
Video Write
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
if cap.isOpened() == False:
print('unable to read camera feed')
else :
#프레임의 정보 가져오기:화면 크기(width, height)
frame_width = int(cap.get(3))
frame_height = int(cap.get(4))
cv2.VideoWriter('data/videos/output.avi',
cv2.VideoWriter_fourcc('M','J','P','G'),
10,
(frame_width,frame_height))
#캠으로부터 계속 입력받음
while True:
ret, frame = cap.read()
if ret ==True:
out.write(frame)
cv2.imshow('frame', frame)
if cv2.waitKey(1) & 0xFF ==27:
break
else:
break
cap.release()
out.release()
cv2.destroyALLWindow()
728x90
'OpenCV' 카테고리의 다른 글
dilate 이미지 확장 (0) | 2021.04.20 |
---|---|
Threshold 흐린걸 진하게 (0) | 2021.04.20 |
OpenCV 이미지에 도형 그리기 (0) | 2021.04.15 |
OpenCV 데이터 타입 변환입 변환 (0) | 2021.04.15 |
OpenCV 이미지 crop 하기 (1) | 2021.04.15 |