人脸识别python和matlab

知识背景:

        随着社会的不断进步以及各方面对于快速有效的自动身份验证的迫切要求, 生物特征识别技术在近几十年中得到了飞速的发展。 作为人的一种内在属性, 并且具有很强的自身稳定性及个体差异性, 生物特征成为了自动身份验证的最理想 依据。 当前的生物特征识别技术主要包括有:指纹识别, 视网膜识别, 虹膜识别, 步态识别,静脉识别,人脸识别等。与其他识别方法相比,人脸识别由于具有直 接,友好,方便的特点,使用者无任何心理障碍,易于为用户所接受,从而得到 了广泛的研究与应用。 除此之外, 我们还能够对人脸识别的结果作进一步的分析, 得到有关人的性别, 表情, 年龄等诸多额外的丰富信息, 扩展了人脸识别的应用 前景。

1 人脸检测(Face Detection)

        给一幅图像,找出图像中的所有人脸位置,通常用一个矩形框框起来,输入是一幅图像img,输出是若干个包含人脸的矩形框位置(x,y,w,h),就像这样。

人脸识别python和matlab_第1张图片

         从问题的领域来看,人脸检测属于目标检测领域。

       自动人脸检测是围绕自动人脸图像分析的所有应用的基础,包括但不限于:人脸识别和验证,监控场合的人脸跟踪,面部表情分析,面部属性识别(性别/年龄识别,颜值评估),面部光照调整和变形,面部形状重建,图像视频检索,数字相册的组织和演示。人脸检测是所有现代基于视觉的人与电脑,和人与机器人,交互系统的初始步骤。

2 人脸识别(Face Identifition)

    人脸识别是对已知人脸进行分类的过程,人脸识别通常包括以下四个步骤:

1)人脸检测:是在图像中定位人脸区域的过程。(也就是关心是不是人脸,至于关心是谁不是这个步骤的任务)

2)人脸预处理:调整人脸图像,使其看起来更加清楚。

3)搜集和学习人脸:搜集许多被预处理过的人脸(这些人脸是要被识别的人的脸,而不是其他人的),人后学习如何识别他们。

4)人脸识别:在搜集的人脸中查找哪个人脸与摄像机中的人脸最相似。

识别原理:

    现有的人脸识别方法中主要有深度学习和非深度学习两大类方法,本质上来讲都是提取脸部图像的特征,将提取的特征和已有的特征模板或者model(相当于训练出来一个分类器)进行比对,找出相似度最大的。

1 特征提取

   我们希望在对人脸进行特征提取的时候,对于同一个样本(脸),其特征能够在各种不同的光照条件或者角度等情况下能够保持相对稳定。因此有许多特张提取方法:特征点、PCA降维、LBP特征等。

 LBP

人脸识别python和matlab_第2张图片

2 分类器训练

深度学习:分类采用的是神经网络进行分类,各种神经网络。(具有普适性)

非深度学习:SVM、模板匹配等分类方法。(具有特殊性)

3 人脸识别

输入分类器,输出识别结果。

代码实现

最小距离法(matlab)

NearestNeighbor(python&matlab))

LBP-DBN (matlab)

FaceRecognition-tensorflow(python)

总结:

梳理人脸识别的原理和各个部分的作用,介绍几种基本方法的人脸识别和代码实现。

你可能感兴趣的:(Python,matlab,深度学习)