前言:编程小白,很多专业名词都拿不准,但是一直在学习,最近需要搭建OpenCV 开发环境环境,由于搭建过程中走了很多弯路,虽然最终在一个大神1号博客指引下完成了搭建,但是大神1号的介绍不够完善,中途又借鉴了大神二号的文章,这里我把两个大神的文章整合,希望给大家一些借鉴,共同学习。
正文:
1、我的环境:
操作系统:Windows 10 64位
IDE: Visual studio Community 2015
OpenCV: OpenCV 3.0 for windows(下载地址:http://opencv.org/)
2、首先安装好VS 和 OpenCV
(1) OpenCV的安装:进入OpenCv官网以后,在标题栏找到release(发布)点进去,找到3.0.0版本,下载sources和winpack两项自己创建的文件夹中(建议放C盘)
3、配置OpenCV相关的环境变量:
鼠标右击桌面上的“我的电脑(This PC)"==》属性(properties)==》高级系统设置(Advanced system settings)==》环境变量(environmental variables)==》先选中系统变量(syetem variables)下的Path,然后编辑(Edit),再新建,输入内容举例:C:\opencv\build\x86\vc12\bin” 划重点:x86、vc12
(这里需要注意,添加环境的时候千万不要直接new……,要Edit,然后再新建(new),否则则你会哭……当然大神忽略这个little tip)
4、新建一个C++的win32控制台项目
这里需要先将一个前提,我的vs2015和c++有关的东西已经在安装的时候已经选好了,但是我当时很菜跟网上走下来稀里糊涂九OK了,也不是很了解相关过程,这里我直接讲怎么搭建控制台
打开Vs2015,最上面任务栏点击工程(project)==》新建项目(add new item)弹出窗口如下:
设置完毕,点添加(add),具体设置如下二图:
5、修改上面新建项目的相关配置。
步骤如下:
(1)工程(project)==》属性(properties)==》配置属性==》VC++目录(VC++Directories)==》包含子目录(Include Directories)下依次添加如下路径:(窗口实例在下面)
C:……\opencv\build\include
C:……\opencv\build\include\opencv
C:……\opencv\build\include\opencv2
(注意:这三条路径所指向的东西就是你们最开始下载的openvc中的Win pack中的一些文件的路径,具体地址根据你们自己的安装地址来)
(2)添加Liberary path(库目录):
D:\opencv\build\x86\vc12\lib
D:\opencv\build\x86\vc12\staticlib
(3)链接器(liner)--输入(input)--附加依赖项(additional dependencies):
opencv_ts300.lib
opencv_world300.lib
6,完成上述步骤,环境基本就可以使用了,此时新建一个cpp文件来运行我们的第一个demo。由于我也是新手,所以网上随手找个一个项目:
- //显示图像文件
- #include <opencv2/opencv.hpp>
- using namespace std;
- #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
- int main()
- {
- const char *pstrImageName = "IMG_0897.JPG";
- const char *pstrWindowsTitle = "OpenCV第一个程序";
- //从文件中读取图像
- IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);
- //创建窗口
- cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE);
- //在指定窗口中显示图像
- cvShowImage(pstrWindowsTitle, pImage);
- //等待按键事件
- cvWaitKey();
- cvDestroyWindow(pstrWindowsTitle);
- cvReleaseImage(&pImage);
- return 0;
- }
- //显示图像文件
- #include <opencv2/opencv.hpp>
- using namespace std;
- #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
- int main()
- {
- const char *pstrImageName = "IMG_0897.JPG";
- const char *pstrWindowsTitle = "OpenCV第一个程序";
- //从文件中读取图像
- IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);
- //创建窗口
- cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE);
- //在指定窗口中显示图像
- cvShowImage(pstrWindowsTitle, pImage);
- //等待按键事件
- cvWaitKey();
- cvDestroyWindow(pstrWindowsTitle);
- cvReleaseImage(&pImage);
- return 0;
- }