人脸特征提取的步骤


真正的人脸识别需要很多的知识,大体上粗略的可以分为以下步骤:

  1.人脸检测(从图片中找到人脸):返回人脸位置和大小的参数。
  2.人脸特征定位:一般 69 点或者 106 个点对人脸的特征定位,技术上有 Adaboost&haar,以及 MSRA 的 alignment。
  3.人脸特征归一化(几何归一/灰度归一):前者对图像进行仿射变化使得不同的脸可以进行比对,后者则能使图像展现更多的细节以及减弱光线光照的应用。
  4.特征提取-特征后期融合。(基于特征近似度的多特征融合)
  5.特征距之间的距离来比对相似度、三氏距离。(马氏、欧氏 、巴氏)

操作过程中的注意事项

  1. 每张图片要先上传到 bucket 中才可以利用。

  2. API 对人脸匹配再返回很大程度依赖于用户的网络带宽。

  3. 当用户网络不好的情况下需要很久的时间才能得到返回结果。

  4. 要经过压缩处理,一般识别的较为准确最多可将图片压缩至 25 kb 左右。

我们要进行如下的步骤:

1)得到我们刚刚通过摄像头取得的人像
2)对我们的人像图片进行压缩
3)上传我们的人像图片到我们的 bucket 中
(这里要申明一点,七牛所有支持的 API 都要求文件在华东的 Bucket 下)
4)得到我们上传的图片的链接地址
5)对链接进行 urlbase64 加密(这里只要 import python 的 base64 库即可)
6)请求 API
7)得到网页的 JSON 格式数据
8)通过 JSON 库对数据进行分析
9)判断人脸的相似度是否符合,输出结果
10)删除 Bucket 中上传的临时图片

返回的 JSON 格式分析

我们可以看到返回的 JSON 信息很简单, status 的意思是成功和不成功,而 confidence 则是相似度,所以我们对返回的信息进行分析会很简单。 status 如若成功则为 ok,不成功则为 invalid。

人脸相似度的判断

上表中所用的图片都来自己互联网,从表数据我们可以大致将本人的相似度以 0.7 为分界线。不过有趣的是,不知道为什么按杨幂进行整容的为什么相似度竟然低于杨幂和范冰冰的相似度(其他女星照的图片为范冰冰的人像),不同性别的相似度差异明显,所以就粗略的根据表格定为 >0.7 即可认为是本人。

安装所需的库

在 python 中,我分享的这个例子总共需要引入 6 个库

requests 库,json 库,PIL 库请自行安装;
base64 库和 OS 库为自带所以无需安装。


程序的实现

请见下方的代码,采集到的人脸为 face.jpg。 (这里用了杨幂的两张图片作为示例)

程序运行的截图:

用到的杨幂的两张照片为:
(均来自百度图片)

(用于比对的标准人像图片)
(已用 PIL 压缩 x0.3,y0.3)

(用于比对的图片)

作者:七牛云

源自:

https://juejin.im/post/59719caef265da6c4741cdd7

转发此文到朋友圈并截图到后台,

获得20G

python入门视频课

往期实战及福利


  1. 关注本公众号,牧原小主 送您

    1. 2.7G  380份最新数据分析报告

    2. 40G  人工智能算法课

    3. 已关注的小伙伴,直接回复数据分析报告、人工智能算法

  2. 关注后,回复 PM2.5 获得 Python分析北京PM2.5,原来每年的值都在变少...所有源代码

  3. 关注后,回复“python3.7”,获得python 3.7官方最新pdf 文档

  4. 关注后,回复 世界杯, 获得 2018世界杯来了,利用Python预测冠军(附全部代码和数据集)所有源代码

  5. 关注后,回复“豆瓣电影“,获得 Python实战 | 手把手教你爬取豆瓣电影 Top 250(附全部代码及福利哦)所有源代码

  6. 关注后,回复“python可视化”,获得 利用python“三步”实现数据可视化,炫的不要不要的!所有源代码


长按二维码,关注我们

Python实战 | 如何用人脸识别,证明这个杨幂是那个杨幂?(有福利哦)相关推荐

  1. [深度应用]·实战掌握Dlib人脸识别开发教程

    [深度应用]·实战掌握Dlib人脸识别开发教程 个人网站--> http://www.yansongsong.cn/ 项目GitHub地址--> https://github.com/xi ...

  2. 用Python实现简单的人脸识别,10分钟(附源码)

    前言 今天,我们用Python实现简单的人脸识别技术! Python里,简单的人脸识别有很多种方法可以实现,依赖于python胶水语言的特性,我们通过调用包可以快速准确的达成这一目的.这里介绍的是准确 ...

  3. 10分钟手把手教你运用Python实现简单的人脸识别

    欲直接下载代码文件,关注我们的公众号哦!查看历史消息即可! 前言:让我的电脑认识我 我的电脑只有认识我,才配称之为我的电脑! 今天,我们用Python实现高大上的人脸识别技术! Python里,简单的 ...

  4. python人脸识别毕业设计-Python基于Dlib的人脸识别系统的实现

    之前已经介绍过人脸识别的基础概念,以及基于opencv的实现方式,今天,我们使用dlib来提取128维的人脸嵌入,并使用k临近值方法来实现人脸识别. 人脸识别系统的实现流程与之前是一样的,只是这里我们 ...

  5. python人脸识别opencv_基于python+OpenCV模块的人脸识别定位技术

    什么是OpenCV模块 OpenCV是一款跨平台的视觉库,可以支持的操作系统有Linux.Windows和Mac OS操作系统,并且还提供了多种语言的接口,比如Python,java,MATLAB等常 ...

  6. 基于Python的百度AI人脸识别API接口(可用于OpenCV-Python人脸识别)

    基于Python的百度AI人脸识别API接口(可用于OpenCV-Python人脸识别) 资源: download.csdn.net/download/weixin_53403301/43644312 ...

  7. gpu训练cnn人脸识别准确率_opencv+mtcnn+facenet+python+tensorflow 实现实时人脸识别

    opencv+mtcnn+facenet+python+tensorflow 实现实时人脸识别 Abstract:本文记录了在学习深度学习过程中,使用opencv+mtcnn+facenet+pyth ...

  8. Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储

    原 Python+OpenCv实现AI人脸识别身份认证系统(2)--人脸数据采集.存储 2019年07月02日 08:47:52 不脱发的程序猿 阅读数 602更多 所属专栏: 人脸识别身份认证系统设 ...

  9. python人脸深度识别_基于Python的深度学习人脸识别方法

    基于 Python 的深度学习人脸识别方法 薛同来 ; 赵冬晖 ; 张华方 ; 郭玉 ; 刘旭春 [期刊名称] <工业控制计算机> [年 ( 卷 ), 期] 2019(032)002 [摘 ...

最新文章

  1. 在 Ubuntu 上安装最新版本的 Erlang方法介绍
  2. 某网络专业人士笔记(超级珍藏)
  3. 北斗词卡(三):带你了解北斗相关的国际组织缩写
  4. pyscripter与python的关系_【转】PyScripter启动出错:Python could not be properly initialized. We must quit....
  5. oracle中备份package源码
  6. boost::fusion::cons用法的测试程序
  7. android 漂亮的表单界面,面向ArcGIS for Android的表单界面生成器的设计与实现
  8. js运算符+运算方式
  9. Spark常用函数讲解之键值RDD转换
  10. git连接通过ssh连接github
  11. linux下的powerline安装教程
  12. 西门子S7系列中间人攻击:流量劫持和转发(一)
  13. 盲目的相信——写在购买陆谷孙先生主编的《英汉大词典》之后
  14. 华为网络设备-FTP文件传输
  15. 博图——生成和导入外部源文件
  16. 计算机主机配置图示,2020台式电脑组装配置单图
  17. 【JS正则表达式验证】
  18. SQL实战45.将titles_test表名修改为titles_2017
  19. Qt 开发使用VSCode
  20. configure.ac(configure.in)内容详解

热门文章

  1. 网络设备调试经验-华为交换机路由器无法telnet故障排除
  2. mysql 单表子查询语句_MySQL基本SQL查询语句:多表查询和子查询示例
  3. myeclipse git 上下箭头表示什么
  4. 【html】浏览器与服务器
  5. 详解Apache下.htaccess文件的8个用法
  6. 快快乐乐学写字 免费
  7. Dockerfile精编细作(五)编辑可应用到正式环境的Dockerfile并构建java项目
  8. 【Python】 【绘图】绘图的颜色,线型,点型
  9. Photoshop CS6画布缩在左上角
  10. ArcGIS基础:找出宗地对应的所有界址点号(空间连接)