Linux 摄像头编号固化

一、前言

在工业领域,一台设备会有很多个摄像头,可以使用命令:ll /dev/video* 进行查看;

在代码中,如果需要使用摄像头,那么都是需要具体到哪个摄像头编号的,例如 open("/dev/video4");

但是,会出现一种情况,摄像头编号改变了...

例如,/dev/video4,其变成了/dev/vieo5

那么,如果我们代码中继续使用open("/dev/video4");去访问打开,是会失败的,而且可能还会浪费资源...

基于此,我们需要固化摄像头编号,即通过将摄像头信息绑定到一个文件进行映射;然后代码中使用这个映射的文件名,就可以使用到对应的摄像头。

二、操作

以下以我电脑的摄像头为例

当固化后就可以使用命令:ll /dev/tty*  进行查看

可以使用 ffplay  video0 命令查看摄像头内容。

1.需求

使用名字 /dev/ttyFaceVideo 指向 /dev/video0 摄像头;即使用 /dev/ttyFaceVideo,相当于使用 /dev/video0;

2. 查看摄像头信息

命令:udevadm  info  -a  -n  /dev/video0

在终端输入命令后(根据自己的摄像头编号进行更改),会出现很多信息,找到 KERNELS 字段为数字的,就是我们需要的摄像头信息。

然后找到 ATTRS{idVendor}=="xxxx"ATTRS{idProduct}=="xxxx"ATTRS{devpath}=="?";

这三个字段就是摄像头的信息,绑定需要使用这些信息。请记住他们。

3.绑定

进入路径:/etc/udev/rules.d/

新建文件 ttyFaceVideo.rules

sudo vi ttyFaceVideo.rules

然后输入如下内容:

KERNEL=="video*", ATTRS{idVendor}=="13d3", ATTRS{idProduct}=="56ff", ATTRS{devpath}=="2", MODE:="0777", SYMLINK+="ttyFaceVideo"

请替换你的摄像头信息!        

ATTRS{idVendor}ATTRS{idProduct}ATTRS{devpath}

另外,SYMLINK 需要与文件名一致,不需要后缀!!!

4.重启

reboot

三、查看最总效果

命令:ll /dev/tty*

可以看到,已经绑定好了,后续,使用 /dev/ttyFaceVideo  相当于使用  /dev/video0

当然,如果有很多个摄像头,也可以绑定多个,名字不一样即可!

OpenCV使用案例

//QString vPath = QString("video0");
QString vPath = QString("/dev/ttyFaceVideo");
cv::VideoCapture video_capture;
video_capture.open(vPath .toStdString());

USB设备也是可以的,例如:/dev/ttyUSB
操作与video一致。

完!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1472338.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

无线麦克风什么牌子的音质效果好,揭秘哪款领夹麦克风性价比高!

随着网络直播、短视频制作和在线教育的兴起,无线领夹麦克风因其便携性和出色的录音质量成为了众多内容创作者的首选工具。这类麦克风的流行并不是空穴来风,领夹麦克风不仅能够轻松夹在衣物上,减少了对活动自由度的限制,而且能够提…

无线网卡怎么连接台式电脑?让上网更便捷!

随着无线网络的普及,越来越多的台式电脑用户希望通过无线网卡连接到互联网。无线网卡为台式电脑提供了无线连接的便利性,避免了有线网络的束缚。本文将详细介绍无线网卡怎么连接台式电脑的四种方法,包括使用USB无线网卡、内置无线网卡以及使用…

2024年7月3日 (周三) 叶子游戏新闻

老板键工具来唤去: 它可以为常用程序自定义快捷键,实现一键唤起、一键隐藏的 Windows 工具,并且支持窗口动态绑定快捷键(无需设置自动实现)。 卸载工具 HiBitUninstaller: Windows上的软件卸载工具 《魅魔》新DLC《Elysian Fields…

智能井盖采集装置 开启井下安全新篇章

在现代城市的脉络之下,错综复杂的管网系统如同城市的血管,默默支撑着日常生活的有序进行。而管网的监测设备大多都安装在井下,如何给设备供电一直是一个难题,选用市电供电需经过多方审批,选用电池供电需要更换电池包&a…

JavaScript中闭包的理解

闭包(Closure)概念:一个函数对周围状态的引用捆绑在一起,内层函数中访问到其外层函数的作用域。简单来说;闭包内层函数引用外层函数的变量,如下图: 外层在使用一个函数包裹住闭包是对变量的保护&#xff0c…

Altium Designer专业PCB设计软件下载安装 Altium Designer安装包下载获取

在电子设计的广袤领域中,PCB设计无疑占据着重要的地位。而Altium Designer作为一款业界领先的电子设计自动化软件,其提供的先进布局工具,无疑为设计师们打开了一扇通往高效、精确设计的大门。 在PCB设计的核心环节——布局中,Alti…

html高级篇

1.2D转换 转换(transform)你可以简单理解为变形 移动:translate 旋转:rotate 缩放:sCale 移动:translate 1.移动具体值 /* 移动盒子的位置: 定位 盒子的外边距 2d转换移动 */div {width…

如何设计一个C++程序来模拟超市收银系统?

🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…

vue 中 使用腾讯地图 (动态引用腾讯地图及使用签名验证)

在设置定位的时候使用 腾讯地图 选择地址 在 mounted中引入腾讯地图: this.website.mapKey 为地图的 key // 异步加载腾讯地图APIconst script document.createElement(script);script.type text/javascript;script.src https://map.qq.com/api/js?v2.exp&…

昇思25天学习打卡营第17天|GAN图像生成

模型简介 GAN模型的核心在于提出了通过对抗过程来估计生成模型这一全新框架。在这个框架中,将会同时训练两个模型——捕捉数据分布的生成模型G和估计样本是否来自训练数据的判别模型D 。 在训练过程中,生成器会不断尝试通过生成更好的假图像来骗过判别…

昇思25天学习打卡营第8天|MindSpore保存与加载(保存和加载MindIR)

在MindIR中,一个函数图(FuncGraph)表示一个普通函数的定义,函数图一般由ParameterNode、ValueNode和CNode组成有向无环图,可以清晰地表达出从参数到返回值的计算过程。在上图中可以看出,python代码中两个函…

Python面试宝典第6题:有效的括号

题目 给定一个只包括 (、)、{、}、[、] 这些字符的字符串,判断该字符串是否有效。有效字符串需要满足以下的条件。 1、左括号必须用相同类型的右括号闭合。 2、左括号必须以正确的顺序闭合。 3、每个右括号都有一个对应的相同类型的左括号。 注意:空字符…

搞了个 WEB 串口终端,简单分享下

每次换电脑总要找各种串口终端软件,很烦。 有的软件要付费,有的软件要注册,很烦。 找到免费的,还得先下载下来,很烦。 开源的软件下载速度不稳定,很烦。 公司电脑有监控还得让 IT 同事来安装&#xff0…

后端之路——最规范、便捷的spring boot工程配置

一、参数配置化 上一篇我们学了阿里云OSS的使用,那么我们为了方便使用OSS来上传文件,就创建了一个【util】类,里面有一个【AliOSSUtils】类,虽然本人觉得没啥不方便的,但是黑马视频又说这样还是存在不便维护和管理问题…

生态系统NPP及碳源、碳汇模拟技术教程

原文链接:生态系统NPP及碳源、碳汇模拟技术教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247608293&idx3&sn2604c5c4e061b4f15bb8aa81cf6dadd1&chksmfa826602cdf5ef145c4d170bed2e803cd71266626d6a6818c167e8af0da93557c1288da21a71&a…

FPGA问题

fpga 问题 ep2c5t144 开发板 第一道坎,安装软件;没有注册,无法产生sop文件,无法下载 没有相应的库的quartus ii版本,需要另下载 第二道坎,模拟器的下载,安装; 第三道,v…

在window上搭建docker

1、打开Hyper-V安装 在地址栏输入控制面板,然后回车 勾选Hyper-V安装,如果没有找到Hyper-V,那么请走第2步 2、如果没有Hyper-V(可选)第一步无法打开 家庭版本需要开启Hyper-V 创建一个文本文档,后缀名称为.bat.名称…

油猴Safari浏览器插件:Tampermonkey for Mac 下载

Tampermonkey 是一个强大的浏览器扩展,用于运行用户脚本,这些脚本可以自定义和增强网页的功能。它允许用户在网页上执行各种自动化任务,比如自动填写表单、移除广告、改变页面布局等。适用浏览器: Tampermonkey 适用于多数主流浏览…

第二周:计算机网络概述(下)

一、计算机网络性能指标(速率、带宽、延迟) 1、速率 2、带宽 3、延迟/时延 前面讲分组交换的时候介绍了,有一种延迟叫“传输延迟”,即发送一个报文,从第一个分组的发送,到最后一个分组的发送完成的这段时…