opencv读取多个摄像头

转载 2015年11月19日 17:58:59

说明:今天蹭了机器视觉课程,讲到了stereopsis,立体视觉,讲到了关于通过多个摄像头获取object的depth信息的事情,因为想到从来没有试过打开多个摄像头进行过处理,这次进行了测试,这里小小记录一下。


opencv提供的VideoCapture可以很方便的打开视频、摄像头设备,而且直接输入对应的摄像头标号即可,或者视频的名字即可,一个open全部搞定,我通常喜欢用这个来类来获取图像数据。
下面是对应的详细代码:

// MultiCAM.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv/cv.h>
using namespace std;
using namespace cv;

int main(int argc, _TCHAR* argv[])
{
    VideoCapture capture, capture1, capture2;
    capture.open(0);capture1.open(1);capture2.open(2);
    // Read options
    //read_options(argc, argv, capture);
    // Init camera
    if (!capture.isOpened())
    {
        cout << "capture device 0 failed to open!" << endl;
        return 1;
    }
    if (!capture1.isOpened())
    {
        cout << "capture device 1 failed to open!" << endl;
        return 1;
    }
    if (!capture2.isOpened())
    {
        cout << "capture device 2 failed to open!" << endl;
        return 1;
    }
    // Register mouse callback to draw the tracking box
    namedWindow("0", CV_WINDOW_AUTOSIZE);
    namedWindow("1", CV_WINDOW_AUTOSIZE);
    namedWindow("2", CV_WINDOW_AUTOSIZE);
    Mat frame;
    Mat frame1;
    Mat frame2;
    while(capture.read(frame) && capture1.read(frame1) && capture2.read(frame2))
    {
        imshow("0", frame);
        imshow("1", frame1);
        imshow("2", frame2);
        if (cvWaitKey(33) == 'q') { break; }
    }

    waitKey();
    return 0;
}

笔记本上自带的WEBCAM,外接了两个USB CAM,共三个摄像头,一般来说笔记本自带的WEB CAM应该对应的标号为0,之后是哪个USB接上的标号为1,以此类推。

可以在此工程上借助两个摄像头或者3个摄像头获取目标的深度信息的测试。

【计算机视觉】opencv读取多个摄像头

【计算机视觉】opencv读取多个摄像头标签(空格分隔): 【图像处理】说明:今天蹭了机器视觉课程,讲到了stereopsis,立体视觉,讲到了关于通过多个摄像头获取object的depth信息的事情...
  • LG1259156776
  • LG1259156776
  • 2015年11月12日 20:45
  • 4333

opencv读取并显示两个摄像头

环境:vs2010+opencv2.4.9为了实现双目摄像头的读取,搜集了一些资料,有人说用directshow来实现,有人说直接可以用opencv读取多个摄像头。那么,既然opencv能实现,为什么...
  • Jasmine_shine
  • Jasmine_shine
  • 2016年06月12日 15:19
  • 8016

opencv获取多个摄像头名字和编号

因为项目需要,利用opencv读取多个摄像头,但没法确定摄像头的编号。查看opencv的源码,摄像头的id主要利用了listDevices这个函数,自己把这个函数单独提取出来,根据vector int...
  • hyqwmxsh
  • hyqwmxsh
  • 2017年07月05日 19:02
  • 1959

Qt+opencv多摄像头视频显示

上个文章就说了,我正在实现一个智能监控系统。 由此实现了Qt的FTP文件传输:http://blog.csdn.net/u013812682/article/details/52199502。 还...
  • u013812682
  • u013812682
  • 2016年08月16日 11:40
  • 1615

opencv获取摄像头的个数及名字

最近需要使用多个摄像头来进行视频分析,有一个问题就是如何获取目前主机上有多少个摄像头。网上看了下,用VideoInput这个开源库的居多,但是还要引入这个库以及一些附加的依赖库,显得较为麻烦。其实在o...
  • chengkun183
  • chengkun183
  • 2015年07月16日 18:02
  • 5994

opencv多摄像头测试

因为要做双目视觉,所以要用多个摄像头。 多摄像头的方案有两种,一种是usb摄像头,第二种是网口摄像头。 按开发环境分windows和linux。 我先测试win7下的多摄像头。因为笔记本有4个u...
  • u010566411
  • u010566411
  • 2014年12月15日 10:40
  • 1737

opencv同时开启两个摄像头采集图像

之前做过双目相机的标定,需要同时开启两个摄像头同时采集图像,写过很麻烦每次只能采集一对图像的程序,后来发现waitKey()的使用可以很方便地通过键盘输入采集图像,写在博客里面希望可以给新手一些帮助吧...
  • qq_30911665
  • qq_30911665
  • 2017年06月09日 11:31
  • 986

OpenCV学习笔记(6)基于 VC+OpenCV+DirectShow 的多个摄像头同步工作

因项目需要采集2个摄像头的数据进行双目检测,一开始采用以下代码来测试:#include "stdafx.h"#include cv.h>#include cxcore.h>#include highg...
  • chenyusiyuan
  • chenyusiyuan
  • 2009年10月08日 21:05
  • 57363

OpenCV 获取摄像头并显示摄像头视频

OpenCV 获取摄像头,新建窗口显示摄像头视频 结合Leaning OpenCV 第二个例子 显示一个视屏文件  写了一下 获取摄像头的代码为并且创建窗口显示的代码为:#include "stdaf...
  • Augusdi
  • Augusdi
  • 2013年04月05日 23:25
  • 85229

图像拼接(三):OpenCV同时打开两个摄像头捕获视频

使用OpenCV实现同时打开两个USB摄像头,并实时显示视频。如果未检测有两个摄像头,程序会结束并发出“摄像头未安装好”的警告。这里推荐一个小巧的摄像头视频捕捉软件:amcap,使用它可以方便的检查每...
  • czl389
  • czl389
  • 2017年01月18日 20:13
  • 2829
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:opencv读取多个摄像头
举报原因:
原因补充:

(最多只允许输入30个字)