从 Python openCV 中每一帧的视频中获取经过的时间
Getting elapsed time from a video at each frame in Python openCV
我有一个正在对其进行图像处理的视频文件。
但是我需要每一帧经过的时间。
到目前为止我有
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
我有一个正在对其进行图像处理的视频文件。 但是我需要每一帧经过的时间。
到目前为止我有
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