728x90
반응형
openCV를 이용하여 mp4 파일에서 특정 화면을(프레임)을 캡쳐해보고자 한다.
아래는 전체 소스이며, ctrl+z 를 누르면 화면이 캡쳐가 되고, 이를 파일로 저장하도록 하였다.
1. 동영상 파일열기
cap = cv2.VideoCapture('Bird.mp4')
2. 계속돌면서 동영상에서 프레임별로 읽어들이기
ret, frame = cap.read()
3. 이미지 보여주기.
cv2.imshow('capture', frame)
4. 키 대기
key = cv2.waitKey(100)
100ms 대기 이를 이용하여 프레임 속도를 조절할 수도 있다.
5. 단축키 지정과 파일로 저장
if key == 27:
break
elif key == 26:
print("캡쳐")
cv2.imwrite("bird.png", frame)
import cv2
cap = cv2.VideoCapture('Bird.mp4')
while True:
if(cap.get(cv2.CAP_PROP_POS_FRAMES) == cap.get(cv2.CAP_PROP_FRAME_COUNT)):
cap.open("Bird.mp4")
ret, frame = cap.read()
cv2.imshow('capture', frame)
key = cv2.waitKey(100)
# 27 = ESC, 26 = Ctrl + Z
if key == 27:
break
elif key == 26:
print("캡쳐")
cv2.imwrite("bird.png", frame)
cap.release()
cv2.destroyAllWindows()
간단한 영상 캡쳐 프로그램을 파이썬으로 만들어 보았다.
728x90
반응형
'Python' 카테고리의 다른 글
예제] openCV 실시간 영상 배경 교체 - cvzone (0) | 2022.01.29 |
---|---|
예제] openCV Motion Analysis - 객체 추적 (0) | 2022.01.28 |
자료형 리스트, 튜플, 딕셔너리, 셋 (0) | 2022.01.27 |
로그]로또 예측 - 번호 만들기 (0) | 2022.01.21 |
로그]로또 예측 - facebook prophet 이용 (0) | 2022.01.20 |