问题描述
在带有Python的OpenCV中,当网络摄像头的fps和目录中的视频文件相同时,为什么视频文件快进播放而网络摄像头继续以正常速率显示帧? cv2.waitKey()函数在这里起什么作用
解决方法
视频文件的fps表示该文件是如何加密的,在一秒钟内包含多少帧,如其名称所示。例如,如果提取此视频的1秒,将仅产生该数量的帧(图像)。
网络摄像机的相应fps表示摄像机在一秒钟内可以捕获多少帧。如果保存到视频文件中,则意味着每1秒跨度包含多少帧。
尽管这里有第三个(可能对您隐藏)概念。 opencv读取视频文件的速度。通常,对于现代计算机上的典型分辨率,此fps大于实际视频。因此,您的计算机似乎以快进模式播放视频,因为它以比视频文件fps更快的速度读取(并显示)帧。
理论上,您可以计算应导入视频播放的延迟,以强制其以正常速度显示。我不确定您能轻松实现这一目标(以科学的方式,而不是反复试验的方式)。
希望这可以澄清问题。