Dlib-19.17+vs2017配置过程

Dlib是一个机器学习库,之前做过瞳孔定位基于opencv自带的级联分类器检测人脸,但是检测侧脸效果不佳,因此换个库用一下。其实dlib的安装过程和opencv类似,但是由于DLib需要编译生成静态链接以供链接使用。

Dlib的安装过程

1.首先下载Dlib(链接
2.在vs新建工程

最好是空白工程,创建控制台工程会出现预编译的问题,创建空白工程可以设置项目属性-链接-系统-子系统-控制台,即可绑定控制台输出。
接着视图-属性管理器-Microsoft-cpp.x64.user,在这里配置x64的环境是全局有效的,无须重复配置。
Dlib-19.17+vs2017配置过程

3.接下来配置三个地方:

1.vc++ 包含目录,这个配置的作用是用#include<>时可以引用头文件,配置地址为:
C:\Software\DLIB\dlib-19.17 注意配置路径不能包含dlib,这个官网也指出了!
Dlib-19.17+vs2017配置过程
2.配置vc++ 库目录和附加依赖项,库目录就是静态链接lib所在的文件夹,静态链接需要用cmake进行编译。


Camke编译过程:
(1).设置输入输出文件夹:注意源文件写到dlib即把源码都包含进去,输出文件夹可自定义,贴一下我的文件夹目录结构,供大家参考。
Dlib-19.17+vs2017配置过程
Dlib-19.17+vs2017配置过程
(2)接下来就是点击configure选择自己编译器,generate即可,其中有什么问题可以换个DLib版本试试
(3)在bulid文件里打开dlib.sln,然后在vs里面(debug)生成解决方案,即可发现bulid文件夹下出现debug,debug下有.lib文件,即可。


配置库目录和附加依赖项,配置库目录可以在Vc++目录配置,也可以在连接器-常规-附加库目录,只要是库目录都可。配置附加依赖项在连接器-输入-附加依赖项里。
Dlib-19.17+vs2017配置过程
Dlib-19.17+vs2017配置过程

4.测试

在刚才新建的空白工程里拷贝一个Dlib官网上的example,这里还需要添加source.cpp来完成,即添加现有项引用即可,路径为./dlib/all/source.cpp,然后source.cpp设置属性,不预编译头,其次命令行添加/bigobj ,然后即可运行了
Dlib-19.17+vs2017配置过程
注意点:网上有很多配置教程,但是每个人情况环境不同,不要不加思考照搬,建议配置时还是需要多想想,对于有些解决办法需要你修改系统文件或者删除等,一定要三思后再使用,删除添加了一些东西你不知道的,可能只是目前解决了该问题; 其次在vs里配置时需要保存,保存,保存!其次在配置库目录时一定要勾选从父级项目默认项目设置,没有勾选可能出现没有找到各种.lib文件。
Dlib-19.17+vs2017配置过程

另:附上命令行编译,更加简单
首先官网给出的命令:
Dlib-19.17+vs2017配置过程
我输入的命令:

cd C:\Software\DLIB\dlib-19.17
mkdir bulid
cd bulid
cmake -G "Visual Studio 15 2017 Win64" -T host=x64 ..
***后面还有两个“..”,我用的是vs2017****
cmake C:\Software\DLIB\dlib-19.17 -DUSE_SSE2_INSTRUCTIONS=ON
cmake C:\Software\DLIB\dlib-19.17 -DUSE_SSE4_INSTRUCTIONS=ON
cmake C:\Software\DLIB\dlib-19.17 -DUSE_AVX_INSTRUCTIONS=ON
***这三个是一些优化速度可变快,官网实例有*****
cmake --build . --config Release
****完成****