この質問に似た他の投稿をここで見たことがあり、ゴーグルして、記載されているすべての可能な方法を試してみましたが、どちらもうまくいきませんでした。次のコードは、ウェブカメラから画像を無限にキャプチャするためのものであり、コードは正常に構築され、エラー「エラー: キャプチャは NULL です」が発生します。
opencv2.2.0 は Windows 7 でサポートされていますか? ウィンドウ 7 でのビデオ キャプチャにダイレクト ショーを使用することが言及されている多くの投稿を見てきました。
#include<opencv/cxcore.h>
#include<opencv/highgui.h>
#include<opencv/cxcore.h>
#include<stdio.h>
#include<stdlib.h>
int main(int argc,char* argv[])
{
CvSize size640x480 = cvSize(640,480);
CvCapture* p_capWebcam;
IplImage* p_imgOriginal;
p_capWebcam=cvCaptureFromCAM(0);//i tried p_capWebcam=cvCaptureFromCAM(CV_CAP_ANY)
//i tried index from -1 to 10 but nothing worked
if(p_capWebcam==NULL)
{
printf("error:capture is NULL");
getchar();
return -1;
}
cvNamedWindow("Original",CV_WINDOW_AUTOSIZE);
while(1)
{
p_imgOriginal=cvQueryFrame(p_capWebcam);
if(p_imgOriginal=NULL)
{
printf("error :frame is NULL \n");
break;
}
cvWaitKey(10);
cvShowImage("Original",p_imgOriginal);
}
}
IDE は Microsoft Visual C++ 2010 Express、
Webcamera(Frontech) usb2.0 は以下のフォーマットに対応しています