Videocapture() 多摄像头

Jos*_*les 7 python port camera opencv video-capture

我的系统中有 3 个相同的相机在运行,它们之间的唯一区别是插入的 USB 端口。我需要使用 OpenCV 为每个摄像头加载一个特定的 Python 脚本,我的代码非常简单:

capture = cv2.VideoCapture(index)
Run Code Online (Sandbox Code Playgroud)

其中 index 在每个脚本中分别等于 0、1、2。当我重新启动 PC 并运行相同的代码时出现问题,有时会按预期运行,有时 1 或 2 个摄像头已切换其索引(未更改任何代码或从 USB 拔出),因此结果是在没有相应摄像头的情况下加载脚本。

例如,如果在 script2.py 中定义的相机索引为 2,那么我重新启动 PC,现在在运行 script2.py 时加载索引为 0 的相机。

对此有任何解决方案吗?如何指定 VideoCapture() 的物理端口始终相同?我运行的是Win10

提前致谢