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對亞洲人種的識別並不是非常精確。

參考資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM