摘要-针对ubantu20

sudo apt install v4l-utils
v4l2-ctl --list-devices


- cv2 install on ubantu20
```
针对ubantu20

sudo apt install v4l-utils
v4l2-ctl --list-devices

pip uninstall opencv-python
conda install pyqt
pip install opencv-python==4.1.2.30
```

(py38) itdb@ai:/opt/aisty/doc/aitools$ /opt/aisty/app/anaconda3/envs/py38/bin/python /opt/aisty/doc/aitools/case/face/04-tt.py
VIDEOIO ERROR: V4L2: Could not obtain specifics of capture window.
[ WARN:0] global /io/opencv/modules/videoio/src/cap_v4l.cpp (802) open VIDEOIO ERROR: V4L: can't open camera by index 1
/dev/video1 does not support memory mapping
Traceback (most recent call last):
File "/opt/aisty/doc/aitools/case/face/04-tt.py", line 18, in <module>
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 转换为灰度图
cv2.error: OpenCV(4.1.2) /io/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cvtColor'

查看摄像头编号

v4l2-ctl --list-devices
(base) itdb@ai:~/Desktop$ find /lib/modules/ -name "*v4l2*.ko"
/lib/modules/5.8.0-59-generic/kernel/drivers/media/v4l2-core/v4l2-dv-timings.ko
/lib/modules/5.8.0-59-generic/kernel/drivers/media/v4l2-core/v4l2-flash-led-class.ko
/lib/modules/5.8.0-59-generic/kernel/drivers/media/v4l2-core/v4l2-fwnode.ko
/lib/modules/5.8.0-59-generic/kernel/drivers/media/v4l2-core/v4l2-mem2mem.ko
/lib/modules/5.8.0-59-generic/kernel/drivers/media/i2c/adv7511-v4l2.ko
/lib/modules/5.8.0-59-generic/kernel/drivers/media/common/v4l2-tpg/v4l2-tpg.ko
/lib/modules/5.8.0-59-generic/kernel/drivers/media/common/videobuf2/videobuf2-v4l2.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/v4l2-core/v4l2-dv-timings.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/v4l2-core/v4l2-flash-led-class.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/v4l2-core/v4l2-fwnode.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/v4l2-core/v4l2-mem2mem.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/i2c/adv7511-v4l2.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/common/v4l2-tpg/v4l2-tpg.ko
/lib/modules/5.8.0-43-generic/kernel/drivers/media/common/videobuf2/videobuf2-v4l2.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/v4l2-core/v4l2-dv-timings.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/v4l2-core/v4l2-flash-led-class.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/v4l2-core/v4l2-fwnode.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/v4l2-core/v4l2-mem2mem.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/i2c/adv7511-v4l2.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/common/v4l2-tpg/v4l2-tpg.ko
/lib/modules/5.8.0-63-generic/kernel/drivers/media/common/videobuf2/videobuf2-v4l2.ko
(base) itdb@ai:~/Desktop$ sudo apt-get install v4l2-ctl
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package v4l2-ctl
(base) itdb@ai:~/Desktop$ v4l2-ctl --list-devices Command 'v4l2-ctl' not found, but can be installed with: sudo apt install v4l-utils (base) itdb@ai:~/Desktop$ sudo apt install v4l-utils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
linux-headers-5.8.0-43-generic linux-hwe-5.8-headers-5.8.0-43 linux-image-5.8.0-43-generic linux-modules-5.8.0-43-generic
linux-modules-extra-5.8.0-43-generic
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
libv4l2rds0
The following NEW packages will be installed:
libv4l2rds0 v4l-utils
0 upgraded, 2 newly installed, 0 to remove and 15 not upgraded.
Need to get 602 kB of archives.
After this operation, 2,274 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://cn.archive.ubuntu.com/ubuntu focal/main amd64 libv4l2rds0 amd64 1.18.0-2build1 [15.8 kB]
Get:2 http://cn.archive.ubuntu.com/ubuntu focal/universe amd64 v4l-utils amd64 1.18.0-2build1 [586 kB]
Fetched 602 kB in 3s (180 kB/s)
Selecting previously unselected package libv4l2rds0:amd64.
(Reading database ... 252070 files and directories currently installed.)
Preparing to unpack .../libv4l2rds0_1.18.0-2build1_amd64.deb ...
Unpacking libv4l2rds0:amd64 (1.18.0-2build1) ...
Selecting previously unselected package v4l-utils.
Preparing to unpack .../v4l-utils_1.18.0-2build1_amd64.deb ...
Unpacking v4l-utils (1.18.0-2build1) ...
Setting up libv4l2rds0:amd64 (1.18.0-2build1) ...
Setting up v4l-utils (1.18.0-2build1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
Processing triggers for man-db (2.9.1-1) ...
(base) itdb@ai:~/Desktop$ v4l2-ctl --list-devices
Synaptics RMI4 Touch Sensor (rmi4:rmi4-00.fn54):
/dev/v4l-touch0 USB Camera: USB Camera (usb-0000:00:14.0-1):
/dev/video2
/dev/video3 Integrated Camera: Integrated C (usb-0000:00:14.0-6):
/dev/video0
/dev/video1
Integrated Camera 电脑集成摄像机的编号是0,1
外部插的USB摄像机编号是2,3
编号改为2,即可调用外部摄像头
# 摄像头
cap = cv2.VideoCapture(2)

ubantu打开摄像头失败的更多相关文章

  1. OpenCV打开摄像头失败

    <span style="font-family: Arial, Helvetica, sans-serif;">#include <stdio.h>< ...

  2. 项目实战:Qt+Ffmpeg+OpenCV相机程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  3. JS打开摄像头并截图上传

    直入正题,JS打开摄像头并截图上传至后端的一个完整步骤 1. 打开摄像头主要用到getUserMedia方法,然后将获取到的媒体流置入video标签 2. 截取图片主要用到canvas绘图,使用dra ...

  4. python3脚本打开摄像头

    openCamera 脚本地址:https://github.com/Mrlshadows/openCamera Mac OS 安装 OpenCV Python 环境为 python3 终端执行如下指 ...

  5. opencvbase 实现opencv打开摄像头和初步处理等效果操作(附源码)

    // TwoCameraOnTimer2Dlg.cpp : 实现文件 /* CvMat, Mat, IplImage之间的互相转换 IpIImage -> CvMat CvMat mathead ...

  6. html5打开摄像头并用canvas模拟拍照 - 转

    <video id="video" width="640" height="480" autoplay></video&g ...

  7. andriod打开摄像头和打开相册

    package com.example.yanlei.picture; import android.support.v7.app.AppCompatActivity; import android. ...

  8. html5打开摄像头并用canvas模拟拍照

    网上很多关于用HTML5打开本地摄像头的文章,但各有瑕疵.根据我自己的亲身体验,我分享一下我用HTML5打开摄像头的经验. 废话不多说,直接看代码. HTML代码: <video id=&quo ...

  9. 解决Android调用相机拍照,要报“打开相机失败”查看debug日志显示“setParameters failed”的问题

    使用CameraLibrary项目,在部分手机或平板上不能正常使用,要报“打开相机失败”查看debug日志显示“setParameters failed”. 找到CameraView.java中的se ...

随机推荐

  1. (一)lamp 环境搭建之编译安装apache

    apache的编译安装: 安装步骤大概参考:http://www.cnblogs.com/iyoule/archive/2013/10/24/3385540.html 简单的将分为三步: (1)安装a ...

  2. Spring Cloud Gateway实战之一:初探

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于<Spring Cloud Gateway实 ...

  3. 《手把手教你》系列技巧篇(三十八)-java+ selenium自动化测试-日历时间控件-下篇(详解教程)

    1.简介 理想很丰满现实很骨感,在应用selenium实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这样的操作就 ...

  4. 谷粒 | 项目集成redis

    添加依赖 由于redis缓存是公共应用,所以我们把依赖与配置添加到了common模块下面,在common模块pom.xml下添加以下依赖 <!-- redis --> <depend ...

  5. mybatis之结果集的映射方式

    查询的几种情况 // 1)查询单行数据返回单个对象 public Employee getEmployeeById(Integer id ); // 2) 查询多行数据返回对象的集合 public L ...

  6. MAC安装vue.js

    一.下载node node下载地址:https://nodejs.org/en/download/ 下载后点击安装即可. node -v 检查安装是否成功 二.安装 淘宝镜像 (npm) npm in ...

  7. Part 29 AngularJS intellisense in visual studio

    In the previous videos if you have noticed as we were typing the angular code in Script.js file we w ...

  8. 『学了就忘』Linux软件包管理 — 42、对RPM软件包的查询操作

    目录 1.查询RPM软件包是否安装 2.查询系统中所有已安装的RPM软件包 3.查询RPM软件包的详细信息 4.查询RPM软件包中的文件列表 5.查询系统文件属于哪个RPM包 6.查询RPM软件包所依 ...

  9. go微服务框架Kratos笔记(六)链路追踪实战

    什么是链路追踪 借用阿里云链路追踪文档来解释 分布式链路追踪(Distributed Tracing),也叫 分布式链路跟踪,分布式跟踪,分布式追踪 等等,它为分布式应用的开发者提供了完整的调用链路还 ...

  10. [atARC126F]Affine Sort

    记$g(k)$为$c$恰为$k$的合法三元组数,显然$f(k)=\sum_{i=1}^{k}g(i)$ 结论:若$\lim_{k\rightarrow \infty}\frac{g(k)}{k^{2} ...