前言
在试了大多数人介绍的方法之后,依然没有安装成功,可能是在我安装依赖库的版本上出了问题。推荐的方法基本上是以下方法,这里贴出来供大家参考:
- 安装cmake
- 安装boost
- 在cmd中输入:pip install dlib
但是我用这个方法,最后还是卡在了第三步,依然报错误:failed with initial frozen solve. Retrying with flexible solve
最后成功的方法
在参考大量的方法之后,看到这篇文章里面提到一个印度老哥的方法:dlib 安装教程(三种方法)_dlib库安装_MuMengSunny的博客-CSDN博客 ,当时留意了一下这个方法。之后又在b站刷到了这个视频:python如何安装Dlib库(超简单的方法,亲测有效)_哔哩哔哩_bilibili 看了下这两个方法应该是一样的。于是决定试试。
步骤一:
打开网站:Links for dlib,选择一个和自己python版本对应的.whl文件,比如我用的python3.6,所以我选择的最后一个:dlib-19.8.1-cp36-cp36m-win_amd64.whl,将这个文件下载下来,保存到一个文件夹(这里假设保存到了文件夹A,记住这个文件夹位置,后面要用)
步骤二:
创建一个python3.6的环境,这里为大家找了一位博主的创建环境教程:【学习笔记】基于anaconda创建python虚拟环境_Almond_02的博客-CSDN博客。进入刚刚下载的文件的路径A。比如笔者的就是F:\study_app\dlib
步骤三:
输入:pip install dlib-19.8.1-cp36-cp36m-win_amd64.whl进行安装(后面的文件名根据自己下载的文件来写)
显示Successfully installed dlib-19.8.1则安装成功,下面进行测试
步骤四:
在本环境中进入python,导入python包:import dlib,回车。如果没有报错,则安装成功:
思考总结
Dlib介绍
Dlib是一个开源的机器学习库,它提供了很多包括人脸识别等在内的算法,调用起来十分的方便高效。Dlib底层使用C++实现,它是一个跨平台的通用库。使用C++编写就决定了它具有高效简洁的特点,它被广泛运用于机器学习、人脸识别等领域。该库还附带了一个图形应用程序,以帮助创建贝叶斯网络。
在Dlib官网dlib C++ Library - Bayesian Networks中有以下描述:This application is one of the example programs, so to use it you have to compile it yourself.这就说明了官方网站提供的资源并没有编译好,这就要求使用者自行build。
本方法安装原理
在官网提供的Dlib资源是没有编译好的,需要我们自己创建编译环境,比如下载安装cmake、boost等依赖库包。然后自己手动编译安装,由于大家的运行环境不尽相同,所以经常会出现各种错误,导致无法安装成功。在上面两个博主的方法中,跳过了手动build的过程,通过已经编译好的whl文件去安装,这样可以少走很多弯路。