我正在处理我的项目,突然间我发现我无法连接我的网络摄像头了!问题是,它在Windows x64中工作正常,但当我将项目更改为x32时,它开始出现问题。当我运行代码时,它表现完全随机! 70%的时间它会转到capture = cvCaptureFromCAM(0);
命令,但它永远不会出现在该命令中,25%的时间它完成命令但是捕获仍然是0,并且5%的时间它工作正常(有时当我重新启动窗户时)。我确定网络摄像头连接正确,因为我可以看到电影制作人的网络摄像头,看到网络摄像头拍摄视频就好了(我在运行程序前关闭电影制作人,所以没有别的东西连接到它!)
我有这个简单的代码,但正如我所说,它在第2行中无法正常工作。是什么导致了这个问题?注意:正在使用opencv版本2.4.2。
#include <opencv2\opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
CvCapture* capture = 0;
capture = cvCaptureFromCAM(0);
Sleep(1000);
int q;
cin>>q;
if(!capture)
{
printf("Could not initialize capturing...\n");
return -1;
}
IplImage* frame = 0;
frame = cvQueryFrame(capture);
cvShowImage("video", frame);
int c = cvWaitKey(20);
cvReleaseCapture(&capture);
return 0;
}