Я недавно установил OpenCV 2.4.7 и настроил его на мой Visual Studio 2010 Ultimate язь ... я даже протестировали код для отображения изображения ...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);
}
и его работает, но когда я пытаюсь использовать код VideoCapture данную here, он дает ошибку ..
#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;
}
Необработанное исключение в 0x75dc812f в myNewOpenCv1.exe: Microsoft C++ исключение: резюме :: Exception в ячейке памяти 0x0019 f6d8
Я не знаю, связана ли проблема с установкой или нет. Я очень новичок в OpenCV и не знаю многого, поэтому, если кто-то, кто хорошо привык к этому, может исправить эту ошибку для меня, а также дать мне объяснение, почему это произошло, и руководство в этом было бы здорово.
Надеюсь, ждем ваших ответов - Джонатан -
Вы установили путь dll opencv в настройках 'path'? –
Вы имеете в виду переменные окружения, да ... я добавил opencv \ build \ x86 \ vc10 \ bin в переменную пути ... но он не работает, пожалуйста, помогите мне –
ok, тогда попробуйте что-нибудь еще, перед обработкой проверка кадра не является «пустым» или «NULL». сохранить блок обработки внутри 'if' и посмотреть, что произошло? –