Linux opencv VideoCapture()函数打开多个USB摄像头

Posted smartvxworks

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux opencv VideoCapture()函数打开多个USB摄像头相关的知识,希望对你有一定的参考价值。

Linux操作系统下看到的USB摄像头

root@ubuntu-20-04-2-lts:/home/zhao# ls /dev/video*
/dev/video0  /dev/video1  /dev/video2  /dev/video3
root@ubuntu-20-04-2-lts:/home/zhao#

可以看到/dev/video0  /dev/video1  /dev/video2  /dev/video3四个设备,实际上真实的设备是偶数设备/dev/video0 和/dev/video2,奇数设备为虚拟设备,不可用;

opnecv下的VideoCapture();函数的库在windows下和linux下是不同的;

Windows下使用Opencv打开USB摄像头,0就是VideoCapture(0),1就是VideoCapture(1),不存在虚拟设备;

Linux/Ubuntu下使用Opencv打开USB摄像头,0就是VideoCapture(200+0),1是虚拟设备,2就是VideoCapture(200+2),3是虚拟设备,依次类推。

具体原因见:https://blog.csdn.net/jirryzhang/article/details/73465298

以上是关于Linux opencv VideoCapture()函数打开多个USB摄像头的主要内容,如果未能解决你的问题,请参考以下文章

opencv视频操作基础---VideoCapture类

OpenCV类VideoCapture构造函数中参数apiPreference的可选值及意义

OpenCV/Python:使用 VideoCapture 读取特定帧

4.OpenCV视频处理

在 Android 上的 OpenCV 中旋转 VideoCapture

从 OpenCV 3 中的 VideoCapture 获取垫子