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摄像头的主要内容,如果未能解决你的问题,请参考以下文章