我安装了OpenCV 2.4.10并将其配置为我的Visual Studio2010。甚至我也在opencv(c)中的代码下运行

我在opencv中的代码:

#include "opencv\highgui.h"
int main(int argc, char** argv)

{
IplImage* img =cvLoadImage("d:\\1.jpg",CV_WINDOW_AUTOSIZE);

    cvNamedWindow("example1", CV_WINDOW_AUTOSIZE);

    cvShowImage("Example1", img);

    cvWaitKey(0);

    cvReleaseImage(&img);

    cvDestroyWindow("Exame1");
}


它可以工作,但是当我尝试使用opencv2(c ++)此处给出的代码时,却给出了一个错误(中断)

我在opencv2中的代码:

#include "opencv2\opencv.hpp"

using namespace cv;
int main()

{
    Mat image = imread("d:\\1.jpg", CV_LOAD_IMAGE_COLOR);

    namedWindow("test", WINDOW_AUTOSIZE);

    imshow("test", image);

    waitKey(0);

    return 0;
}


错误(中断):


  o.exe中0x7624c41f(KernelBase.dll)处未处理的异常:Microsoft C ++异常:内存位置0x0035f63c处cv :: Exception。


为什么只在opencv2中出现此错误?

我想使用opencv2

最佳答案

您将必须根据所使用的opencv .dll文件的构建信息来验证是否在调试/发布模式下进行构建。

关于c++ - 使用opencv2的加载镜像中的OpenCv未处理异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41039043/

10-11 22:44