face_recognition是一款免费、开源、实时、离线的Python人脸识别库。Github网址为https://github.com/ageitgey/face_recognition。如安装Anaconda可直接跳到第二步,dlib会自动获取。

Windows系统安装dlib可直接在网站https://pypi.org/simple/dlib/  下载对应版本的whl文件,用pip安装,简单高效。

1.安装dlib

安装face_recognition需要首先安装dlib。看网上教程需要编译dlib库,感觉比较麻烦。这里使用conda安装dlib。这anaconda.org上搜索到dlib19.9版本的安装命令为 conda install -c menpo dlib

由于ubuntu系统没有安装conda,因此需要安装,通过pip方式安装conda会提示问题,也会提示去下载miniconda,下载对应系统的版本,我这里下载了Miniconda2-latest-Linux-x86_64.sh。复制到home目录下,这终端中输入命令安装

sh Miniconda2-latest-Linux-x86_64.sh

安装完成后重启终端并输入如下命令切换镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

其次再输入安装dlib的命令即 conda install -c menpo dlib。等待一段时间完成安装dlib,网速越好下载越快等待时间越短。

 conda install -c menpo dlib 

2.安装 face_recognition

安装完dlib后安装face_recognition,命令如下,这次等待的时间需要几十分钟。

pip install face_recognition

3.安装完成

4.试用

(1)从本地读图片并使用face_recognition和opencv识别人脸并标注显示

#读取照片并圈出人脸
import numpy as np
import cv2
import face_recognition
image = face_recognition.load_image_file("mypic.jpg")
#return (A,B,C,D)(top, right, bottom, left) (D,A,B,C)
face_locations = face_recognition.face_locations(image)
print(face_locations)
image1=image*1
image1[:,:,0]=image[:,:,2]
image1[:,:,2]=image[:,:,0]
for (A,B,C,D) in face_locations:cv2.rectangle(image1,(D,A),(B,C),(0,255,0),2)
cv2.imshow('image',image1)
cv2.waitKey(0)
cv2.destroyAllWindows()

图片来源网络,侵删

(2)从摄像头读取图像并显示

#摄像头读取并识别人脸
import numpy as np
import cv2import face_recognition
cap=cv2.VideoCapture(0)
while True:ret,frame=cap.read()#return (A,B,C,D)(top, right, bottom, left) (D,A,B,C)face_locations = face_recognition.face_locations(frame)for (A,B,C,D) in face_locations:cv2.rectangle(frame,(D,A),(B,C),(0,255,0),2)cv2.imshow('image',frame)if cv2.waitKey(1)& 0xFF == ord('q'):break
cap.release()
cv2.destroyAllWindows()

(3)人脸比对

#人脸比对,单对单的比对,和多对单的比对
import numpy as np
import cv2
import face_recognition
zhujun=face_recognition.face_encodings(face_recognition.load_image_file('zhujun.jpg'))
dongqing=face_recognition.face_encodings(face_recognition.load_image_file('dongqing.jpg'))
#ss=face_recognition.compare_faces([dongqing,lisisi],zhujun)
#hezhao=face_recognition.face_encodings(face_recognition.load_image_file('mypic.jpg'))
#ss=face_recognition.compare_faces(hezhao,lisisi,0.5)
hezhao=face_recognition.load_image_file('mypic.jpg')locations=face_recognition.face_locations(hezhao)
for [A,B,C,D] in locations:face=hezhao[A:C,D:B,:]faceencoding=face_recognition.face_encodings(face)ss=face_recognition.compare_faces(faceencoding,zhujun[0],0.5)print(ss)

输出结果,compare_faces的第三个参数越小表示要求的精度更高

人脸识别库face_recognition安装简单教程相关推荐

  1. 人脸识别库face_recognition安装(Windows系统)

    windows系统安装 1.安装vistual studio (因为face_recognition中依赖的库在windows中需要很多插件所以直接安装vistual studio里面有完整的开发环境 ...

  2. face-recognition库(人脸识别库)安装,使用

    一,起因 1,在某hub上下载了所谓"最简单的人脸识别项目". 2,开始了face-recognition的安装之路. 3,人脸识别在win10上的使用,识别图像上面的人脸. 二, ...

  3. 人脸识别开源库face_recognition的简单介绍

    人脸识别开源库face_recognition的简单介绍 原文出处: https://blog.xugaoxiang.com/ai/face-recognition-cnn.html 软硬件环境 ub ...

  4. Python人脸识别教程 - 基于Python的开源人脸识别库:离线识别率高达99.38%

    Python人脸识别教程 - 基于Python的开源人脸识别库:离线识别率高达99.38% 仅用 Python 和命令行就可以实现人脸识别的库开源了.该库使用 dlib 顶尖的深度学习人脸识别技术构建 ...

  5. python人脸识别库_基于Python的face_recognition库实现人脸识别

    Python Python开发 Python语言 基于Python的face_recognition库实现人脸识别 一.face_recognition库简介 face_recognition是Pyt ...

  6. 基于Python的开源人脸识别库:离线识别率高达99.38%

    基于Python的开源人脸识别库:离线识别率高达99.38% 2019年04月18日 18:13:18 AI终结者 阅读数 1233 项目地址:https://github.com/ageitgey/ ...

  7. 6款人脸识别开源软件的简单使用

    文章目录 前言 一.face_recognition 1.1 安装 1.2 检测人脸位置 1.3 识别人脸 二.PaddleDetection 2.1 安装 2.2 运行 三.DeepFace 3.1 ...

  8. Github | 标星3W+ ! Face Recognition世界上最简洁的人脸识别库!

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 编辑:Sophia 计算机视觉联盟  报道  | 公众号 CVLianMeng 转载于 :Github [人工智能资 ...

  9. 在树莓派上用python实现人脸识别(face_recognition,PIL,opencv)

    小白一路按照领导的要求自己摸索的,若有不对之处,还望各位大佬指正. 一. 环境准备 1.python版本 树莓派4b自带的python版本是2.7的,所以需要我们把这个默认的版本设置改一下,以下的方法 ...

最新文章

  1. 方向:AI研究方向历史性转变!从机器学习到人类研究
  2. WebSocket 网页聊天室的实现(服务器端:.net + windows服务,前端:Html5)
  3. WEB--一个不错的想法
  4. eclipse 3.6的VE配置 Visual Editor for eclipse3.6
  5. php getfooter,wordpress函数get_footer()用法示例
  6. 有用的Chrome扩展介绍 - Octotree - GitHub code tree
  7. jboss4.2.3_JBoss 4.2.x Spring 3 JPA Hibernate教程
  8. 树莓派基金会来号召用键盘生物学家研究企鹅
  9. java 位运算 hashcode_hashcode面试题
  10. (转)Scala中协变(+)、逆变(-)、上界(:)、下界(:)简单介绍
  11. PoisonApple:针对macOS的持久化工具
  12. Hadoop的详细配置(持续更新)
  13. Flex builder3相关
  14. 一个屌丝程序猿的人生(一百一十七)
  15. GraphicsLab Project之基于物理的着色系统(Physical based shading)-直接光照
  16. 论混合软件架构的设计
  17. 橡胶支座抗压弹性模量计算公式_(完整版)橡胶支座计算
  18. <input>标签构建快递信息界面(HTML+CSS)
  19. 计算机有硬盘读不出来怎么办,电脑开机后读不到硬盘怎么办
  20. 渗透测试实战-OTRS 5.0.x/6.0.x漏洞利用

热门文章

  1. java中err是什么意思,错误 101 (net::ERR_CONNECTION_RESET 是什么意思java中reset()函数的用法...
  2. 关于MapStruct使用expression表达式的小坑
  3. 石子合并——最经典的dp问题
  4. 老照片怎么修复清晰?轻松几步让图片焕发新生
  5. macbook的appstore打不开的解决办法
  6. 用c 语言做课程表系统代码,[计算机]C语言课程表源代码.doc
  7. 【tensorflow】tensorflow相关基础概念
  8. 如果你有一个机器人女友
  9. 对PyramidBox的理解
  10. linux环境搭建篇-redis设置密码