vs+opencv调用同一usb口的两路摄像头 5C

买了一个双目摄像头,只有一个usb口那种,支持两路设备识别和输出,我单独调用任何一路都能输出图像,但是同时调用两路显示时,第二路总是打不开,有没有哪个大佬遇到过相似的问题?怎么解决的呢?
附上我的代码:

#include

#include

using namespace cv;
using namespace std;
int main()
{
//【1】从摄像头读入视频

VideoCapture capture(2);
if(!capture.isOpened())

{cout<< "cannot open the camera.";cin.get();return -1;}
VideoCapture capture1(1);
if (!capture1.isOpened())
{
cout << "cannot open the camera1."; cin.get(); return -1;
}
while (1)
{
Mat frame; //定义一个Mat变量,用于存储每一帧的图像

Mat frame1; //定义一个Mat变量,用于存储每一帧的图像

    capture >> frame;  //读取当前帧   


    if (frame.empty())
    {
        printf("--(!) No captured frame -- Break!");
        //break;                  
    }
    else
    {
        imshow("原图", frame); //显示当前帧          
    }
capture1 >> frame1;  //读取当前帧   
    if (frame1.empty())
    {
        printf("--(!) No captured frame1 -- Break\r\n");
        //break;                  
    }
    else
    {
        imshow("原图1", frame1); //显示当前帧        
    }

    waitKey(30); //延时30ms  
}
return 0;

}

2个回答

楼主这个问题问得让人费解啊
你说的设备是一个双目摄像头,一个USB输出,那这样的情况数据肯定是串行出来的,你能够单独调出每一路的视频截图,这说明这个设备是正常工作的。
那么现在问题来了,你希望同时看到两路视频,这两路为什么不能采用分别调用的方式来解决呢?
从你的代码看,前面的定义mat做完,后面的catpture就有了一个先后之分,你声明的时候干脆一起声明啊,缩进也不一样,这个结构体不知道能不能正常实现你想表达的意思。

a776772760
工程小白 谢谢您的回复,我不太明白您的意思,我做了后文修改,还是不行啊
2 年多之前 回复

我不太明白您的意思,我这样改了只有也还是不行啊:
int main()
{
VideoCapture capture(2),capture1(1);
if (!capture.isOpened())
{ cout << "cannot open the camera."; cin.get(); return -1; }
if (!capture1.isOpened())
{ cout << "cannot open the camera1."; cin.get(); return -1;}
while (1)
{
Mat frame,frame1;
capture >> frame;
if (frame.empty())
{
printf("--(!) No captured frame -- Break!");

}
else
{
imshow("原图", frame);

}
capture1 >> frame1;
if (frame1.empty())
{
printf("--(!) No captured frame1 -- Break\r\n");

}
else
{
imshow("原图1", frame1);
}
waitKey(30);
}
return 0;
}图片说明

qq_28482225
广陵俊 同是这个问题,将两个摄像头的分辨率调成 640X360,用amcap可以同时打开,但是用opencv 只能每次单独打开一个(格式设置的是MJPG),不能同时打开,若有大佬解决还望不吝赐教,感激不尽!!!
7 个月之前 回复
weixin_43011065
weixin_43011065 回复凤歌笑楚狂: 我改了也不行
一年多之前 回复
weixin_42327053
凤歌笑楚狂 并不知道怎么回事
一年多之前 回复
weixin_42327053
凤歌笑楚狂 回复weixin_41813682: 把左右相机分辨率调小才能都显示(320,240)
一年多之前 回复
weixin_41813682
睡个没有明天的觉 老哥,请问你这个问题解决了吗? 我买的也是这家的双目摄像头,现在也是只打的开左边的,我用labview就可以两个都打开,可是用OpenCV只能打开一个。如果您知道有什么解决办法的话还请赐教,谢谢了!
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
vs+opencv调用同一usb口的两路摄像头

买了一个双目摄像头,只有一个usb口那种,支持两路设备识别和输出,我单独调用任何一路都能输出图像,但是同时调用两路显示时,第二路总是打不开,有没有哪个大佬遇到过相似的问题?怎么解决的呢? 附上我的代码: #include<opencv2/opencv.hpp> #include<cv.h> using namespace cv; using namespace std; int main() { //【1】从摄像头读入视频 VideoCapture capture(2); if(!capture.isOpened()) {cout<< "cannot open the camera.";cin.get();return -1;} VideoCapture capture1(1); if (!capture1.isOpened()) { cout << "cannot open the camera1."; cin.get(); return -1; } while (1) { Mat frame; //定义一个Mat变量,用于存储每一帧的图像 Mat frame1; //定义一个Mat变量,用于存储每一帧的图像 capture >> frame; //读取当前帧 if (frame.empty()) { printf("--(!) No captured frame -- Break!"); //break; } else { imshow("原图", frame); //显示当前帧 } capture1 >> frame1; //读取当前帧 if (frame1.empty()) { printf("--(!) No captured frame1 -- Break\r\n"); //break; } else { imshow("原图1", frame1); //显示当前帧 } waitKey(30); //延时30ms } return 0; }

树莓派opencv调用树莓派摄像头

在树莓派3上安装了opencv,用opencv去掉用usb接上的摄像头可以,但是不能获取树莓派的标准摄像头?应该怎么去设置

opencv摄像头属性调用

请教各位高手 opencv里如何调用摄像头驱动自带的“视频属性对话框”和“输入属性对话框”啊

弱弱地问一下:opencv都可以调用普通的免驱笔记本外接摄像头吗?

如题~直接cvCaptureFromCAM。。。。巴拉巴拉就可以直接调用了吗(想买个笔记本外接摄像头)

电脑通过USB调用手机摄像头

我想用droidcamx软件,使电脑通过USB连接手机,再用opencv调用手机摄像头(不知道行不行),今天晚上在米4上弄了半天,连droidcamx都没运行成功(不知道是安卓版本问题还是我哪里设置不对,哭~),求问大神行不行得通,谢谢

android设备调用外接usb摄像头进行视频问题

android设备调用外接usb摄像头,因为android设备上面没有摄像头,然后外接了一个usb 的外接摄像头,需要和其他设备进行视频。不过调用摄像头拍照可以,但是调用摄像头视频就就不行。

Linux下使用opencv打开摄像头后无法彻底关闭摄像头

Linux下使用opencv调用cvCreateCameraCapture打开摄像头后,使用cvReleaseCapture无法彻底关闭摄像头,摄像头上的灯还亮着。只有退出程序才能关闭。如果不退出的话,再次调用cvCreateCameraCapture后就无法获取图像,出现 VIDIOC_STREAMON: 错误的文件描述符。初次接触opencv,不是很了解。

opencv打开外置USB摄像头出现问题,请问是怎么回事

出现的错误见图片,程序中断后就停在那了![![图片说明](https://img-ask.csdn.net/upload/201707/21/1500622369_348965.png)图片说明](https://img-ask.csdn.net/upload/201707/21/1500622360_134663.png) ![图片说明](https://img-ask.csdn.net/upload/201707/21/1500622578_799941.png) 完整程序如下: ``` #include <cstdio> #include <cv.h> #include <highgui.h> #include<iostream> using namespace std; using namespace cv; int main() { IplImage *frame = NULL; IplImage *pDstImg = NULL; CvCapture *capture1 = cvCaptureFromCAM(1); cvSetCaptureProperty(capture1 , CV_CAP_PROP_FRAME_WIDTH , 320); //寻找膛口质心时获取像素较少的图片 cvSetCaptureProperty(capture1 , CV_CAP_PROP_FRAME_HEIGHT , 240); char fileName[100]; char key; int count = 0; waitKey(3000); while(1) { frame = cvQueryFrame(capture1); pDstImg = cvCreateImage( cvSize(frame->width, frame->height), IPL_DEPTH_8U, 3); /*****添加的程序段:将图像画面旋转180度--仿射变换****/ double angle = 180; CvPoint2D32f center = cvPoint2D32f(frame->width/2.f,frame->height/2.f); float m[6]; CvMat map_matrix = cvMat( 2, 3, CV_32F,m); cv2DRotationMatrix(center,angle,1.0,&map_matrix); cvWarpAffine (frame, pDstImg, &map_matrix); cvCopy(pDstImg, frame); /****到此为止****/ cvFlip(frame, NULL, 1); //水平翻转图像,像照镜子一样,不想要这个效果可以去掉此句 key = cvWaitKey(50); if(key == 27) break; //按ESC键退出程序 if(key == 'p') //按p键拍照 { sprintf(fileName, "Picture %d.jpg", ++count); //生成文件名 cvSaveImage(fileName, frame); cvXorS(frame, cvScalarAll(255), frame); //将拍到的图像反色(闪一下形成拍照效果) cvShowImage("相机",frame); cvWaitKey(10); //反色图像显示ms } cvShowImage("相机",frame); // cvShowImage("相机",pDstImg); } cvReleaseCapture(&capture1); return 0; } ``` ,这个程序之前还能用的,今天运行就出现这个问题了,

C++代码如何实现调用前置摄像头呢?

WIN8平板有两个摄像头,现在每次使用openCV调用到的只是后置的摄像头,请问各位大神如何调用前置的摄像头呢?有木有demo参考一下呢?

用opencv3调用摄像头对摄像头的图像进行保存,需要键控

各位大神,我现在需要用opencv保存摄像头中的图像,但是需要键控选择保存自己想要的图片。 我用的是VS2013

OpenCV如何打开多个不同接口的摄像头

通过OpenCV的类VideoCapture如何将PCIe采集卡的摄像头跟USB摄像头区别开来,打开指定的摄像头。

笔记本opencv调用手机摄像头

如何用笔记本opencv编程调用手机摄像头 1、笔记本可以用蓝牙连接手机调用摄像头吗?要如何做?(需要什么驱动编程还是什么软件?) 2、用数据线连接手机调用?(需要什么驱动编程还是什么软件?) 谢谢大家~

用opencv和vs2017打开双目摄像头,求解?

在笔记本上用opencv和vs2017打开一条usb连接的双目摄像头时,试了很多方法,但都只能打开一个,另一个总是打开自带的摄像头。求解。

opencv打开IP网络摄像头

想用opencv2.4.9+QT接收一个wifi模块传回的视频,根据网上的资料和实际情况,编写如下:const string addr="http://192.168.1.1:8080/?action=stream.mjpg"; VideoCapture cap(addr); -------------------------- 但是就是读不出来,我用浏览器可以显示视频,请问前辈们有遇到这种情况的么,是因为什么地方配置不对吗?还请指教

求助,关于opencv 打开gige basler摄像头并调节摄像头参数的程序

#include "cv.h" #include "highgui.h" int main(int argc, char** argv) { cvNamedWindow("win"); CvCapture* capture = cvCreateCameraCapture(1); IplImage* frame; while(1) { frame = cvQueryFrame(capture); if(!frame) break; cvShowImage("win", frame); char c = cvWaitKey(50); if(c==27) break; } cvReleaseCapture(&capture); cvDestroyWindow("win"); return 0; } 以上程序打开gige摄像头闪退,求大神编写一段打开gige basler摄像头的程序,如果能带上调节像素、曝光时间的代码就更好了。

opencv2.4.8打开摄像头失败

各位大神好! 不知道有没有谁之前使用opencv2.4.8可以正常打开USB摄像头的? 我使用的是vs2013+opencv2.4.8 系统是win8中文版,用opencv打开摄像头时怎么无法打开 获取摄像头的指针为空,很是纠结,

用opencv调用摄像头,然后根据视频图像变化,获得摄像头运动轨迹可以怎么做?

用opencv调用摄像头,然后根据视频图像变化,获得摄像头运动轨迹可以怎么做?最好有程序

求助vs mfc opencv 做一个能显示摄像头的窗口

各位大神好,我是一名即将大三的学生,老师要求我做一个窗口,能打开摄像头, 捕捉图片里的物体,并找到物体的中心点,然后传给机械手臂将物体抓起来, 现在一头雾水,请问还剩一周能完成吗?该从哪入手,各位大牛,走过路过给点小建议, 小弟感激不尽。。

CVI怎么调用opencv的库打开摄像头

我一开始想把在opencv打开摄像头的lib以及所用到的.h,都添加进去,但是,有些库找也找不到。然后又想在VS中生成动态链接库去调用,生成的.h文件里面还包含.hpp文件,一直弄不来,请大佬们指教一下。

opencvUSB摄像头打不开

一段二维码识别的代码,在vs2010下配置opencv后,正常运行,但在eclipse下配置好opencv后却打不开摄像头。之后用QQ视频测试过,摄像头能正常开启。 **以下是我打开USB摄像头的代码** *#include "MarkerDetector.h" #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <iostream> #include <bitset> #include "opencv/cv.h" #include <unistd.h> using namespace cv; int main(void) { //CvCapture* capture = cvCreateCameraCapture(-1); //CvCapture* capture = cvCaptureFromCAM(0); //if (!capture) // { // std::cout << "can't open cam!" << std::endl; // return -1; // } VideoCapture camCapture(0); printf("0\n"); camCapture.set(CV_CAP_PROP_FRAME_WIDTH, 340); camCapture.set(CV_CAP_PROP_FRAME_HEIGHT, 240); printf("1\n"); usleep(2000); if (!camCapture.isOpened()) { std::cout << "can't open cam!" << std::endl; return -1; }* 输出为 0 1 can't open cam! 然后,又用了其他几个函数打开摄像头,也是报错:can't open cam! 所以比猜测,代码应该没有问题,可能是其他方面的原因。 运行平台: vmware ubnutu eclipse opencv2.4.9 有网上说是驱动的问题,不是很理解,希望大家有空帮忙看看

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

150讲轻松搞定Python网络爬虫

150讲轻松搞定Python网络爬虫

实用主义学Python(小白也容易上手的Python实用案例)

实用主义学Python(小白也容易上手的Python实用案例)

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

立方体线框模型透视投影 (计算机图形学实验)

计算机图形学实验 立方体线框模型透视投影 的可执行文件,亲测可运行,若需报告可以联系我,期待和各位交流

2019 AI开发者大会

2019 AI开发者大会

组成原理课程设计(实现机器数的真值还原等功能)

实现机器数的真值还原(定点小数)、定点小数的单符号位补码加减运算、定点小数的补码乘法运算和浮点数的加减运算。

C/C++跨平台研发从基础到高阶实战系列套餐

一 专题从基础的C语言核心到c++ 和stl完成基础强化; 二 再到数据结构,设计模式完成专业计算机技能强化; 三 通过跨平台网络编程,linux编程,qt界面编程,mfc编程,windows编程,c++与lua联合编程来完成应用强化 四 最后通过基于ffmpeg的音视频播放器,直播推流,屏幕录像,

MFC一站式终极全套课程包

该套餐共包含从C小白到C++到MFC的全部课程,整套学下来绝对成为一名C++大牛!!!

软件测试2小时入门

软件测试2小时入门

三个项目玩转深度学习(附1G源码)

三个项目玩转深度学习(附1G源码)

计算机图形学-球的光照模型课程设计

计算机图形学-球的光照模型,有代码完美运行,有课程设计书

Linux常用命令大全(非常全!!!)

Linux常用命令大全(非常全!!!) 最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考: 系统信息 arch 显示机器的处理器架构 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 d...

因为看了这些书,我大二就拿了华为Offer

四年了,四年,你知道大学这四年我怎么过的么?

深度学习原理+项目实战+算法详解+主流框架(套餐)

深度学习系列课程从深度学习基础知识点开始讲解一步步进入神经网络的世界再到卷积和递归神经网络,详解各大经典网络架构。实战部分选择当下最火爆深度学习框架PyTorch与Tensorflow/Keras,全程实战演示框架核心使用与建模方法。项目实战部分选择计算机视觉与自然语言处理领域经典项目,从零开始详解算法原理,debug模式逐行代码解读。适合准备就业和转行的同学们加入学习! 建议按照下列课程顺序来进行学习 (1)掌握深度学习必备经典网络架构 (2)深度框架实战方法 (3)计算机视觉与自然语言处理项目实战。(按照课程排列顺序即可)

fakeLocation13.5.1.zip

fakeLocation13.5.1 虚拟定位 ios13.5.1的最新驱动下载,iPhone/iPad免越狱虚拟定位工具Location-cleaned驱动已更新

UnityLicence

UnityLicence

Python可以这样学(第一季:Python内功修炼)

Python可以这样学(第一季:Python内功修炼)

Python+OpenCV计算机视觉

Python+OpenCV计算机视觉

土豆浏览器

土豆浏览器可以用来看各种搞笑、电影、电视剧视频

【数据结构与算法综合实验】欢乐连连看(C++ & MFC)案例

这是武汉理工大学计算机学院数据结构与算法综合实验课程的第三次项目:欢乐连连看(C++ & MFC)迭代开发代码。运行环境:VS2017。已经实现功能:开始游戏、消子、判断胜负、提示、重排、计时、帮助。

php+mysql学生成绩管理系统

学生成绩管理系统,分三个模块:学生,教师和管理员。 管理员模块:负责学生、老师信息的增删改;发布课程信息的增删改,以便让学生选课;审核老师提交的学生成绩并且打印成绩存档;按照课号查询每个课号的学生成绩

多功能数字钟.zip

利用数字电子计数知识设计并制作的数字电子钟(含multisim仿真),该数字钟具有显示星期、24小时制时间、闹铃、整点报时、时间校准功能

推荐24个国外黄色网站欣赏

在中国清朝,明黄色的衣服只有皇子才有资格穿,慢慢的黄色在中国就成了高贵的颜色。在人们的色彩印象中,黄色也表现为暂停。所以当你的网页设计采用黄色的时候,会让人们在你的网页前停留。 黄色,就像橙色和红色,黄色也是一个暖色。它有大自然、阳光、春天的涵义,而且通常被认为是一个快乐和有希望的色彩。黄色是所有色相中最能发光的颜色,给人轻快,透明,辉煌,充满希望的色彩印象。 黄色是一个高可见的色...

u-boot-2015.07.tar.bz2

uboot-2015-07最新代码,喜欢的朋友请拿去

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

学生成绩管理系统(PHP + MYSQL)

做的是数据库课程设计,使用的php + MySQL,本来是黄金搭配也就没啥说的,推荐使用wamp服务器,里面有详细的使用说明,带有界面的啊!呵呵 不行的话,可以给我留言!

Windows版YOLOv4目标检测实战:训练自己的数据集

Windows版YOLOv4目标检测实战:训练自己的数据集

C++语言基础视频教程

C++语言基础视频教程

玩转Python-Python3基础入门

玩转Python-Python3基础入门

相关热词 c#怎么获得线程名 c# usb 采集器 c# sort() c#面对对象的三大特性 c# 打印 等比缩放 c#弹出右键菜单 c# 系统托盘图标 c# 键值对 键可以重复 c# 鼠标移上去提示 c#结构体定义
立即提问