本文的模型使用了C++工具箱dlib基于深度学习的最新人脸识别方法,基于户外脸部数据测试库Labeled Faces in the Wild 的基准水平来说,达到了99.38%的准确率。

数据测试库Labeled Faces in the Wild:http://vis-www.cs.umass.edu/lfw/

模型提供了一个简单的face_recognition命令行工具让用户通过命令就能直接使用图片文件夹进行人脸识别操作。

特征

在图片中捕捉人脸

在一张图片中捕捉到所有的人脸

找到并处理图片中人脸的特征

找到每个人眼睛、鼻子、嘴巴和下巴的位置和轮廓。

import face_recognition

image = face_recognition.load_image_file("your_file.jpg")

face_locations = face_recognition.face_locations(image)

捕捉脸部特征有很重要的用途,当然也可以用来进行图片的数字美颜digital make-up(例如美图秀秀)

digital make-up:https://github.com/ageitgey/face_recognition/blob/master/examples/digital_makeup.py

识别图片中的人脸

识别谁出现在照片里

安装步骤

本方法支持Python3/python2,我们只在macOS和Linux中测试过,还不知是否适用于Windows。

使用pypi的pip3安装此模块(或是Python 2的pip2)

重要提示:在编译dlib时可能会出问题,你可以通过安装来自源(而不是pip)的dlib来修复错误,请见安装手册How to install dlib from source

https://gist.github.com/ageitgey/629d75c1baac34dfa5ca2a1928a7aeaf

通过手动安装dlib,运行pip3 install face_recognition来完成安装。

使用方法命令行界面

当你安装face_recognition,你能得到一个简洁的叫做face_recognition的命令行程序,它能帮你识别一张照片或是一个照片文件夹中的所有人脸。

首先,你需要提供一个包含一张照片的文件夹,并且你已经知道照片中的人是谁,每个人都要有一张照片文件,且文件名需要以该人的姓名命名;

然后你需要准备另外一个文件夹,里面装有你想要识别人脸照片;

接下来你只用运行face_recognition命令,程序能够通过已知人脸的文件夹识别出未知人脸照片中的人是谁;

针对每个人脸都要一行输出,数据是文件名加上识别到的人名,以逗号分隔。

如果你只是想要知道每个照片中的人名而不要文件名,可以进行如下操作:

Python模块

你可以通过引入face_recognition就能完成人脸识别操作:

API 文档:https://face-recognition.readthedocs.io.

在图片中自动识别所有人脸

请参照此案例this example:https://github.com/ageitgey/face_recognition/blob/master/examples/find_faces_in_picture.py

识别图片中的人脸并告知姓名

请参照此案例this example:https://github.com/ageitgey/face_recognition/blob/master/examples/recognize_faces_in_pictures.py

Python代码案例

所有例子在此 here.

https://github.com/ageitgey/face_recognition/tree/master/examples

·找到照片中的人脸Find faces in a photograph

https://github.com/ageitgey/face_recognition/blob/master/examples/find_faces_in_picture.py

·识别照片中的面部特征Identify specific facial features in a photograph

https://github.com/ageitgey/face_recognition/blob/master/examples/find_facial_features_in_picture.py

·使用数字美颜Apply (horribly ugly) digital make-up

https://github.com/ageitgey/face_recognition/blob/master/examples/digital_makeup.py

·基于已知人名找到并识别出照片中的未知人脸Find and recognize unknown faces in a photograph based on photographs of known people

https://github.com/ageitgey/face_recognition/blob/master/examples/recognize_faces_in_pictures.py

人脸识别方法的原理

如果你想学习此方法的人脸定位和识别原理,请参见read my article。

https://medium.com/@ageitgey/machine-learning-is-fun-part-4-modern-face-recognition-with-deep-learning-c3cffc121d78

注意事项

·本人脸识别模型仅限用于成人,对于儿童来说效果不佳,模型可能会由于使用默认的对比阈值(0.6)而无法清楚识别出儿童的脸。

https://blog.csdn.net/zchang81/article/details/76251001

python开源人脸识别库识别率达99_Python的开源人脸识别库:离线识别率高达99.38%...相关推荐

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

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

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

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

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

    使用 dlib 顶尖的深度学习人脸识别技术构建,在户外脸部检测数据库基准(Labeled Faces in the Wild benchmark)上的准确率高达 99.38%. 这也提供了一个简单的 ...

  4. python 人脸识别_手把手教你用python实现人脸识别,识别率高达99.38%

    之前本人在实训时需要实现人脸识别这个功能,当时是借助百度的人脸识别api,这个需要注册账号,还需要用到密钥.操作起来也不麻烦,代码也不多.就是如果网速跟不上,返回的结果时,速度有点慢.当时也没那么在意 ...

  5. python人脸识别训练模型_开源 | 基于Python的人脸识别:识别准确率高达99.38%!

    原标题:开源 | 基于Python的人脸识别:识别准确率高达99.38%! 该库使用 dlib 顶尖的深度学习人脸识别技术构建,在户外脸部检测数据库基准(Labeled Faces in the Wi ...

  6. Python的开源人脸识别库:离线识别率高达99.38%【源码】

    以往的人脸识别主要是包括人脸图像采集.人脸识别预处理.身份确认.身份查找等技术和系统.现在人脸识别已经慢慢延伸到了ADAS中的驾驶员检测.行人跟踪.甚至到了动态物体的跟踪.由此可以看出,人脸识别系统已 ...

  7. 美国计算机专业四年毕业率达多少,卡内基梅隆大学毕业率知多少

    美国是世界上经济最发达的国家之一,社会比较安定,教育体系也很完善,受到许多留学生的青睐.在美国众多的大学院校中,卡内基梅隆大学无疑是其中的佼佼者.那么卡内基梅隆大学的毕业率是多少呢?的小编在这里为大家 ...

  8. 开源真香 离线识别率高 Python 人脸识别系统

    以往的人脸识别主要是包括人脸图像采集.人脸识别预处理.身份确认.身份查找等技术和系统.现在人脸识别已经慢慢延伸到了ADAS中的驾驶员检测.行人跟踪.甚至到了动态物体的跟踪. 由此可以看出,人脸识别系统 ...

  9. 离线识别率高达99%的Python人脸识别系统,开源~

    来源:https://zhuanlan.zhihu.com/p/46931078 大家好,我是辰哥 以往的人脸识别主要是包括人脸图像采集.人脸识别预处理.身份确认.身份查找等技术和系统.现在人脸识别已 ...

最新文章

  1. java中oracle.链接,java连接Oracle数据库的方法解析
  2. jekyll网站上传服务器,jekyll 高效搭建个人博客之完整流程
  3. MySQL流程控制函数-case结构
  4. super和this关键字详解
  5. 沙朗javascript总结一下(一)---基础知识
  6. mysql格式化11位时间戳_格式化MYSQL时间戳函数FROM_UNIXTIME
  7. 机器学习案例系列教程——距离度量方法总结
  8. asp.net html 扩展,StaticHtml
  9. 图解SynchronousQueue原理详解-非公平模式
  10. destoon短信接口更换成和其他运营商通道并存
  11. 大漠插件ocr多选字库_大漠ocr识别字库的生成,和使用方法
  12. php laravel手册,laravel5.6手册下载|Laravel5.6中文手册pdf最新版下载(附使用方法)_星星软件园...
  13. 我的网站防盗链和屏蔽蜘蛛的iis8.5 web.config功能
  14. BO Xcelsius 2008注册方法
  15. 如何查询期刊并免费下载论文,纬度学术利用
  16. python统计英文单词个数_统计英文单词的个数的python代码 及 字符串分割
  17. 不忘初心,勇攀高峰!低代码公司流辰信息紧抓机遇,努力超前冲!
  18. Android Studio中 安卓模拟器不能联网的解决方案
  19. R语言数据科学:变量选择(一)逐步回归法
  20. cocos2dx android 接入爱贝支付平台sdk记录

热门文章

  1. spring_Spring MVC控制器的单元测试:REST API
  2. android studio 2.1 ndk,Android studio 2.1编辑器(CLint)无法找到使用原生(ndk)插件的模块的标题...
  3. 汇编语言带C循环,如何将此C for循环转换为汇编语言?
  4. Apache Flink不止于计算,数仓架构或兴起新一轮变革
  5. 皮一皮:现在想上个节目一定要注明这些...
  6. 每日一皮:学会说话很重要...
  7. 赠书:Apache顶级项目,SkyWalking为何一枝独秀?
  8. 每日一皮:上线前加了一个小特性,结果......
  9. Metaspace 引起的 FullGC 问题排查过程及解决方案
  10. mha mysql 招聘_MHA实现mysql的高可用