cvCreateCameraCapture(设备ID)
创建一个摄像机视频,返回值是CvCapture*类型。设备ID表示设备的编号,如果有多个摄像机设备,-1表示随机选择一个设备。
#include "cv.h"
#include "highgui.h"
int main(int argc, char **argv){
cvNamedWindow("hello", CV_WINDOW_AUTOSIZE);
CvCapture *capture;
if(argc == 1){
capture = cvCreateCameraCapture(0);
}else{
capture = cvCreateFileCapture(argv[1]);
}
//assert(capture != NULL); 在加上这句后程序会死掉,可能是打开相机是capture还没来得及传参数
IplImage *frame;
while(1){
frame = cvQueryFrame(capture);
if(!frame){
break;
}
cvShowImage("hello", frame);
char c = cvWaitKey(10);
if(c == 27){
break;
}
}
cvReleaseCapture(&capture);
cvDestroyWindow("hello");
return 0;
}