face_recognition环境配置及命令行工具测试

因为某种不可抗力(又是它!)我写了这篇博客,主要目的是记录。html

face_recognition是啥子?

face_recognition号称世界上最简单的人脸识别库,可以使用 Python 和命令行进行调用。该库使用 dlib 顶尖的深度学习人脸识别技术构建,在户外脸部检测数据库基准(Labeled Faces in the Wild benchmark)上的准确率高达 99.38%。也提供了一个简单的face_recognition命令行工具,可让你从命令行对图像文件夹进行脸部识别!python

简单来讲,主要实现如下几个功能:git

  • Find faces in pictures
  • Find and manipulate facial features in pictures
  • Identify faces in pictures

这里是GitHub主页及文档:github

环境配置

readme有提到:数据库

  • Python 3.3+ or Python 2.7
  • macOS or Linux (Windows not officially supported, but might work)
  • dlib already installed with Python bindings

这里提一下第三点,意思是你的dlib库要安装Python模块。机器学习

  1. Python&pip环境:
    Mac自带Python2.7.10,这个无论,安装Python3能够用brew install python,默认安装Python3(带pip3)
    若是用Python2的话是不会带pip的,由于后面须要用因此得安装pip2,使用sudo easy_install pip安装,这里记住必定要用sudo权限。
Searching for pip
Reading https://pypi.python.org/simple/pip/
Best match: pip 10.0.1

pip的安装会自动匹配适合你的系统的版本,安装好以后能够查看一下pip信息:工具

localhost:~ mac$ pip --version
pip 10.0.1 from /Library/Python/2.7/site-packages/pip-10.0.1-py2.7.egg/pip (python 2.7)
  1. 安装dlib
    我是用gitclone安装的:
    git clone https://github.com/davisking/dlib.git
    下载以后按照步骤安装便可(没有cmake百度安装):
cd dlib/examples
mkdir build
cd build
cmake .. 
cmake --build . --config Release


到这里只是安装好了默认的C++库,咱们还须要安装Python模块:学习

cd dlib
sudo python setup.py install
python
import dlib


注意必定要进Python里面import:

完事以后重启一下终端。测试

  1. 安装face_recognition
    用pip安装(install this module from pypi using pip3 (or pip2 for Python 2))
    pip2 install face_recognition
    我默认环境是Python2,我就用pip2了。
    而后就是等待,速度很慢,而且……

    ???下的慢也有错我也是无语了,这个问题的解决办法有两个:
  • 加长超时时间:pip --default-timeout=100 install -U pip
  • 修改源(换成国内源):临时源,使用参数-i:pip2 install face_recognition -i https://pypi.tuna.tsinghua.edu.cn/simple
    先是使用了第一个方法,每秒几十K,仍是超时了,因此建议你们直接用第二个办法,指定临时源,清华的超快!

    别高兴的太早,看到红色部分的报错了吗?Permission Denied(拒绝访问),缘由是在安装pillow的时候没有权限,因此我建议在安装以前使用sudo或者再后面添加--user(表示只是本用户安装)

    看到Successfully installed Click-6.7 face-recognition-1.2.2 face-recognition-models-0.3.0这就没错了。
    check一下,使用命令行:

    ENJOY!!!!

测试

下面咱们来进行测试,按照readme实例,咱们新建两个文件夹,一个放须要识别的人,一个放咱们认识的人。

咱们在命令行中输入命令:
face_recognition ./known_people/ ./unknown_people/
等待几秒钟:

成功!ui

后面我又测试了几组,发现这个API对亚洲人种的识别并非很是精确。

参考资料

相关文章
相关标签/搜索