在this问题之后,我发现OpenCV给了我这个错误:
尝试运行此控制台代码后启动 C:\ Users \用户尼古拉\文档\集结ConsoleTry-Desktop_Qt_5_5_0_MSVC2013_64bit-调试\调试\ ConsoleTry.exe ... C:\ Users \ nikola \ Documents \ build-ConsoleTry-Desktop_Qt_5_5_0_MSVC2013_64bit-Debug \ debug \ ConsoleTry.exe退出,代码为-1073741701
:
#include <QCoreApplication>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/opencv.hpp>
using namespace::cv;
using namespace::std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
const char* filename = "1-page.png";
// cout << filename << endl;
cout << "111" << endl;
Mat src = imread(filename, 0);
cout << "222" << endl;
return a.exec();
}
如何解决?我已经在调试目录中复制了DLL文件。在this answer中提到了Mat对Qt QImage的对话需求。是这种情况还需要转换其他对象吗?
从cmd启动.exe时的结果。
答案 0 :(得分:2)
Micka是对的 - 它确实需要highgui,所以我将所有.dll文件从D:\ opencv_2411 \ opencv \ build \ x64 \ vc12 \ bin复制到调试目录。我有hadeaches因为在此之前我从Visual Studio 2013项目目录中复制了所有.dll文件,但它们是x86,而QT项目是x64。谢谢你们!!!如果有人仍有问题,请参阅this主题。