问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

dlib库,怎么在python中安装

发布网友 发布时间:2022-04-24 19:46

我来回答

2个回答

热心网友 时间:2022-04-18 07:09

这几天刚好用到Python,其中用到了Dlib库的人脸对齐算法。python中需要用到import dlib.pyd文件,这个文件需要用python对dlib源码进行编译生成。
具体的生成步骤如下:
1. 安装boost库
本人用的是boost_1_61_0版本,在这里简单说下安装步骤,具体的方法可以参考网上其它人的博客。
也可参考本文博文《windows下使用bjam安装Boost》。安装完成之后,记得配置环境变量。
2. 用python的CMD窗口,进入到dlib库的目录下,输入命令:python setup.py install.
如果提前配置好了boost库,并且把生成的boost_python-vc120-mt-1_61.dll和boost_python-vc120-mt-gd-1_61.dll两个文件放到python目录下。
还需要配置cmake的环境变量,../cmake/bin添加在系统环境变量path里,否则出错:cannot find cmake in the path.
成功编译后,会在../dlib/dist/dlib/目录下找到生成的dlib.pyd文件,把该文件拷贝放到python目录下的Lib\site-packages\下面,这样就完成了python编译dlib库的工作。
注意:在用python进行dlib编译时,可能因为python版本的问题,在Lib\distutils\log.py文件中编译出错
UnicodeEncodeError: 'gbk' codec can't encode character u'\x9' in position...的问题。
stream.write('%s\n' % msg) ///源文件
修改方法:stream.write('%s\n' % msg.decode('gbk')),即可编译通过。这是python2.7版本中的gbk和unicode编解码的原因造成的。
注意:上面的方法本人成功编译过一次,但是后来又有问题。总是显示"Could Not Found Boost."(期间卸载了电脑上的vs2008和vs2010,仅保留vs2013).
后来,借鉴了其他网友的方法如下:
首先,添加系统变量 BOOST_ROOT = D:\boost_1_59_0 和 BOOST_LIBRARYDIR = D:\boost_1_59_0\stage\lib。然后打开cmd,进入到boost目录,输入以下指令编译python library(我的python是32位,因此address-model=32):

编译python库生成两个lib文件:libboost_python-vc120-mt-s-1_61和libboost_python-vc120-mt-sgd-1_61,复制到...\stage\lib目录下面。
再键入命令:python setup.py install,显示如下:

不过按下面这种方式编译dlib,对于32位的笔记本需要把stream.write('%s\n' % msg.decode('gbk'))恢复为原来的stream.write('%s\n' % msg). 而在64位的PC机上,保留下面的修改的方法:stream.write('%s\n' % msg.decode('gbk'))stream.flush()并且在python的Lib\site-packages文件夹下新建一个sitecustomize.py,内容为:import sys
reload(sys)

sys.setdefaultencoding('utf8') #set default encoding to utf-8
两台机器上都可以编译成功。
Ps:在win7系统下用python编译dlib,花了我两天时间去琢磨调试,上面的经验需要的朋友请拿去进一步整理,以免浪费不必好的时间。有问题的童鞋请在下面留言。

热心网友 时间:2022-04-18 08:27

dlib的安装很头疼我自己折腾了好几星期才成功 要讲的话很多所以写在了word里
链接:https://pan.baidu.com/s/1J-5W__7xJ1PPHv549aqZQQ 密码:w74z
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小白开始做牛腩烧番茄前,应该做哪些准备? 普洱茶不管是纯料还是拼配它本身就很有意思 普洱茶的纯料VS拼配,谁更值得珍藏? 为什么我们听到熟悉的歌曲的音乐会感觉在唱歌词呢? abs制动防抱死系统什么时候用到 请问有谁知道离朝阳北路的煊特嘉园(炫特区)最近的浩沙健身俱乐部在哪 ... 朝阳北苑郊野公园有哪些 北苑哪些公园 北京北苑健身有哪些 王者荣耀黄忠开大怎么转圈 android 怎么实现人脸检测效率高 微信发红包怎么设置指纹支付? python pip 安装dlib一直失败? 我的微信怎么没有指纹支付 dlib 人脸识别 出的 信息怎么存储成xml 为什么我的手机微信红包没有指纹支付? 一个小白怎么学习人脸识别技术啊 微信红包突然不能指纹支付了,怎么办? 有一张人脸的侧脸图像,如何用python及相关的库来计算人脸转过的角度... 如何使用dlib库 微信红包突然不能指纹支付了。怎么办 怎么让DLIB的人脸检测提高速度 如何用dlib实现人脸检测 目前在公司里是为常用的3D效果图渲染软件是什么? 像下面这种简单的3D效果图是用什么软件做的?好弄吗? 有没有好的3D展示平台或者是好用的3D渲染软件? 3D动画渲染软件哪个有中文界面 3D动画渲染最快的是什么软件?收费的不要 在3DMAX中,渲染最好的软件用什么? 3dmax效果图云渲染哪个软件好用?功能全面的 为什么我的微信红包没有指纹设置? 可以不用openCV,用C++写一个简单的人脸识别程序么 微信红包怎样才能一键指纹发红包? 黑科技DeepFake,上线五天就遭全球唾弃,究竟有多邪恶? [python]机器学习库dlib中,编译器无法识别dlib.image_window()怎么办... 微信红包支付怎么感应不到指纹 可以用Python编程语言做哪些神奇好玩的事情? 黄桥烧饼做法,烧饼面的和发技巧。 苹果6微信红包指纹识别怎么弄 怎么在Anaconda中安装dlib库? 用魅族mx5微信发红包,怎样设置用指纹支付? 虹软的人脸识别sdk有一年的试用期,一年之后用不了了怎么办 黄桥烧饼烤箱多少度? 谁知道烧饼怎么做的呢? 黄桥烧饼的味道描写 为什么唐僧总是三番五次的误会孙悟空? 《西游记》中的唐僧几次三番误会了孙悟空,他是真糊涂吗? 在西游记中,唐僧冤枉了孙悟空多少次? 为何三次被唐僧误解的孙悟空,却还是最终的受益者? 唐僧误解责怪孙悟空,念紧箍咒,将赶回花果山,体现了唐僧的什么?