本篇文章给大家分享的是有关Dlib在VS2015上的编译和配置是怎么样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
一、Dlib简介
Dlib是基于现代C++的一个跨平台通用的框架,作者非常厉害而且非常勤奋,一直在保持更新。最近作者忙于更新dnn方面的内容,虽然我觉得dnn的接口非常不友好。Dlib内容非常丰富,包括但不仅限于机器学习、图像处理、数值算法、数据压缩等等,更重要的是,Dlib的文档非常完善,例子非常丰富。
Dlib提供的人脸检测比OpenCV的人脸检测模型更好用。而且Dlib提供了OpenCV没有的人脸关键点检测方法(现在有了,刚出现在contrib模块里)和基于深度学习的人脸识别工具。而且提供了比OpenCV更加完善的机器学习和深度学习的模块。而且可以和OpenCV结合使用,二者的图像可以方便地转换。我曾基于dlib尝试过很多关于人脸的程序:人脸检测、人脸关键点提取、颜值预测、换脸算法和人脸识别。
二、编译Dlib
之前也曾介绍过Python下dlib的编译安装方法,但是用Python调用dlib需要先编译boost。非常麻烦,还是用C++更简单一些。但是虽说简单,如果没有找对教程的话,也许会更加麻烦。我当初找到的dlib的配置方法,Visual studio配置dlib太复杂了。打开个JPG或者PNG图片就得把整整三个文件夹的内容(包括上百个文件)添加到项目里。简直不能忍。就是下面这三个。大部分的教程都是这么说的。官网也有提到这这种方法。
dlib/external/libjpeg dlib/external/libpng dlib/external/zlib
不知道大家是怎么认为的,反正我觉得这样很反人类。当年我的习惯是遇到问题问度娘,然后看一些中文的解决方案。现在的习惯慢慢变成了去官网,看官方文档。今天按照官方文档重新配置了一下。感觉利索多了。而且用cmake的命令行简直比GUI爽太多了。
有兴趣的可以直接去官网看官方的教程:How to compile。我这里记录一下我自己的配置过程。大致跟官方介绍一样。
-
首先还是要有cmake,而且要添加到环境变量。这一步如果没有
camke
,需要去官网下一个。最好下载安装版的而不是压缩版的,安装版的安装的时候会让你选择是否添加环境变量,选择添加。不然下载压缩版的还得自己手动添加环境变量然后重启电脑才能用。 -
然后在dlib-版本号文件夹(比如dlib-19.7)下打开命令提示符(shift加右键),用下面的命令,相对于官方的略有改动:
mkdir build cd build cmake -G "Visual Studio 14 2015 Win64" .. cmake --build . --config Release
这里有两点注意事项
(1)一定要vs 2015或者更高的版本,据说之前的版本对于C++11的支持不够好。
(2)build的时候一定要是Release模式。因为Debug模式超级!超级!慢!亲测。参考:Why is dlib slow?
build完成之后会在/dlib-19.7/build/dlib/Release文件夹下生成dlib.lib。至此编译完成。比用cmake-gui简单多了!
三、Visual Studio配置Dlib
配置visual studio 2015,新建一个项目,我这里命名为dlib_01。
(1)打开项目属性,配置包含目录,直接上图(用的当年的老图):
(2)配置连接器——输入——附加依赖项:
(3)为了打开jpg图片还要加上 DLIB_JPEG_SUPPORT
,后面那个是为了加速。同样的,如果要打开png图片,还得加一个 DLIB_PNG_SUPPORT
。
上面三项配置之后就完成了,就可以自己写程序或者运行dlib自带的examples程序了。但是官方自带的程序都是命令行运行的,如果要在vs中运行需要稍作修改,把命令行参数修改为具体的文件名或者路径。试了一个人脸检测和人脸关键点检测的例子。效果还行。
以上就是Dlib在VS2015上的编译和配置是怎么样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
原创文章,作者:bd101bd101,如若转载,请注明出处:https://blog.ytso.com/223883.html