如今是人工智能时代,人脸识别也是一大应用。我们的手机人脸解锁、火车站人脸识别检票、公积金查询的人脸识别登陆等等,总之,用处很是广泛。那么人脸识别是怎么完成的?这里你肯定要说一些复杂的算法,不用,Python的开源库Face Recognition帮助你实现操作。据说识别率达到99.38%,这肯定是一件很有趣的事情,下面我们来看看如何实现吧。
![0c4f56a672a142ba559ed7a1a4e3e80e.png](https://i-blog.csdnimg.cn/blog_migrate/21896e02cee580712c404bfc6a4fd70f.jpeg)
人工智能时代
在写文章之前,可以说是经历了千辛万苦。因为这个模块的安装很是复杂,到处都是坑,总之,用了大半天的时间才成功导入模块,如果看了本文,有想大胆尝试的小伙伴在安装过程中出现问题了,欢迎私信沟通。
准备工作
- windows10
- Pycharm
- Python
- Visual Studio 2017
- Face Recognition
一、Python安装
这个相对来说最简单的,直接官网下载安装包(win64),然后按照步骤,点击安装,这步简单不多说了。注意的是安装的时候勾选自动添加环境变量,不然解释器没法解释,安装完成就生成了Python解释器。
![2bd60180bedf7b9b7f23ba4ea9355245.png](https://i-blog.csdnimg.cn/blog_migrate/5459aff164a8231ad11b5f0ba2ef73ae.jpeg)
Python解释器
二、Pycharm安装
同上,官网下载安装包后一键安装,选择安装路径。安装完成后有重要的一步就是选择解释器,不然,我们写的代码没有办法运行。
![6a93417d7a51af8cdf51e56ed189f9cb.png](https://i-blog.csdnimg.cn/blog_migrate/0493f11fe08a177c909fbc5a4d9db044.jpeg)
在Pycharm上选择Python解释器
三、Visual Studio 2017安装
我们直接在终端执行pip install face_recognition会报错。报错信息主要就是dlib安装失败,因为face_recognition依赖dlib,而dlib又需要CMake去编译。最可靠的方法我们就是去安装Visual Studio 去解决,我安装的是Visual Studio 2017。安装要注意的是勾选C++相关的选项,因为我们下载的目的就是安装windows版的CMake。这里说一下,VS自带CMake,不需要单独下载。
![31e1672670e57257d4195d077f2d1f2f.png](https://i-blog.csdnimg.cn/blog_migrate/dbe769ab96b5740929bef0215697b705.jpeg)
Visual Studio 2017安装
将VS的库和cl、CMake以及相关头文件加入系统环境变量,否则还会找不到,安装报错。windows添加环境变量这个不难吧。这里涉及到的相关路径如下:
C:Program Files (x86)Microsoft Visual Studio2017CommunityCommon7IDECommonExtensionsMicrosoftCMakeCMakebinC:Program Files (x86)Microsoft Visual Studio2017CommunityVCToolsMSVC14.16.27023binHostx64x64C:Program Files (x86)Microsoft Visual Studio2017CommunityCommon7IDEVCLinuxincludeusrincludeC:Program Files (x86)Microsoft Visual Studio2017CommunityVCAuxiliaryBuildC:Program Files (x86)Microsoft Visual Studio2017CommunityVCToolsMSVC14.16.27023bin
当我们在终端输入命令正常执行则安装成功。如下图所示:
![543f4bfb3b54e23eda1a3a30adfa40d6.png](https://i-blog.csdnimg.cn/blog_migrate/d8572d3957c3912fec656af2a1f96413.jpeg)
cl、CMake安装完毕
开始安装Face Recognition了吗?不,还需要一步,那就是安装boost,官网上进行下载。然后三步执行命令,在执行命令之前,先运行一下vcvars64.bat,文件路径为C:Program Files (x86)Microsoft Visual Studio2017CommunityVCAuxiliaryBuild,然后安装下边的步骤来操作。
- 执行bootstrap.bat
- 执行 b2 install,这步我等了两个小时,请耐心等待!
- 执行 b2 -a --with-python address-model=64 toolset=msvc runtime-link=static
- 将生成的库加入环境变量,我的是C:甥敳獲ZXDDownloadsboost_1_70_0stagelib
- 再次执行vcvars64.bat
四、Face Recognition安装
命令行输入pip install face_recognition安装。我这里是先下载的dlib tar包手动安装完成再安装face_recognition,其实可以直接安装的,只不过速度要快一些,pip搜索到dlib包下载太慢。我的dlib版本是dlib-19.17.0,face_recognition版本是face-recognition-1.3.0。
![02ff528ebe99d32d3394bca4c127fa36.png](https://i-blog.csdnimg.cn/blog_migrate/ed017ed3c7a44a4436e1b024ec7fd7fc.jpeg)
face_recognition成功安装
Face Recognition方法理解
一、将图像文件(.jpg、.png等)加载到numpy数组中
face_recognition.api.load_image_file(file, mode='RGB')
file:要加载的图像文件名或文件对象。
mode:转换图像的格式,仅支持“RGB”(8位RGB,3个通道)和“L”(黑白)。
返回:图像内容作为数字阵列,即元组存储数据。
二、返回图像中人脸的边框数组
face_recognition.api.face_locations(img, number_of_times_to_upsample