主机插入多个usb相机,固定序号
Ubuntu系统,主机连接了多个相机,每次运行代码序号可能会变,为解决序号变的问题,固定序号
1.查找相机属性
udevadm info --name=/dev/video2 --attribute-walk
2. 创建udev规则文件
sudo nano /etc/udev/rules.d/99-camera.rules
3. 添加规则,将查找相机属性,输出的ATTRS{idVendor}和ATTRS{idProduct}参数填进去,例如:
SUBSYSTEM=="video4linux", ATTRS{idVendor}=="04f2", ATTRS{idProduct}=="b67c", SYMLINK+="video_left"
SUBSYSTEM=="video4linux", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="082d", SYMLINK+="video_right"
4. 重新加载规则
sudo udevadm control --reload-rules
sudo udevadm trigger
5.检查
ls -l /dev/video_*
6.在代码种调用
# 存储命令行传入的参数
self.left_cam_path = left_cam_path
self.right_cam_path = right_cam_path# 初始化新实例
self.left_cam = cv2.VideoCapture(self.left_cam_path)
self.right_cam = cv2.VideoCapture(self.right_cam_path)
parser.add_argument('--left-cam-path', type=str, default="/dev/video_left", help='左相机设备路径 (USB camera)')
parser.add_argument('--right-cam-path', type=str, default="/dev/video_right", help='右相机设备路径 (RGB Camera)')