ubuntu14.04配置face_recognition环境
Github项目地址:https://github.com/MiChongGET/face_collection
环境搭建
1. 环境
- ubuntu14.04 LTS
- python2.7
- 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
- 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(默认版本)
- git clone https://github.com/davisking/dlib.git //Clone the code from github
- cd dlib
- mkdir build
- cd build
- cmake .. -DDLIB_USE_CUDA= -DUSE_AVX_INSTRUCTIONS= //以AVX指令的方式编译dlib
- cmake --build .
- cd ..
- sudo python setup.py install --yes USE_AVX_INSTRUCTIONS --no DLIB_USE_CUDA
- 注:最后一步需要等待一些时间。如果使用python3.x版本,最后一步命令python改为python3
版本2(版本1不成功,请试下版本2)
- git clone https://github.com/davisking/dlib.git //Clone the code from github
- cd dlib
- mkdir build
- cd build
- cmake .. //以默认方式(SSE41指令)编译dlib
- cmake --build .
- cd ..
- 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,通过了。。。没有报错。。。然后我并没有进行其他操作。
注意:后期运行程序时,发现报了这个问题,但并不耽误使用,请看截图:
Q2:在安装face_recognition时遇到一个问题:“from pkg_resources import resources_filename”,往前翻,发现需要安装一个distributed包,这里pip装了一下:“pip install distributed”,装完重新运行python,执行import face_recognition,执行成功。
ubuntu14.04配置face_recognition环境的更多相关文章
- Ubuntu14.04配置gcc4.4.4+Qt4.8.4交叉编译环境
安装32位程序运行支持 sudo apt-get install lib32stdc++6 lib32z1 lib32ncurses5 lib32bz2-1.0 可能报错: lib32stdc++6 ...
- Caffe+CUDA7.5+CuDNNv3+OpenCV3.0+Ubuntu14.04 配置参考文献 以及 常见编译问题总结
Caffe+CUDA7.5+CuDNNv3+OpenCV3.0+Ubuntu14.04 配置参考文献 ---- Wang Xiao Warning: Please make sure the cud ...
- Caffe+CUDA8.0+CuDNNv5.1+OpenCV3.1+Ubuntu14.04 配置参考文献 以及 常见编译问题总结
Caffe + CUDA8.0 + CuDNNv5.1 + OpenCV3.1 + Ubuntu14.04 配置参考文献 ---- Wang Xiao Anhui University CVPR ...
- ubuntu14.04建立交叉编译环境, 注意事项
ubuntu14.04建立交叉编译环境, 注意事项 ~$ arm-linux-gcc/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: e ...
- ubuntu16.04配置java环境(重启后不会失效)
ubuntu16.04配置java环境(重启后不会失效) 1.jdk的安装包(.tar.gz)拷贝到/opt目录下 mv jdk-8u144-linux-x64.tar.gz /opt 2.解压文件 ...
- ubuntu14.04 配置网络
ubuntu14.04 配置网络的练习 本文参考的资料: https://blog.csdn.net/liu782726344/article/details/52912797. 感谢作者的分享! 打 ...
- ubuntu14.04配置中文latex完美环境(texlive+texmaker+lyx)
Ubuntu下的文档编辑虽然有libreoffice,但对中文和公式的排版始终不如ms office,因此要想写出高质量的文档,只能靠latex了,现在随着xeCjk的开发,中文文档在ubuntu下的 ...
- ubuntu14.04 配置android studio环境
二.复制所需的文件到ubuntu 2.1.如果你还没有linux版本的android studio.sdk.jdk请先下载所需文件,我已经上传到百度网盘了 下载地址: android studio-l ...
- Ubuntu14.04配置Mono+Jexus
总所周知,ASP.NET是微软公司的一项技术,是一个网站服务端开发的一种技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们,就是所谓动态网站开发,它依赖运行于 IIS 之中的程序 .但 ...
随机推荐
- Unity 着色器
Unity中定义了很多种Shader类型,同样的Shader类型我们可以自定义,需要用到ShaderLab着色语言. 一个3D图形是怎样显示在我们的视觉? 3D数据文件-----3D显示程序----- ...
- java linux sdk1.8
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-co ...
- (线段判交的一些注意。。。)nyoj 1016-德莱联盟
1016-德莱联盟 内存限制:64MB 时间限制:1000ms 特判: No通过数:9 提交数:9 难度:1 题目描述: 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们 ...
- rownum查询前N条记录
在Oracle中,要按特定条件查询前N条记录,用个rownum就搞定了.——select * from emp where rownum <= 5 而且书上也告诫,不能对rownum用" ...
- python csv与字典操作
# encoding: utf-8 import csv d1 = {'banana':3,'apple':4,'pear':1,'orange':2} d2 = {'banana':3,'orang ...
- mysql性能分析工具
一.EXPALIN 在SQL语句之前加上EXPLAIN关键字就可以获取这条SQL语句执行的计划 那么返回的这些字段是什么呢? 我们先关心一下比较重要的几个字段: 1. select_type 查询类型 ...
- 剑指Offer_编程题_3
题目描述 输入一个链表,从尾到头打印链表每个节点的值. /** * struct ListNode { * int val; * struct ListNode *next; * ListNode(i ...
- 网络编程基础【day10】:操作系统介绍
一.为什么要有操作系统 现代的计算机系统主要是由一个或者多个处理器,主存,硬盘,键盘,鼠标,显示器,打印机,网络接口及其他输入输出设备组成. 一般而言,现代计算机系统是一个复杂的系统. 其一:如果每位 ...
- mysql关联模糊查询他表字段
如下:订单表关联了用户的id(多个),要根据用户名模糊查询订单信息,但是订单表只有id.创建视图用不着,咱也没权限.于是如下 SELECT * FROM ( SELECT cu.id AS 'id', ...
- Oracle数据库用户锁定原因以及处理方式(ORA-28000)
现场在实施过程中,基于安全考虑(用户名和密码之前暴露给其他公司了),需要对用户密码进行修改. 修改过程很简单(alter user [username] identified by [password ...