我遇到一个奇怪的问题,我无法使用cv::imread
从文件系统中读取基本图像文件。因此,下面的结果是imageInput有空数据,行和列设置为0。
cv::Mat imageInput = cv::Mat();
imageInput = cv::imread("abc.jpg",cv::IMREAD_COLOR);
有趣的是,在注释掉上面的代码后,下面的代码能够读取iamge:
//cv::Mat imageInput = cv::Mat();
//imageInput = cv::imread("abc.jpg",cv::IMREAD_COLOR);
IplImage *rImg;
rImg = cvLoadImage("abc.jpg", CV_LOAD_IMAGE_COLOR);
rImg
的宽度为3296,高度为2256
我无能为力这是怎么回事。请帮忙。
在这两种情况下,构建似乎都很好。我尝试使用opencv-2.4.5和opencv-2.4.6
答案 0 :(得分:0)
我现在能够找出问题。
问题是提到了发布构建静态库而不是debug-build静态库
在VC ++项目早期,我在调试模式中包含以下lib依赖项:opencv_core245.lib;opencv_highgui245.lib;opencv_imgproc245.lib;opencv_video245.lib
将其更改为opencv_core245d.lib;opencv_highgui245d.lib;opencv_imgproc245d.lib;opencv_video245d.lib
后,我可以使用imread读取图片而不会出现任何问题。