opencv如何打开usb摄像头

Posted

tags:

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

想用opencv打开电脑上usb摄像头拍照,但是却总是打开的电脑自带摄像头。网上说要cvCreateCameraCapture(int index)或者cvCaptureFromCAM(int index)里面设置参数,但那个index到底应该是多少才能选择上usb摄像头啊?
我试了几个数,打开的都是自带摄像头或者直接就程序出错。
我的是xp下vs2008。cvcamGetCamerasCount()函数貌似用不了,编译的时候提示找不到标识符。

我为什么就是打不开摄像头额?

#include"cv.h"

#include"highgui.h"

#include"iostream"

using namespace std;


int main(int argc,char* argv[])

CvCapture* cap;

cap=cvCaptureFromCAM(1);

if(!cap)

cout<<"create camera capture error"<<endl;

system("pause");

exit(-1);

cvNamedWindow("img",1);

IplImage* img;

while(1)

img=cvQueryFrame(cap);//捕获相机的视频帧,并进行解码操作

if(!img)

break;

if(img->origin==IPL_ORIGIN_TL)//如果图片原点在左上角,将其沿X轴翻转,使左下角

cvFlip(img,img);

cvShowImage("img",img);

cvWaitKey(3);

cvReleaseCapture(&cap);

cvDestroyAllWindows();

cvReleaseImage(&img);

return 0;

总出现下面提示:

 

参考技术A 我用的是WIN7+VS2010+OPENCV2.1
用cvCreateCameraCapture(0)或者cvCreateCameraCapture(-1)打开的都是电脑自带的摄像头
用cvCreateCameraCapture(1)打开的就是外置的USB摄像头
参考技术B 参数设为1
设为0一般是默认自带的摄像头
参考技术C 你是否包含了#include <cvcam.h>这个头文件呢

以上是关于opencv如何打开usb摄像头的主要内容,如果未能解决你的问题,请参考以下文章

opencv怎么打开usb摄像头

opencv不能打开USB摄像头问题

opencv3.0摄像头打开问题

请教opencv能同时打开3个USB摄像头,但4个不能同时打开

opencv怎样打开自己笔记本的摄像头

OpenCV 打开USB摄像头帧率低问题解决