我有一个正在进行图像处理的视频文件。然而,我需要每帧所经过的时间。
到目前为止,我有
frames = camera.get(cv2.CAP_PROP_FRAME_COUNT)
fps = camera.get(cv2.CAP_PROP_FPS)
seconds_per_frame = fps/frames
counter = 0
while True:
//get frame
counter += seconds_per_frame
使用我现在拥有的这个代码是很挑剔的。它一开始给了我实际视频的时间,但后来开始变得不准确。例如,它会说当前帧处于12秒。但当我真正打开视频文件并转到那一帧时,只有7秒。
你们在分析视频时是如何计算时间的?
我看不到您的视频以便检查,但我怀疑您正在累积浮点错误。
尝试使用帧计数器和fps
来导出经过的时间,如下所示:
elapsed = frameNumber / fps