【发布时间】:2014-10-18 11:23:47
【问题描述】:
我已经做了很多尝试,但我似乎无法让简单的代码工作。我已正确安装所有库,包含路径正确,我已尝试使用 Visual Studio 2012,现在使用的是 2010。出于某种原因,这可行:
IplImage* img1 = cvLoadImage("C:\\Users\\Mota\\Documents\\Visual Studio 2010\\Projects\\Stabilization\\Stabilization\\Law.jpg");
img1 加载正确。
但是,如果我尝试使用 C++:
Mat img = imread("C:\\Users\\Mota\\Documents\\Visual Studio 2010\\Projects\\Stabilization\\Stabilization\\Law.jpg");
然后我的应用程序崩溃并显示一条消息“OpenCV 错误:断言失败(大小......) 所以使用相同的路径,我有两个不同的结果。我一直在这个问题上一段时间了,有人知道我能做什么吗?我的 C++ 库有问题吗? 视频或任何需要从文件加载的内容也是如此。
谢谢
【问题讨论】:
-
imread() 将 std::string 作为参数。请检查,如果您正在链接正确的 opencv 库(调试/发布)。这绝对是链接器问题。
-
是的,路径是正确的,是一个字符串 "C:\\Users\\Mota\\Documents\\Visual Studio 2010\\Projects\\Stabilization\\Stabilization\\Law.jpg"
-
我的库如下
-
opencv_core249.lib opencv_imgproc249.lib opencv_highgui249.lib opencv_ml249.lib opencv_video249.lib opencv_features2d249.lib opencv_calib3d249.lib opencv_objdetect249.lib opencv_contrib249.lib opencv_legacy249.lib opencv_flann249.lib opencv_calib3d249d.lib opencv_contrib249d.lib opencv_core249d.lib opencv_features2d249d.lib opencv_flann249d.lib opencv_gpu249d.lib opencv_highgui249d.lib opencv_imgproc249d.lib opencv_legacy249d.lib opencv_ml249d.lib opencv_nonfree249d.lib opencv_objdetect249d.lib opencv_photo249d.lib opencv_stitching249d.lib opencv_video249d.lib opencv_videostab249d.lib 跨度>
-
不要不混合调试/发布库
标签: c++ image visual-studio-2010 opencv visual-studio-2012