我最近安装的OpenCV 2.4.7,并将其配置为我的Visual Studio 2010 IDE终极...我甚至测试代码来显示图像...OpenCV的 - 在Videocapture
#include "opencv2/highgui/highgui.hpp"
#include "iostream"
using namespace cv;
using namespace std;
int main()
{
Mat im = imread("d:/lena.jpg");
if (im.empty())
{
cout << "Cannot load image!" << endl;
return -1;
}
imshow("Image", im);
waitKey(0);
}
,它作品,但是当我尝试使用给予here的videocapture代码,它给出了一个错误..
#include "opencv2/opencv.hpp"
using namespace cv;
int main(int, char**)
{
VideoCapture cap(0); // open the default camera
if(!cap.isOpened()) // check if we succeeded
return -1;
Mat edges;
namedWindow("edges",1);
for(;;)
{
Mat frame;
cap >> frame; // get a new frame from camera
cvtColor(frame, edges, CV_BGR2GRAY);
GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5);
Canny(edges, edges, 0, 30, 3);
imshow("edges", edges);
if(waitKey(30) >= 0) break;
}
// the camera will be deinitialized automatically in VideoCapture destructor
return 0;
}
在myNewOpenCv1.exe未处理的异常在0x75dc812f:微软C++异常:内存位置0x0019 CV ::异常f6d8
我不知道它是否与安装有问题。我对OpenCV非常陌生,不太了解,如果熟悉这个的人可以为我解决这个错误,并且给我一个解释,为什么会发生这种情况,并且在这方面的指导会很棒。
希望等待着你的答案 - 乔纳森 -
你在'path'设置中设置了opencv dll路径吗? –
你的意思是环境变量,是啊...我添加了opencv \ build \ x86 \ vc10 \ bin到路径变量中......但它不起作用,请帮助我 –
确定然后再尝试其他的东西,在处理之前该框架检查它不是“空”或“NULL”。把你的处理块放在'if'里面,看看发生了什么? –