Dlib 是一个机器学习库,采用C++编写(提供C++和python接口),里面包含 许多常用机器学习算法。
Dlib 目前已更新到 V19.2。下载及文档可以参见 官网地址: http://www.dlib.net/ml.html
一. 编译
下载的dlib库解压后,需要通过CMake进行编译,在windows下作者采用的是 CMake3.5.1。
选择 源码位置(source code)和 编译位置(binaries)后 依次选择configure->Generate进行编译和生成(编译后生成一个文件 dlib.lib)。
注:V19.2版本需要C++11支持,对应VS2015以上版本。
二. 测试例
dlib 提供了丰富的算法例子,包含 3D点云、SURF特征、贝叶斯分类、SVM、深度学习、多种回归 等算法,也包含Thread、Timer、XML、Socket、Sqlite 等 底层基本工具,有时间的话大家可以仔细跑一遍例子看看。
作为入门级实例,作者采用 Face LandmarkDetection人脸对齐的例子进行说明(当然有很多人喜欢 上面的Face Detection或者GUI)。
人脸对齐的代码比较简单,通过注释也能够看到其采用的是 HOG+线性分类器,人脸对齐 采用了 2014年的一篇CVPR:
One Millisecond Face Alignment with an Ensemble of Regression Trees by Vahid Kazemi and Josephine Sullivan, CVPR 2014
PS:这篇文章号称速度极快(单人脸关键点耗时约为1ms)ÿ