基于Python的开源人脸识别库:离线识别率高达99.38%——新开源的用了一下感受一下

原创 2017年07月28日 21:25:28
 
该项目是要构建一款免费、开源、实时、离线的网络 app,支持组织者使用人脸识别技术或二维码识别所有受邀人员。

有了世界上最简单的人脸识别库,使用 Python 或命令行,即可识别和控制人脸。

该库使用 dlib 顶尖的深度学习人脸识别技术构建,在户外脸部检测数据库基准(Labeled Faces in the Wild benchmark)上的准确率高达 99.38%。

这也提供了一个简单的 face_recognition 命令行工具,你可以打开命令行中任意图像文件夹,**进行人脸识别!并且还可以进行人脸自动定位等。**
项目地址:https://github.com/ageitgey/face_recognition#face-recognition
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

今天刚刚在anaconda中通过命令pip install face_recongnition命令安装了这个开源库,然后尝试了一把,
首先我在D盘创建了 两个文件夹,一个文件夹内用于提供训练的照片并且照片是以人名命名的,第二个文件夹是用于检验测试的。

我在首先D:\train_face_recongintion文件夹里面就放入了一个图片里面包含了五个人,照片名字叫five_people.jpg,在测试集里面随便放入一个人的unknown.jpg(训练集里面的包含五个人的照片并没有这个人)照片,然后会发出警告的提示我那个有五个人的照片里面,识别出来超过一个人的脸了

然后我就在train_face_recongintion文件夹下继续放入了一张本人的图片,顺便把这个测试集的unknown.jpg放入到训练集文件夹中命为unknown_person.jpg,并且在test_face_recongintion里面放入了我的另一个照片
,结果是正确识别,涂抹出因为训练集中本人照片命名是身份证忘记改。

最后在训练文件夹 测试文件夹分别多放入了几个图片 然后识别开始模糊了
这是train文件夹里面的图片:

这是test文件夹里面图片:

结果如下:
unknown_1是女的 咋还识别成hhy 和swq两种男生图片,跟男的像吗???
可能hhy就是me跟swq*(我同学哈哈)长得太像了 测试的hhy图片不仅识别成了hhy还识别成了swq两个人;
至于unkown_1为什么被识别为两个冯提莫 是因为我的训练文件夹里面有一个冯提莫的jpg图片 有一个是冯提莫的png图片;
不知道为什么我的测试里面还一个unknown_fengtimo.jpg根本没有输出结果,难道是没有识别出来吗??

接着我就把unknown_fengtimo.jpg这张图片放入到了训练文件夹,明明为fengtimo.jpg结果你猜发生什么了???原来是没有识别到这个图片中有人脸 自然就不会输出了,放入到了训练文件夹最起码提示告诉我这个图片没有找到人脸了。
但是这个图片是有人脸的自己看图就知道。。。。。。。
,今天看到这吧 改天在研究研究吧。

说一下常见问题(摘抄):
常见问题

问题:使用 face_recognition 或运行样本时,出现 Illegal instruction (core dumped)。

解决方案:dlib 需要在 SSE4 或 AVX 支持下编译,但是你的 CPU 太旧,无法支持编译。你需要根据此处(https://github.com/ageitgey/face_recognition/issues/11#issuecomment-287398611)所示修改代码,然后对 dilb 进行重新编译。

问题:运行摄像头样本时,出现 RuntimeError: Unsupported image type, must be 8bit gray or RGB image.

解决方案:你的摄像头可能并未在 OpenCV 上正确设置。点击此处(https://github.com/ageitgey/face_recognition/issues/21#issuecomment-287779524)了解更多。

问题:运行 pip2 install face_recognition 时出现 MemoryError。

解决方案:face_recognition_models 文件太大,不适合你可用的 pip 缓存内存。试一下 pip2 –no-cache-dir install face_recognition,解决该问题。

问题:AttributeError: ‘module’ object has no attribute ‘face_recognition_model_v1’

解决方案:你安装的 dlib 版本过旧,需要 19.4 或者更新的版本。请升级 dlib 版本。

问题:TypeError: imread() got an unexpected keyword argument ‘mode’

解决方案:你安装的 scipy 版本过旧,需要 0.17 或者更新的版本。请升级 scipy 版本。

face_recognition开源人脸识别库:离线识别率高达99.38%的更多相关文章

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

    Python的开源人脸识别库:离线识别率高达99.38%   github源码:https://github.com/ageitgey/face_recognition#face-recognitio ...

  2. Python的开源人脸识别库:离线识别率高达99.38%(附源码)

    Python的开源人脸识别库:离线识别率高达99.38%(附源码) 转https://cloud.tencent.com/developer/article/1359073   11.11 智慧上云 ...

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

    项目地址:https://github.com/ageitgey/face_recognition#face-recognition 本文的模型使用了C++工具箱dlib基于深度学习的最新人脸识别方法 ...

  4. Github开源人脸识别项目face_recognition

    Github开源人脸识别项目face_recognition 原文:https://www.jianshu.com/p/0b37452be63e 译者注: 本项目face_recognition是一个 ...

  5. windows下简单验证码识别——完美验证码识别系统

    此文已由作者徐迪授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 讲到验证码识别,大家第一个可能想到tesseract.诚然,对于OCR而言,tesseract确实很强大,自带 ...

  6. 移动端车牌识别、行驶证识别OCR为共享汽车APP增添技术色彩

    本文主题:移动端车牌识别.行驶证识别OCR为共享汽车APP增添技术色彩 本文关键词:车牌识别,证件识别,移动端车牌识别,行驶证识别,手机车牌识别,驾驶证识别 近两年,随着共享单车以及共享电车的兴起,有 ...

  7. 转:基于开源项目OpenCV的人脸识别Demo版整理(不仅可以识别人脸,还可以识别眼睛鼻子嘴等)【模式识别中的翘楚】

    文章来自于:http://blog.renren.com/share/246648717/8171467499 基于开源项目OpenCV的人脸识别Demo版整理(不仅可以识别人脸,还可以识别眼睛鼻子嘴 ...

  8. [深度学习工具]·极简安装Dlib人脸识别库

    [深度学习工具]·极简安装Dlib人脸识别库 Dlib介绍 Dlib是一个现代化的C ++工具箱,其中包含用于在C ++中创建复杂软件以解决实际问题的机器学习算法和工具.它广泛应用于工业界和学术界,包 ...

  9. Ubuntu下使用face_recognition进行人脸识别

    Face Recognition是一个基于Python的人脸识别库,在github上地址如下:https://github.com/ageitgey/face_recognition. 看着挺好玩,本 ...

随机推荐

  1. Hyperledger:Fabric CA 用户指南 [译]

    Fabric CA 用户指南 Fabric CA 是 Hyperledger Fabric 的官方配套认证设施. 原文链接:http://hyperledger-fabric.readthedocs. ...

  2. 为什么说 Babel 将推动 JavaScript 的发展【转】

    Babel是一个转换编译器,它能将 ES6 转换成可以在浏览器中运行的代码.Babel 由来自澳大利亚的开发者Sebastian McKenzie创建.他的目标是使 Babel 可以处理 ES6 的所 ...

  3. web 前端2 CSS

    CSS CSS是Cascading Style Sheets的简称,中文称为层叠样式表,用来控制网页数据的表现,可以使网页的表现与数据内容分离. 一 css的四种引入方式 1.行内式          ...

  4. hackinglab 基础关 writeup

    地址:http://hackinglab.cn/ 基础关 key在哪里? 很简单,点击过关地址,在新打开的网页中查看网页源代码就能在 HTML 注释中发现 key 再加密一次你就得到key啦~ 明文加 ...

  5. Maven 修改jdk版本

    Maven 修改jdk版本方法1: <build> <plugins> <plugin> <groupId>org.apache.maven.plugi ...

  6. 实现简单的计算器(设计UI)

    要点说明: 1.一个textedit控件,其余全部是button控件,button布局方式:栅格布局(Grid layout) 2.对窗体的Title进行修改(默认是工程名) 3.在ui文件中设计的U ...

  7. (二:NIO系列) Java NIO Buffer

    出处:Java NIO Buffer Buffer是一个抽象类,位于java.nio包中,主要用作缓冲区.Buffer缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存.这块内存被包装成NIO ...

  8. java 标识接口的作用

    标识接口的作用 标识接口是没有任何方法和属性的接口.标识接口不对实现它的类有任何语义上的要求,它仅仅表明实现它的类属于一个特定的类型. 标接口在Java语言中有一些很著名的应用,例如我们常用的Arra ...

  9. 关于 Python 程序的运行方面,有什么手段能提升性能?

    1.使用多进程,充分利用机器的多核性能2.对于性能影响较大的部分代码,可以使用 C 或 C++编写3.对于 IO 阻塞造成的性能影响,可以使用 IO 多路复用来解决4.尽量使用 Python 的内建函 ...

  10. vue - 过滤器filter的基本使用

    1.全局过滤器 输出: 过滤器可以多次来调用 输出: 2.私有过滤器 <!DOCTYPE html> <html lang="en"> <head&g ...