2 careerhealth careerhealth 于 2016.01.26 19:01 提问

用OpenCV2 打开多摄像头,如何确定摄像头序号
这是个小问题。
按照OpenCV说明书的说法,打开摄像头,可以使用如下语句形式:
VideoCapture::VideoCapture(int device)
对于其中的device部分,说明手册有如下提示
device – id of the opened video capturing device (i.e. a camera index). 
我想问的是,使用多个摄像头时,如何确定各个摄像头所对应的id。
比如,当有两个摄像头时,我尝试一个为0,一个为1,通过看捕获的图像,可以确定各摄像头的id,但不知这个顺序是否固定。但这样毕竟很被动,而且不知道开关机等操作后,再运行改程序,设备号是否会变化。
我想一定有可以查看摄像头对应的所谓id的方法,但没有搜到,希望有人能解答。

2个回答

wangyaninglm
wangyaninglm   Ds   Rxr 2016.01.26 22:29

这个估计得看看源码是怎么样操作的,官方文档里面也就是你说的那些,没有提到更多的细节

qq_24495647
qq_24495647 回复careerhealth: 群主解决的话,求分享一下
大约 2 年之前 回复
wangyaninglm
wangyaninglm 解决的话分享一下啊,这个我确实见过很多人问到过
2 年多之前 回复
careerhealth
careerhealth 谢谢,这是一个解决途径,只是我现在基础薄弱,看源码吃力。
2 年多之前 回复
qq_25856025
qq_25856025   2016.03.15 09:54
panpancongcong
panpancongcong 你好,这样设置之后,在opencv里好用吗?cvCreateCameraCapture(int index),我这边尝试了下,好像不行
大约 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
OpenCV2 多摄像头读取视频实现
OpenCV2 多摄像头读取视频实现,编程环境:VS2012,Opencv2.4.6
Opencv2打开摄像头并显示图像
网上有很多例子,但绝大部分是用Opencv1写的。这里基于Opencv2,打开摄像头,并显示图像。#include <opencv2\core\core.hpp> #include <opencv2\highgui\highgui.hpp> #include <opencv2\opencv.hpp>using namespace cv; int main() { VideoCapture c
opencv2读取摄像头并保存为视频
#include #include #include using namespace cv; using namespace std; int main() { VideoCapture cap(0); //读取usb摄像头视频 if(!cap.isOpened()) { cout"Capture could not be opened successfully" r
使用opencv2在qt界面上进行摄像头采集以及简单的拍照功能
首先在这边说明一下为什么要写这个,因为在网上都是使用opencv1的代码,个人感觉有点过时,现在大家基本上都是用opencv2或者opencv3,而库基本上都是用opencv2的库。 首先我们要先将环境安装好: 安装opencv,链接地址如下:https://opencv.org/downloads.html安装qt,我个人是安装比较新的qt5.6.0,链接地址如下:http:
opencv读取多个摄像头
说明:今天蹭了机器视觉课程,讲到了stereopsis,立体视觉,讲到了关于通过多个摄像头获取object的depth信息的事情,因为想到从来没有试过打开多个摄像头进行过处理,这次进行了测试,这里小小记录一下。 opencv提供的VideoCapture可以很方便的打开视频、摄像头设备,而且直接输入对应的摄像头标号即可,或者视频的名字即可,一个open全部搞定,我通常喜欢用这个来类来获取图像
【opencv学习之十】opencv3和opencv2读取本地摄像头
opencv3和opencv2读取摄像头的代码方法不能共用,所以这里总结一下; 变化是opencv2是用IplImage指针读取存储摄像头的帧,opencv3是用Mat; opencv2摄像头读取代码(Qt工程)如下:
OpenCV2.2无法打开摄像头的解决办法
OpenCV2.2无法打开摄像头的解决办法   完成了对OpenCV2.2运行环境的配置,迫不及待地想试一下利用OpenCV进行摄像头视频采集的功能,例程来自OpenCV中文网的《读视频文件和运动物体检测》:    /************************************************** * 背景建模,运动物体检测 * ***********
在ubuntu下利用opencv打开摄像头
测试环境:ubuntu10.04 + opencv2.3.0 在安装opencv之前要装上以下依赖库: sudo apt-get install ffmpeg libavcodec-dev libavcodec52 libavformat52 libavformat-dev sudo apt-get install libgstreamer0.10-0-dbg libgstreamer0
Opencv打开内置摄像头
Opencv中VideoCapture是专门用来处理视频文件或者摄像头视频流的类,详细的说明和用法可以参考Opencv2.4.13的说明文档:点击打开链接 使用VideoCapture打开内置摄像头的例子: #include #include #include using namespace cv; int main(int argc,char *arg
比较opencv2、opencv3关于读取视频文件、摄像头的编程风格
(开发环境:ubuntu 16.04+opencv3.1.0+qt5) 入门opencv首先了解下读取视频文件、摄像头的编程风格。 opencv2、opencv3对此最基本到区别莫过于操作图像矩阵的不同: opencv2采用到是IplImage指针;opencv3采用的是Mat矩阵。 先上代码: opencv2风格: #include #include #include #i