最近突然心血来潮,对人脸识别感兴趣了,奈何不是专业的程序猿,所以只能求助万能的度娘了。但是你懂的,网上的文章都是你抄我的,我抄你的,有的代码连我这个外行都能看出来是错的,他都好意思往上面写,估计都没有亲自试验过,所以我只有自己亲自动手了。
第一介绍一下需要的东西
1,电脑一台
2,ubuntu16.04LTS系统
注:由于本人只有一台电脑,常常需要windows环境,所以只能在虚拟机里安装了ubuntu系统,如果你也是一样,可以下载VMware虚拟机,然后自行安装系统。看到这儿,有人肯定在想能不能直接在windows下运行这个代码吗,答案是肯定可以的,下回再说。
准备完毕后开始打造我们的人脸检测系统吧。之所以说是检测而不是识别,由于经过两天的摸索,才把环境搭好,暂时保证检测人脸的程序能正常运行,至于识别还需要时间去完善代码,稍后也会放出来。
网上基于人脸识别的代码许多,很快有一个吸引了我的眼球,“基于Python的开源人脸识别库:离线识别率高达99.38%”,模型使用了C++工具箱dlib基于深度学习的最新人脸识别方法,基于户外脸部数据测试库Labeled Faces in the Wild 的基准水平来说,达到了99.38%的准确率。其项目地址为:
https://github.com/ageitgey/face_recognition#face-recognition
英语好的可以自己去看看。
为了保证我的步骤不受以前任何操作的影响,所以特地安装了全新的操作系统。
第一步:打开命令行终端,执行命令sudo apt-get update更新软件源中的所有软件列表,执行时需要你输入密码,密码输入时是不显示的,直接输入就行。

第二步:安装python的包管理工具pip,很好奇,ubuntu都已经默认安装了python2.7,为什么没有安装pip呢。在终端执行命令 sudo apt-get install python-pip

第三步:安装我们程序所需要的python模块dlib,如果直接安装会出现如下错误

这个时候我们先要安装cmake。执行命令sudo pip2 install cmake

安装完毕后我们再来安装dlib,执行命令 sudo pip2 install dlib.

这个时候可以看见,可以成功安装了,成不成功可以自己测试一下,输入命令python,进入python开发环境。然后执行import dlib看是否能成功,如果不出错就表明安装OK。
第四步 安装人脸识别模块face_recognition,这一步也很简单,执行命令sudo pip2 install face_recognition.如果不报错就表明已经安装好了,测试方法如上,在python环境输入import face_recognition,不报错就表明安装成功。

第五步 安装开源工具包opencv-python。这个主要是做人脸识别的,安装命令 sudo pip2 install opencv-python,安装成功后执行我们的代码即可。由下图可以看出,人脸被完美地检测出来了。

总结:为了执行这段代码,光搭环境就费了我一天时间,主要是在dlib的安装上,网上说是一步十跪真不是虚的。
