树莓派接多个USB摄像头,使用opencv打开指定的某一个摄像头

2023-11-03

问题描述:

在树莓派上使用多个USB摄像头时,如何确定各个摄像头所对应的id?
比如,当有两个摄像头时,我尝试一个为cv2.VideoCapture(0),一个为cv2.VideoCapture(1),通过看捕获的图像,可以确定各摄像头的id,但这个顺序不是固定的,树莓派在通电的时候,哪一个摄像头先通电的,哪一个就是0,下一个就是1,2,3,4,5…
但这样毕竟很被动,在我们的代码上就很麻烦了,没办法确定摄像头是那一个!


现在我们就来解决这个问题(全网首份保姆级教程):

1.查看USB摄像头的ID

在终端上输入lsusb

lsusb

在这里插入图片描述
我这里使用了2个USB摄像头,通过插拔,确定摄像头的ID是哪个!


2.将端口重映射到新的固定的名字:

将端口重映射到新的固定的名字,并且设置其权限为可读。使用对应的id端口映射到固定的名字上(看不懂无所谓,按教程来,往下走)
终端输入:

sudo vi /etc/udev/rules.d/rplidar.rules

1.按i,进入编辑模式
2.复制以下代码,修改ID,自定义设备的名字

KERNEL=="video*", ATTRS{idVendor}=="038f", ATTRS{idProduct}=="6001", MODE:="0777", SYMLINK+="people_video"

在这里插入图片描述
3.按Esc,输入 :wq (保存退出)
创建生效后重新插拔一下USB摄像头


3.查看USB摄像头是否重映射:

ls -l /dev |grep video

在这里插入图片描述
我这里两个摄像头都映射成功了!


4.在树莓派python上的应用:

平时我们是这样子使用的:
cap = cv2.VideoCapture(0) # 打开USB摄像头对象

现在精准打开某个摄像头

cap = cv2.VideoCapture("/dev/people_video")  # 打开人体识别摄像头
cap = cv2.VideoCapture("/dev/goods_video")  # 打开物体识别摄像头

总结:理论上不管USB摄像头插在那个usb端口上,什么时候上电,都能通过 /dev/people_video (自己定义的名字)打开相对应的摄像头

遇到的问题:

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

树莓派接多个USB摄像头,使用opencv打开指定的某一个摄像头 的相关文章

随机推荐

  • Python 反射机制

    对编程语言比较熟悉的朋友 应该知道 反射 这个机制 Python作为一门动态语言 当然不会缺少这一重要功能 然而 在网络上却很少见到有详细或者深刻的剖析论文 下面结合一个web路由的实例来阐述python的反射机制的使用场景和核心本质 一
  • 编码:8421 BCD码(彻底弄懂+6是什么意思,为什么要加6)

    一 解释一下什么是8421 首先要理解的是4bit表示1个十进制位 8421代表的是权值分配 8421码用0000 0001 1001分别表示0 1 2 9的数字 为什么13不是1101 答 不在映射表 8421码的1010 1111没意义
  • 消息中心架构设计

    转载于 https www cnblogs com lilunjia p 8797399 html
  • sql 除以_1.七日留存率-SQL实现

    一 背景 留存率 是用户分析的核心指标之一 它也是经典的AARRR模型 海盗模型 中就有一个重要节点 留存 Acquisition 留存率的计算也是用户分析模型的计算基础 那么如何在数据库中用SQL实现呢 二 什么是留存率 常见的留存率有次
  • GitLab新建删除项目

    新建项目 在主页选择 Create a project 输入Project name 在Project URL选择组或者用户 Visibility Level选择Private 点击 Create project 提示创建成功 点击Clon
  • Vue2项目引入高德地图并展示

    前言 最近项目中需要使用地图来进行展示数据 并且还要进行一些交互的行为 因为之前并没有接触过地图类型的项目 看着原型图感觉还是很不错的 开始开发后也在研究如何在项目中正确引用高德地图 为此也是翻阅了高德官方的文档 发现实现起来还是比较容易的
  • java 蓝桥杯 两道经典国赛 填空题

    目录 求值 题目描述 链接 精选项目课程 IT热门课程 蓝桥云课课程 蓝桥云课 解题思路 源码附上 纯质数 题目描述 解题思路 源码附上 求值 题目描述 链接 精选项目课程 IT热门课程 蓝桥云课课程 蓝桥云课 解题思路 这道题是填空题 所
  • (亲测解决)PyCharm 从目录下导包提示 unresolved reference(完整图解)

    最近在进行一个Flask项目的过程中遇到了unresolved reference 包名 的问题 在网上找了好久解决方案 并没有一个能让我一步到位解决问题的 后来 我对该问题和网上的解决方案进行了分析 发现网上大多数都是针对项目同一目录下的
  • Idea之Java代码Remote JVM Debug

    Idea之Java代码Remote JVM Debug 1 适用场景 在公司中 java代码开发完成之后 一般都会部署到linux服务器上 以供公司客户进行使用 但是作为开发人员 尤其是一名新员工 了解公司产品源代码中的业务逻辑算的上是最重
  • Vue项目element-ui弹窗组件el-dialog、el-drawer,阻止点击遮罩层关闭

    项目需求问题 Vue项目element ui弹窗组件el dialog el drawer 阻止点击遮罩层关闭 Vue项目element ui弹窗组件el dialog el drawer 阻止点击遮罩层关闭 在使用element ui组件
  • 在 VMware Workstation 16 Pro 中安装 Ubuntu Server 22.04.1 并配置静态 IP 地址

    文章目录 1 下载 Ubuntu Server 22 04 1 2 新建虚拟机向导 3 编辑虚拟机设置 4 开启此虚拟机并配置Ubuntu系统 5 设置 root 用户的密码 6 允许远程连接 root 用户 7 配置静态 IP 地址 7
  • CVE-2021-41773 漏洞复现

    漏洞原理 Apache HTTP Server 2 4 49版本使用的ap normalize path函数在对路径参数进行规范化时会先进行url解码 然后判断是否存在 的路径穿越符 当检测到路径中存在 字符时 如果紧跟的2个字符是十六进制
  • PyCharm 集成PyQt5

    PyCharm 安装PyQt5 在Pycharm中安装软件时比较方便的 直接进行File gt Settings 接着进入Project gt Project Interpreter 然后点击右上角的加号 在检索文本框中输入PyQt5 和
  • 【5G消息产业图谱】正式发布!

    5G消息 在所有5G应用中脱颖而出 艳惊四座 那么 作为最快落地的5G应用 5G消息目前的进展如何 到底有多少玩家参与 实际又有多少行业用户在 试水 今天 5G产业圈特别制作的 5G消息产业图谱 正式发布 大家从我们的图谱中可以看到5G消息
  • 网络原理之初识

    目录 网络发展背景 独立模式 网络互联 局域网 广域网 网络通信基础 IP地址 端口号 协议 协议分层 OSI七层网络模型 TCP IP五层 四层 网络模型 物理层 数据链路层 网络层 传输层 应用层 封装和分用 网络发展背景 独立模式 独
  • Tensorflow 摄像头物体实时识别

    官方源码提供了图片的检测 但是实用性不高 所以对源码进行了修改 使用笔记本自带摄像头或者usb摄像头进行实时检测 第二张是摄像头实时物体识别 参考源 视频 https www youtube com watch v COlbP62 B U
  • 第41步 深度学习图像识别:Efficientnet建模(Tensorflow)

    一 写在前面 1 Efficientnet EfficientNet是Google在2019年提出的一种新的卷积神经网络架构 主要目标是提高模型的效率 即在保持或提高模型性能的同时 尽可能地降低模型的复杂性和计算需求 EfficientNe
  • 如何快速提高个人的计算机水平,如何进一步提高计算机水平

    文章 如何进一步提高计算机水平 周老师 您好 我是一名中学信息技术教师 我现在想进一步提高自己计算机专业方面的知识和能力 不知如何去做 我不是计算机专业毕业的 从事信息技术课程教学已两年 我对简单的Office 2000应用及计算机基本操作
  • 通过添加Access-Control-Allow-Origin首部字段,解决flask跨域问题

    今天在使用swagger测试接口的时候出现无法获取返回的问题 TypeError Origin http 10 8 15 49 18081 is not allowed by Access Control Allow Origin 查看日志
  • 树莓派接多个USB摄像头,使用opencv打开指定的某一个摄像头

    问题描述 在树莓派上使用多个USB摄像头时 如何确定各个摄像头所对应的id 比如 当有两个摄像头时 我尝试一个为cv2 VideoCapture 0 一个为cv2 VideoCapture 1 通过看捕获的图像 可以确定各摄像头的id 但这