我正在尝试从visual studio 2010编译一个opencv项目。我已经在vs2008中创建了,但我想从vs2010编译它。我把所有的dependecies包括在内,但是在运行过程中我收到了以下信息:
Unhandled exception at 0x7c812fd3 in myProject.exe: Microsoft C++ exception: cv::Exception at memory location 0x0011fa60..
我的源代码只是一个imread函数。所以它必须是vs2010中opencv中的安装过程。
在调试中我收到模块:opencv_highgui246.dll cannont fild或打开PDB文件。 编辑:
我的代码:
try{
Mat A;
Mat D (A, Rect(10, 10, 100, 100) );
imshow( "Display window", D );
waitKey(0);
}
catch (cv::Exception& e) {
cout << e.what() << endl;
}
我收到的是什么
OpenCV Error: Assertion failed (0 <= roi.x && 0 <= roi.width && roi.x + roi.widt
h <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows) in
unknown function, file .\src\matrix.cpp, line 323
.\src\matrix.cpp:323: error: (-215) 0 <= roi.x && 0 <= roi.width && roi.x + roi.
width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows
EDIT2:
我改变了代码:
try{
Mat image = imread("8516.jpg", 1);
imshow( "Display window", image );
waitKey(0);
}
catch (cv::Exception& e) {
cout << e.what() << endl;
}
现在我收到了未处理的错误。
答案 0 :(得分:1)
感谢编辑,显然,问题在于代码,
你想从“A”中裁剪什么,当它没有任何东西时,在你做之前加载一个图像。
Mat A = imread("something.jpg");
Mat D (A, Rect(10, 10, 100, 100) );
imshow( "Display window", D );
答案 1 :(得分:0)
您是否尝试过捕获该异常?
try {
// Your code.
}
catch (cv::Exception& e) {
cout << e.what() << endl;
}