按照毛星云的教程OpenCV 2.4.10 + VS2010:
http://blog.csdn.net/poem_qianmo/article/details/19809337
使用OpenCV2.3.2 document上的教程读入图片:
http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/introduction/load_save_image/load_save_image.html
运行输出No image data。
使用毛星云帖子中的测试代码:
- #include<iostream>
- #include <opencv2/core/core.hpp>
- #include <opencv2/highgui/highgui.hpp>
- using namespace cv;
- int main()
- {
- // 读入一张图片(游戏原画)
- Mat img=imread("pic.jpg");
- // 创建一个名为 "游戏原画"窗口
- namedWindow("游戏原画");
- // 在窗口中显示游戏原画
- imshow("游戏原画",img);
- // 等待6000 ms后窗口自动关闭
- waitKey(6000);
- }
R6010.
OpenCV Error: Assertion failed (size.width>0 && size.height>0) in cv::imshow, fi
le ..\..\..\..\opencv\modules\highgui\src\window.cpp, line 261
请按任意键继续. . .
imshow错误,原因是其实imread读入图片失败。
解决方法:
debug下“链接器”->“输入”->“附加依赖项”中输入应该把release下的lib去掉,带d的是debug的lib,不带d的是release的lib,debug下opencv 2.4.10的lib应该只包括:
opencv_ml2410d.lib
opencv_calib3d2410d.lib
opencv_contrib2410d.lib
opencv_core2410d.lib
opencv_features2d2410d.lib
opencv_flann2410d.lib
opencv_gpu2410d.lib
opencv_highgui2410d.lib
opencv_imgproc2410d.lib
opencv_legacy2410d.lib
opencv_objdetect2410d.lib
opencv_ts2410d.lib
opencv_video2410d.lib
opencv_nonfree2410d.lib
opencv_ocl2410d.lib
opencv_photo2410d.lib
opencv_stitching2410d.lib
opencv_superres2410d.lib
opencv_videostab2410d.lib