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

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

face_recognition是啥子?

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

简单来说,主要实现以下几个功能:

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

这里是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/
等待几秒钟:

成功!

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

参考资料

posted @ 2018-05-19 21:02  blackay03  阅读(3771)  评论(0编辑  收藏  举报
Live2D
*/