Ich habe ein kurzes Skript gemacht, das die Anfänge eines Zauberwürfel-Timers ist, aber wenn ich das aufgezeichnete Video wiedergebe, wird es extrem beschleunigt.Python OpenCV Videoaufnahme schnell vorwärts
Meine Webcam ist eine 'Creative Labs Live! Cam Chat HD' und hat eine Auflösung von 1280 * 720 Pixel, Seitennotiz; Wenn ich versuche, die Skriptcodierung in dieser Auflösung auszuführen, schlägt die Wiedergabe fehl und die Bildrate beträgt 30 fps.
Unten ist der Code und ein Link eines Videos, das den Effekt zeigt.
from time import clock as t
import time
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
fourcc = cv2.VideoWriter_fourcc(*"XVID")
out = cv2.VideoWriter("output.avi", fourcc, 30.0, (640, 480))
timing = False
while True:
ret, frame = cap.read()
#frame = cv2.flip(frame, 1)
cv2.imshow("frame", frame)
if timing:
out.write(frame)
if cv2.waitKey(1) & 0xFF == ord(" "):
if timing:
after = t()
break
else:
timing = True
start = t()
cap.release()
out.release()
cv2.destroyAllWindows()
print(after - start)
Example of the accelerated video.
Für Start, fest einprogrammiert Wechsel 30 fps zu vielleicht 20 und sagen Sie uns das Ergebnis – Aleksandar