ubuntu14.04配置face_recognition环境

时光毁灭记忆、已成空白 提交于 2020-04-26 04:50:37

Github项目地址:https://github.com/MiChongGET/face_collection

环境搭建

1.  环境

  1. ubuntu14.04 LTS
  2. python2.7
  3. pip

  注:ubuntu14.04自带python2.7.6和python3.4,因此不再重新安装python。我这里使用python2.7,但需要更新一下python 2.7至python2.x

命令如下:

  sudo add-apt-repository ppa:fkrull/deadsnakes-python2.7
  sudo apt-get update
  sudo apt-get upgrade

 

2.    face_recognition简介

  基于face_recognition人脸识别库,实现人脸检测及人脸识别。face_recognition,使用dlib的最先进的人脸识别技术构建深度学习。该模型的准确率为99.38%。

 

3.  部署环境步骤

  • 人脸检测基于dlib,dlib依赖Boost和cmake
参考链接:https://github.com/ageitgey/face_recognition/issues/120
Installing Boost, Boost.Python, and X11 can be accomplished easily with
$ sudo apt-get install build-essential cmake
$ sudo apt-get install libgtk-3-dev
$ sudo apt-get install libboost-all-dev

注:如安装失败,请sudo apt-get update后重试;另,可以更新源为国内源(阿里源or网易源)。

 Installation of Cmake:(it tooks a while to install ~1.5 min)

1 sudo wget  https://cmake.org/files/v3.9/cmake-3.9.0-rc5.tar.gz -O cmake.tar.gz
2 sudo tar -xvf cmake.tar.gz
3 cd cmake-3.9.0-rc5/
4 sudo chmod +x bootstrap
5 sudo ./bootstrap
6 sudo make
7 sudo make install

注:安装好cmake后,输入cmake -version查看cmake版本是否安装成功。

 pip installation

$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py

注:安装完成后,终端输入pip -V查看pip版本是否安装成功。
注:如果使用python3.x版本,最后一步命令python改为python3

 

  • 下面通过手动编译dlib的方式进行安装dlib

版本1(默认版本)

1 git clone https://github.com/davisking/dlib.git     //Clone the code from github
2 cd dlib
3 mkdir build
4 cd build
5 cmake .. -DDLIB_USE_CUDA=0 -DUSE_AVX_INSTRUCTIONS=1  //以AVX指令的方式编译dlib
6 cmake --build .
7 cd ..
8 sudo python setup.py install --yes USE_AVX_INSTRUCTIONS --no DLIB_USE_CUDA

注:最后一步需要等待一些时间。如果使用python3.x版本,最后一步命令python改为python3

版本2(版本1不成功,请试下版本2)

1 git clone https://github.com/davisking/dlib.git  //Clone the code from github
2 cd dlib
3 mkdir build
4 cd build
5 cmake ..                          //以默认方式(SSE41指令)编译dlib
6 cmake --build .
7 cd ..
8 sudo python setup.py install
注:最后一步需要等待一些时间。如果使用python3.x版本,最后一步命令python改为python3
 

 安装完成后,运行python,输入

import dlib

此时执行成功。

 

  • 安装face_recognition
$ sudo pip install face_recognition

注:需要加sudo,之前没有加,后期遇到权限不足的问题,加了sudo,问题解决,成功安装。

安装完成后,运行python,输入

import face_recognition

此时执行成功。

 

  • 安装opencv-python
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

注意,simple 不能少, 是 https 而不是 http

参考链接:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

测试:运行python,输入

import cv2

通过即导入opencv成功。

 

4.  测试

  •  读取图片-人脸检测

  • 读取摄像头视频流-实时检测并识别人脸

5.  遇到问题

Q1:在安装dlib的时候,用的是版本1,运行python,输入import dlib,遇到“Dlib was compiled to use AVX instructions, but these aren't available on your machine.”的问题,中文翻译“Dlib编译为使用AVX指令,但这些指令在您的机器上不可用。”。于是换用版本2,运行python,输入import dlib,又遇到“Dlib was compiled to use SSE41 instructions, but these aren't available on your machine.”的问题,中文翻译“Dlib编译为使用SSE41指令,但这些指令在您的机器上不可用。”。

于是网上各种查资料,大概意思是你的机器不支持这种指令的编译方式,(我的机器是服务器建立的虚拟机(ubuntu14.04LTS)),本以为虚拟机的原因不能运行程序,过了一会重新运行python,输入import dlib,通过了。。。没有报错。。。然后我并没有进行其他操作。

参考链接:https://stackoverflow.com/questions/49348999/dlib-was-compiled-to-use-sse41-instructions-but-these-arent-available-on-your

注意:后期运行程序时,发现报了这个问题,但并不耽误使用,请看截图:

 Q2:在安装face_recognition时遇到一个问题:“from pkg_resources import resources_filename”,往前翻,发现需要安装一个distributed包,这里pip装了一下:“pip install distributed”,装完重新运行python,执行import face_recognition,执行成功。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!