初学人脸识别,感觉安装也是一个很大的麻烦。
写在这里记录一下吧
一:先安装好我们需要的软件
首先安装Vs2015,在官网或者csdn搜一下应该找的到。
安装步骤没有太多讲究。
点击exe文件,我选择的是默认安装,你也可以自定义安装。
然后在opencv官网安装opencv3.2
然后根据自己所需要的用处选择,我选的是windows
然后就是下载安装包。
解压到你想解压的地方就可以了,opencv就是一些文件。
这里还有一个步骤就是用cmake编译出x86的文件,opencv默认是有x64位的,所以这个不用考虑。
但是我弄了很久都没有弄出来。所以是直接拿着别人编译好的x86文件放到自己的opencv/bulid文件下,等以后有空再去琢磨看看吧。作为初学者还是只能先搬搬
具体参考这个文章http://m.blog.csdn.net/wwwsssZheRen/article/details/73252651
这样我们就有了x64和x86
第二步:配置环境变量
软件都安装好了后,就是环境变量的配置了。
这里打开环境变量:依旧是在系统变量的Path里面添加如下:
D:\opencv3.2\opencv\build\x64\vc14\bin;
D:\opencv3.2\opencv\build\x86\vc14\bin;
opencv3.2的环境变量:这里D:\opencv3.2是我存放opencv的安装路径
第三步:添加
接下来就是在Vs2015中添加依赖项了
打开Vs2015-》新建一个项目-》如图
OK了然后在头文件->右键-》添加-》新建项
接下来就是重点了
主要分三块
备注:我安装opencv的目录就是D:/opencv3.2
包含目录主要填的是
D:\opencv3.2\opencv\build\include\opencv2
D:\opencv3.2\opencv\build\include\opencv
D:\opencv3.2\opencv\build\include
库目录就是
D:\opencv3.2\opencv\build\x64\vc14\lib
附加依赖项:对于x64位只需要添加
opencv_world320.lib
opencv_world320d.lib
同样的道理对于win32也就是x86上述是一样的设置,不一样的就是
附加依赖项
opencv_calib3d320d.lib
opencv_core320d.lib
opencv_world320.lib
opencv_world320d.lib
opencv_features2d320d.lib
opencv_flann320d.lib
opencv_highgui320d.lib
opencv_imgcodecs320d.lib
opencv_imgproc320d.lib
opencv_ml320d.lib
opencv_objdetect320d.lib
opencv_photo320d.lib
opencv_shape320d.lib
opencv_stitching320d.lib
opencv_superres320d.lib
opencv_video320d.lib
opencv_videoio320d.lib
opencv_videostab320d.lib
opencv_calib3d320.lib
opencv_core320.lib
opencv_features2d320.lib
opencv_flann320.lib
opencv_highgui320.lib
opencv_imgcodecs320.lib
opencv_imgproc320.lib
opencv_ml320.lib
opencv_objdetect320.lib
opencv_photo320.lib
opencv_shape320.lib
opencv_stitching320.lib
opencv_superres320.lib
opencv_video320.lib
opencv_videoio320.lib
opencv_videostab320.lib
自此,配置就完成了。我们随便写一个程序来测试一下吧。
#include
#include
using namespace cv; //下面的所有cv相关类型不用加上前缀了
int main(int argc, char* argv[])
{
Mat img = imread("2.jpg"); //声明Mat变量并调入lena的照片
if (!img.data) //判断图片调入是否成功
return -1; //调入图片失败则退出
//创建窗口,并确定其为大小不可变类型窗口
namedWindow("loveLena", CV_WINDOW_AUTOSIZE);
//显示图片。如果你不介意窗口大小可变,可以直接注释掉上一句。因为imshow可以直接创建窗口
imshow("loveLena", img);
waitKey(); //等待按键
return 0;
}
运行结果如下: