首页 > 解决方案 > Videocapture() 与多个摄像头

问题描述

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

capture = cv2.VideoCapture(index)

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

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

有什么解决方案吗?如何将 VideoCapture() 的物理端口指定为始终相同?我正在运行Win10

提前致谢

标签: pythonwindowsopencvcameraport

解决方案


推荐阅读