我想用OpenCV在单个USB控制器(使用USB 2.0集线器)上打开两个Canyon cne - ccwc3网络摄像头的720p流。它以一种相当不可预测的方式起作用;有时它会成功,但大多数时候它无法打开第二流。我在VLC中检查了流的带宽使用情况,每个流的最高带宽为150-160 Mbps,所以两个流应该适合480 Mbps的USB带宽而没有问题。我猜驱动程序在初始化期间为流分配了更多的空间,这就是第二个流失败的原因。
是否有解决这个问题的方法(在Win或Linux中),或者我应该切换到不同的网络摄像头?你知道哪一种"可靠"的类型肯定不会出现这个问题吗?
我在Linux中遇到过这个问题。可能的解决方案取决于驱动程序;驱动程序分配比必要的带宽更多的带宽是很常见的。在我的情况下,我解决了这个问题,调整驱动程序,但它不能保证工作。为了估计必要的带宽,VLC值可能会给您一些估计,但通常相机芯片需要更多的峰值带宽,因为它以突发方式提供数据。降低其中一台相机的分辨率可能会有所帮助。