我正在尝试从网络摄像头读取帧并实时分析它们,但由于我的函数AnalyzeFrame()
比帧速率快,它最终会连续拉同一帧 1-4 次,从而弄乱了我的数据。这基本上就是我正在运行的内容。
import imageio
cam = imageio.get_reader('<video0>', fps=30)
while not cam.closed:
print(AnalyzeFrame(cam.get_next_data()))
一些注意事项:我的网络摄像头应该能够处理 30 fps,但我平均为 12-14 fps。我已经对每个单独的过程进行了计时,并且帧速率几乎没有规律性。有些帧只分析一次,因为它们在缓冲区中的时间大约为 20 毫秒。其他人在 100 多毫秒的时间内被分析了 4 次。我的代码中是否存在导致此帧率问题的内容?