我的系统中运行着3个相同的相机,它们之间的唯一区别是插入的USB端口。我需要为每个摄像机使用OpenCV加载特定的Python脚本,我的代码很简单:
capture = cv2.VideoCapture(index)
其中每个脚本中的索引分别等于0、1、2。问题是当我重新启动PC并运行相同的代码时,有时会按预期运行,有时1或2台摄像机切换了它们的索引(未更改任何代码或从USB拔出),因此结果是在没有相应摄像机的情况下加载了脚本。
例如,如果在script2.py中定义的摄像机索引为2,则我重新启动PC,现在在运行script2.py时将摄像机的索引设置为0。
有什么解决方案吗?如何指定VideoCapture()的物理端口始终相同?我正在运行Win10
预先感谢