问题描述
在访问实时流媒体网络摄像机时。
VideoCapture 可以打开视频,但在几秒钟或几分钟后无法读取它。 cap.read()
一直返回 false 并且一段时间后 frame is none 。
那台相机的帧率是180000,太高了。
Python-> 3.8.5(默认,2020 年 7 月 28 日,12:59:40) [GCC 9.3.0] 在 Linux 上 操作系统- Ubuntu(18.04 或 20.04) OpenCV - 4.4.0 opencv-contrib-python==4.4.0.46
解决方法
看here,似乎openCV 对非USB 摄像头有问题。当opencv无法读取相机属性时,报告的fps很可能是默认值。
,这只是每个人在使用带有 IP 摄像头的 opencv 时偶尔会遇到的问题。您可以通过检查 cap.read() 是否返回 false 并关闭并重新打开流(如果在关闭和重新打开后仍然遇到问题,则实际上存在连接问题,而不仅仅是 opencv)来回避问题.