PS:我也是错了好多次,在网上看各种方法,最后还是决定自己写,借鉴了很多前辈们的经验
一、下载好opencv2.4.10 , VS2012
二、计算机->属性->高级系统设置->环境变量->Path
在Path路径下,添加D:\软件\opencv\opencv\build\x86\vc11\bin(32位系统,只加X86,若为64位系统,则加D:\软件\opencv\opencv\build\x64\vc11\bin(记得用英文半角下的分号隔开)红色标出的地方,是我的绝对路径,你要根据自己opencv在哪里放着,而定)
三、在VS下新建项目,视图(工具栏)—>属性管理器—>右击Debug | Win32—>添加新属性列表,名opencv2.4.10
右击—>属性—>VC++目录
包含目录: D:\软件\opencv\opencv\build\include
库目录: D:\软件\opencv\opencv\build\x86\vc11\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
#include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; int main() { Mat img=imread("pic.jpg");//读入一张图片 namedWindow("Test"); //创建一个名为Test窗口 imshow("Test",img); //窗口中显示图像 waitKey(5000); //等待5000ms后窗口自动关闭 }然后一般会出现领个问题:
解决方法:
查了好久也不知道错在哪里,最后终于找到问题的原因了。原来是imread的路径不对。imread不支持相对路径(我把图片放在工程里还是失败),只支持绝对路径,并且不支持“\”路径分隔符,支持“\\”, “/”或"//"分割符。
就是因为这样的问题已经困扰了我快一个星期,也是自己爱拖拉,不过好在现在解决了,是一个收获。