카메라 동영상처리 2
- cv2.VideoWriter클래스
- OpenCV에서 cv2.VideoWriter 클래스 이용하여 동영상으로 저장 가능(크기와 데이터가 같음)
- Fourcc (4-문자코드, four character code)
https://www.fourcc.org/codecs.php
-
동영상 파일의 코덱, 압축 방식 , 색상,픽셀 포맷 등을 정의하는 정수인 값
-
코덱을 사용하려면 각자 환경이 구축된다.
-
VideoWriter인자: isColor 그레이스케일저장 안됨
-
fourcc: 문자 풀어쓴다라는 의미
-
예시:
- cv2.VideoWriter_fourcc(* 'DIVX') : DIVX MPEG-4 코덱
- cv2.VideoWriter_fourcc(* 'XVID') : XVID MPEG-4 코덱
- cv2.VideoWriter_fourcc(* 'FMP4') : FFMPEG MPEG-4 코덱
- cv2.VideoWriter_fourcc(* 'X264') : H.264/AVC 코덱
- cv2.VideoWriter_fourcc(* 'MJPG') : Motion-JPEG 코덱
- 저장을 위한 동영상 파일 열기
cv2.VideoWriter(filename, fourcc, fps, frameSize, isColor=None) -> retval
-
filename: 비디오 파일 이름
-
fourcc: fourcc (e.g. cv2.VideoWriter_fourcc(* 'DIVX'))
-
fps: 초당 프레임 수
-
frameSize: 프레임크기(width, height) 튜플
-
isColor: 컬러영상이면 True, 아니면 False
-
retval: cv2.VideoWriter 객체
cv2.VideoWriter.open(filename, fourcc, fps, frameSize, isColor=None) -> retval
- retval: 성공하면 True, 실패하면 False
- 비디오 파일 준비되었는지 확인
cv2.VideoWriter.isOpened() -> retval
- 프레임 저장하기
cv2.VideoWriter.write(image) -> None
- image : 저장할 프레임(numpy.ndarray)
- 웹 카메라 입력을 동영상으로 저장
cap = cv2.VideoCapture(0)
w = round(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
h = round(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
fourcc = cv2.VideoWriter_fourcc(*'DIVX') # *'DIVX' == 'D','I','V','X'
out = cv2.VideoWriter('output.avi', fourcc, 30, (w, h))
while True:
ret, frame = cap.read()
inversed = ~frame
out.write(inversed)
cv2.imshow('frame', frame)
cv2.imshow('inversed', inversed)
if cv2.waitKey(10) == 27:
break
Author And Source
이 문제에 관하여(카메라 동영상처리 2), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@qsdcfd/카메라-동영상처리-2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)