2017-10-21 回答

1.1.介绍introduction

从opencv2.4开始,加入了新的类facerecognizer,我们可以使用它便捷地进行人脸识别实验。本文既介绍代码使用,又介绍算法原理。(他写的源代码,我们可以在opencv的opencv\modules\contrib\doc\facerec\src下找到,当然也可以在他的github中找到,如果你想研究源码,自然可以去看看,不复杂)

目前支持的算法有

eigenfaces特征脸createeigenfacerecognizer()

fisherfaces createfisherfacerecognizer()

localbinary patterns histograms局部二值直方图 createlbphfacerecognizer()

下面所有的例子中的代码在opencv安装目录下的samples/cpp下面都能找到,所有的代码商用或者学习都是免费的。

1.2.人脸识别face recognition

对人类来说,人脸识别很容易。文献[tu06]告诉我们,仅仅是才三天的婴儿已经可以区分周围熟悉的人脸了。那么对于计算机来说,到底有多难?其实,迄今为止,我们对于人类自己为何可以区分不同的人所知甚少。是人脸内部特征(眼睛、鼻子、嘴巴)还是外部特征(头型、发际线)对于人类识别更有效?我们怎么分析一张图像,大脑是如何对它编码的?david hubel和torstenwiesel向我们展示,我们的大脑针对不同的场景,如线、边、角或者运动这些局部特征有专门的神经细胞作出反应。显然我们没有把世界看成零散的块块,我们的视觉皮层必须以某种方式把不同的信息来源转化成有用的模式。自动人脸识别就是如何从一幅图像中提取有意义的特征,把它们放入一种有用的表示方式,然后对他们进行一些分类。基于几何特征的人脸的人脸识别可能是最直观的方法来识别人脸。第一个自动人脸识别系统在[kanade73]中又描述:标记点(眼睛、耳朵、鼻子等的位置)用来构造一个特征向量(点与点之间的距离、角度等)。通过计算测试和训练图像的特征向量的欧氏距离来进行识别。这样的方法对于光照变化很稳健,但也有巨大的缺点:标记点的确定是很复杂的,即使是使用最先进的算法。一些几何特征人脸识别近期工作在文献[bru92]中有描述。一个22维的特征向量被用在一个大数据库上,单靠几何特征不能提供足够的信息用于人脸识别。

特征脸方法在文献[tp91]中有描述,他描述了一个全面的方法来识别人脸:面部图像是一个点,这个点是从高维图像空间找到它在低维空间的表示,这样分类变得很简单。低维子空间低维是使用主元分析(principal component analysis,pca)找到的,它可以找拥有最大方差的那个轴。虽然这样的转换是从最佳重建角度考虑的,但是他没有把标签问题考虑进去。[gm:读懂这段需要一些机器学习知识]。想象一个情况,如果变化是基于外部来源,比如光照。轴的最大方差不一定包含任何有鉴别性的信息,因此此时的分类是不可能的。因此,一个使用线性鉴别(linear discriminant analysis,lda)的特定类投影方法被提出来解决人脸识别问题[bhk97]。其中一个基本的想法就是,使类内方差最小的同时,使类外方差最大。

近年来,各种局部特征提取方法出现。为了避免输入的图像的高维数据,仅仅使用的局部特征描述图像的方法被提出,提取的特征(很有希望的)对于局部遮挡、光照变化、小样本等情况更强健。有关局部特征提取的方法有盖伯小波(gabor waelets)([wiskott97]),离散傅立叶变换(discretecosinus transform,dct)([messer06]),局部二值模式(localbinary patterns,lbp)([ahp04])。使用什么方法来提取时域空间的局部特征依旧是一个开放性的研究问题,因为空间信息是潜在有用的信息。

1.3.人脸库face database

我们先获取一些数据来进行实验吧。我不想在这里做一个幼稚的例子。我们在研究人脸识别,所以我们需要一个真的人脸图像!你可以自己创建自己的数据集,也可以从这里(http://face-rec.org/databases/)下载一个。

at&tfacedatabase又称orl人脸数据库,40个人,每人10张照片。照片在不同时间、不同光照、不同表情(睁眼闭眼、笑或者不笑)、不同人脸细节(戴眼镜或者不戴眼镜)下采集。所有的图像都在一个黑暗均匀的背景下采集的,正面竖直人脸(有些有有轻微旋转)。

如何使用python人脸识别_如何利用python进行精准人脸识别相关推荐

  1. 怎么用python找论文_如何利用Python绘制学术论文图表方法

    论文中图表形式多样,常用的处理工具有excel.MATLAB以及Python等,excel自处理的方法有两个缺陷: 1.当数据较多时,容易出现excel"翻白眼"的现象: 2.需要 ...

  2. 利用python进行数据分析_资料 | 利用Python进行数据分析

    下载地址:https://www.yanxishe.com/resourceDetail/1443?from=leiphonecolumn_res0518 以下内容节选自豆瓣: 内容简介 · · · ...

  3. python求加速度_如何利用Python 为自然语言处理加速度

    自去年发布 Python 的指代消解包(coreference resolution package)之后,很多用户开始用它来构建许多应用程序,而这些应用与我们最初的对话应用完全不同. 利用 spaC ...

  4. python数据论文_如何利用Python绘制学术论文图表

    论文中图表形式多样,常用的处理工具有excel.MATLAB以及Python等,excel自处理的方法有两个缺陷:1.当数据较多时,容易出现excel"翻白眼"的现象:2.需要使用 ...

  5. 用python做头像_如何利用python制作微信好友头像照片墙?

    这个不难,主要用到itchat和pillow这2个库,其中itchat用于获取微信好友头像照片,pillow用于拼接头像生成一个照片墙,下面我简单介绍一下实现过程,代码量不多,也很好理解,实验环境wi ...

  6. python epub 精品_如何利用Python打包HTML页面为epub?

    最近沉迷于将各种博客和官方文档html转化成pdf,结果用手机看还是不太方便,所以想到将html转化成epub格式的电子书,要用os,re,requests,lxm,zipfile,五个库,在这里分享 ...

  7. python绘制太阳系_如何利用Python动态模拟太阳系运转

    前言 提到太阳系,大家可能会想到哥白尼和他的日心说,或是捍卫.发展日心说的斗士布鲁诺,他们像一缕光一样照亮了那个时代的夜空,对历史感兴趣的小伙伴可以深入了解一下,这里就不多说了. 太阳以巨大的引力使周 ...

  8. python画四角星_如何利用Python|对多角星的绘制

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云,作者:编程与算法之美. 1 前言 在初步学习python的过 ...

  9. python坐标定位_如何利用Python识别并定位图片中某一个色块的坐标?

    依赖python包|opencv.numpy.aircv 第一步:查找图片在原始图片上的坐标点 import aircv as ac def matchImg(imgsrc,imgobj,confid ...

最新文章

  1. 《深入浅出Windows Phone 8应用开发》
  2. LeetCode: 107_Binary Tree Level Order Traversal II | 二叉树自底向上的层次遍历 | Easy
  3. centos php编译安装mysql_CentOS手动编译安装Apache、PHP、MySQL
  4. python化学题_中国大学mooc《化学教学论(朱汝葵 陈思静 汤希雁)》考试期末答案高校邦《Python程序设计基础【实境编程】》课后作业答案...
  5. 精通CSS高级Web标准解决方案(第2版)学习笔记
  6. 关于selenium获取cookie然后实现免登录
  7. 在vue中后台返回的文本包含标签时候解析为html代码
  8. Atitit 高级人员的指标 参照发达国家(Developed Country)指标 目录 1. 普遍特征是较高的发展指数、人均生产总值、工程化水准和品质 [1]  。科学技术水准等指标 1 2.
  9. ChIP-Atlas:基于公共chip_seq数据进行分析挖掘
  10. Android-NDK 接入Fmod库,变声操作
  11. Ubuntu 18.04安装i686-elf交叉编译工具链的方法
  12. OBS Studio 27.2.1(开源视频录制工具)下载及安装(Win10)
  13. html div虚线背景,聊聊css绘制虚线
  14. JDK 动态代理之源码解析
  15. 计算机维护记录软件,Take-1 Recorder(电脑操作记录软件)
  16. 淘宝上线短视频APP鹿刻:害抖音之心无,防抖音之心有
  17. 基础编程题(1~5)
  18. 计算机仿真技术(1)
  19. Matlab数据分析与计算,互联网java工程师面试题pdf
  20. 【鸿蒙】《校园通》--游玩南昌模块

热门文章

  1. 这些选择器你都知道吗?
  2. 关于Xilinx SDK工具的使用问题求解
  3. 安装jupyter步骤
  4. 零基础入门金融风控-贷款违约预测-Task4 建模与调参
  5. torch.utils.data.WeightedRandomSampler样本不均衡情况下带权重随机采样
  6. matlab ecu代码,嵌入式代码生成 - 汽车 ECU 产品级代码 - MATLAB Simulink
  7. php mysql bootstart_PHP+MySQL+Bootstrap 美食主题博客项目
  8. 支付宝转账到个人账户
  9. python中shape[0~3]的意思
  10. 关于layer.open()弹出页面与”父页面“之间获取数据赋值给页面Element的问题