分享

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

 挑燈看劍r7wtm5 2018-10-03

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

特征脸(Eigenface)是指用于机器视觉领域中的人脸识别问题的一组特征向量。首先由Sirovich and Kirby (1987)提出,并由Matthew Turk和Alex Pentland用于人脸人脸识别。特征脸通过PCA(principal components analysis)方法获得。本篇通过深度剖析PCA原理及人脸检测与识别的思路来透彻理解特征脸算法。

第一、PCA原理及几何意义

1、向量左乘矩阵的几何意义

要准确描述向量,首先要确定坐标体系(基),然后给出在基所在的各个直线上的投影值,这些投影值就是当前基所确定的坐标,所以,如果要将一个向量从一个空间转变为新空间的表示,就要计算当前向量在新基的投影。

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

如果我们有M个N维向量,想将其变换为由R个N维向量表示的新空间中,那么首先将R个基按列组成矩阵A,然后将向量按列组成矩阵B,那么两矩阵的乘积ATB就是变换结果,其中ATB的第m列为A中第m列变换后的结果。

数学表示为:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

其中pi是一个列向量,表示第i个基,a是一个列向量,表示第j个原始数据记录。这里R可以小于N,而R决定了变换后数据的维数。也就是说,我们可以将一N维数据变换到更低维度的空间中去,变换后的维度取决于基的数量。因此这种矩阵相乘的表示也可以表示降维变换。

2、协方差的意义

方差是描述一维数据样本本身相对于均值的偏离程度:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

类似的,如果换成下面的形式就是协方差,协方差就是一种用来度量两个随机变量关系的统计量,如果不好理解,就从两个向量内积的意义来理解,其夹角越小,值越大,方向越相近,也就是越正相关。

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

协方差是两个变量之间的关系,如果是n个变量,要计算他们两两之间的协方差,可用协方差矩阵来表示。C可以作为刻画不同维度(分量)之间相关性的一个评判量。若不同分量之间的相关性越小,则C的非对角线元素的值就越小,特别地,若不同分量彼此不相关,那么C就变成了一个对角阵。

3、PCA的几何意义

维基百科中主成分分析(Principal Component Analysis(PCA)的数学定义为,一个正交化线性变换,把数据变换到一个新的坐标系统中,使得这一数据的任何投影的第一大方差在第一个坐标(称为第一主成分)上,第二大方差在第二个坐标(第二主成分)上,依次类推。

PCA 是最常用的线性降维方法,它的目标是通过某种线性投影,将高维的数据映射到低维的空间中表示,并期望在所投影的维度上数据的方差最大,以此使用较少的数据维度,同时保留住较多的原数据点的特性。

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

如果只降为一维,可以看出,如果向x轴投影,最左边的两个点会重叠在一起,中间的两个点也会重叠在一起,4个各不相同的二维点投影后只剩下两个不同的值了,信息严重丢失,同理,如果向y轴投影最上面的两个点和分布在x轴上的两个点也会重叠。所以看来x和y轴都不是最好的投影选择。

下面,我们用数学方法表述这个问题。

假设样本集

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

,样本点在新空间中超平面上的投影是WTxi,若所有样本点的投影能尽可能分开,则应该使投影后样本点的方差最大化,投影后样本点的方差可以表示为:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

于是优化目标可写为:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

使用拉格朗日乘子

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

只需对协方差矩阵XXT进行特征值分解,将求得的特征值排序:λ1≥λ2≥...≥λn,再取前d个特征值对应的特征向量构成W=(w1,w2,…,wd),就是主成分分析的解.

第二、特征脸方法的思想

图像识别的基本思想都是一样的,首先选择一个合适的子空间,将所有的图像变换到这个子空间上,然后再在这个子空间上衡量相似性,或者进行分类学习。那为什么要进行空间变换?

变换到另一个空间,类似SVM中核函数的维度升级一样,会有两个作用:

  • 同一个类别的图像离得更近

  • 不同类别的图像会距离比较远

这样,在原像素空间中很难用线性分类器分开的不同类别图像,在新空间,就可以较为容易的分开了。为什么在原始的像素空间他们同类不会很近,不同类不会很远,或者他们不那么容易分开呢?因为图像各种因素的影响,包括光照、视角、背景和形状等等不同,会造成同一个目标的图像都存在很大的视觉信息上的不同。

特征脸技术的基本思想是:从统计的观点,寻找人脸图像分布的基本元素,即人脸图像样本集协方差矩阵的特征向量,以此来表征人脸图像。这些特征向量称为特征脸(Eigenface)。

实际上,特征脸反映了隐含在人脸样本集合内部的信息和人脸的结构关系。将眼睛、面颊、下颌的样本集协方差矩阵的特征向量称为特征眼、特征颌和特征唇,统称特征子脸。特征子脸在特征脸的图像空间中对应生成子空间,称为子脸空间。

第三、空间构造

世界上不存在任何两片完全相同的叶子。要想区分不同事物,,只要在我们在用一定的表示(空间内)下,把同一类目标的独特的共性找出来即可。

特征脸方法要把人脸从像素空间变换到另一个空间,在另一个空间中做相似性的计算。这个空间如何构造呢?

  • 首先是寻找人脸的共性

  • 其次就是寻找个体与共性的差异

  • 共性就是空间,个体就是向量

把目标集中所有人脸图像的协方差矩阵进行特征值分解,得到对应的特征向量,这些特征向量就是“特征脸”。每个特征向量捕捉人脸之间的一种变化或者特性。所以,每个人脸都可以表示为这些特征脸的线性组合。在以每一个特征子脸为基的空间,每个人脸就是一个点,这个点的坐标就是这个人脸在每个特征基下的投影坐标。

第四、特征脸算法过程

下面就直接给出基于特征脸的人脸识别实现过程:

1)获得人脸图像数据Ii,将每一个人脸图像矩阵按行串成一维,每个人脸就是一个向量

2)将M个人脸在对应维度上加起来,然后求平均,就得到“平均脸”

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

3)将每个图像都减去平均脸向量

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

4)计算协方差矩阵C

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

5)对协方差矩阵进行特征值分解

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

如果人脸的特征维度N很大,例如256x256的人脸图像,N就是65536了。如果有M个人,那么协方差矩阵C的维度就是NxM=65536xM。对这个大矩阵求解特征值分解运算量非常大。如果人脸的样本M不多,考虑ATA,这个矩阵就不那么大。下面进行推导:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

  • AAT可以有至多N2个特征值和特征向量;
  • AT A可以有至多M个特征值和特征向量;
  • AT A的M个特征值对应M个AAT的最大的特征值;
  • 计算M个最好的特征向量ui=Avi;
  • 只取K个特征向量。

6)运用Eigenfaces进行人脸识别

1、标准化

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

2、映射特征空间

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

3、重新表示为

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

4、度量距离

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

5、如果

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

则认为被识别图像是第l个脸。

第五、算法实践

1、训练图像:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

2、平均脸:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

3、特征子脸:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

4、图像重构:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

5、寻找相似度高的人脸图像:

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

2015年,在德国汉诺威消费电子博览会的开幕式上,阿里巴巴董事会主席马云首次向外界展示了脸部识别技术:他将自己的脸放置于机器的识别框内,系统自动识别后完成了支付,为他成功购买了一张1948年汉诺威工业博览会的纪念邮票。现在不光是刷脸支付,各种“进入”关卡都已经并成功应用了刷脸模式,未来的形式会更加多样、精彩!

深度剖析:Eigenfaces算法原理及其中PCA几何意义(人脸系列一)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多