既存のビデオファイルから、タイムラプスを作成する方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import cv2 import numpy as np RATE = 10 <em># 10倍速</em> cap = cv2.VideoCapture('AB.mp4') w = cap.get(cv2.CAP_PROP_FRAME_WIDTH) h = cap.get(cv2.CAP_PROP_FRAME_HEIGHT) fps = cap.get(cv2.CAP_PROP_FPS) fourcc = cv2.VideoWriter_fourcc(*'MP4V') out = cv2.VideoWriter('out.mp4',fourcc, fps, (int(w),int(h))) count=RATE while(True): ret, frame = cap.read() if ret==True: if count==0: out.write(frame) count=RATE count-=1 cv2.imshow('frame',frame) keyboard = cv2.waitKey(1) if keyboard == 27: break else: break cap.release() out.release() cv2.destroyAllWindows() |
fourcc : Windows 10 の場合、次の動作を確認した。
フォーマット | fourcc |
avi | DIVX | avi | DIVX | wmv | WMV1 | wmv | WNV2 | mp4 | MP4V |