OpenCV imread读取图片失败

环境:vs2013 + opencv2.4

目的:读取一张灰度图像并显示

存在问题:工程运行不存在问题,但是读取图像的时候,无论使用相对路径,绝对路径总是读取图片失败!

解决方案:在配置opencv时候,把H:\InstallFiles\opencv\build\x86\vc12\lib中的.lib文件全部放到了 链接器-》附加依赖项中了。而我工程实在debug下编译的,在debug下,opencv只需要*d.lib,。如果全部加载进来,*.lib会在*d.lib之前,这样就优先使用*.lib。所以,解决方案就是把附加依赖项中open的*.lib全删了。

OpenCV imread读取图片失败_第1张图片

实测代码:

		string path = TRAIN + "\\" +traindata.imgPath;
		//cout << path << endl;
		Mat img = imread(path, CV_LOAD_IMAGE_GRAYSCALE);
		if (img.empty())
		{
			cout << "读取图像失败!" << endl;
			return ;
		}
		namedWindow("MyWindow", WINDOW_AUTOSIZE);
		imshow("MyWindow", img);
		cvWaitKey(0);


结果:

OpenCV imread读取图片失败_第2张图片

你可能感兴趣的:(OpenCV)