您的位置:首页 > 其它

[Paper 学习笔记] Face Recognition Using Deep PCA

2016-07-04 21:30 471 查看
这个月开始下决心好好了解CNN方面的内容,希望能在3D图像特征提取方面寻找到行之有效的方法。看了

http://blog.csdn.net/sinat_31824577/article/details/51779228

http://blog.csdn.net/sinat_31824577/article/details/51775329

这两篇,PCANet并不适用于3D图像,中间计算普通的电脑无法带动,而3D CNN的那篇论文细节部分还没用弄懂,Python语言也不了解,受这篇博文的启发http://m.blog.csdn.net/article/details?id=50427749,继续开始读论文。希望能更深入了解PCANet的思想。

一、简介

本篇介绍的Deep PCA主要用于人脸识别。采用分级投影人脸矢量到不同特征子空间的方法,从而获得不同投影的表达。特别的,我们提出一个二层ZCA白化(关于ZCA白化参见http://deeplearning.stanford.edu/wiki/index.php/Whitening)加用于学习等级特征的PCA结构。每幅人脸图像的所有的代表特征可以用第一层和第二层的级联来提取。我们的方法从数据中学习特征,利用第一层的信息来产生一个新的和不同的代表,使得结果更有区分性。证实此提出方法有效性的实验结果产生于FERET和AR数据集。

二、方法

1.PCA

将M幅图组成的协方差矩阵C进行奇异值分解



从大到小排列特征值,取前K个特征值对应的特征向量组成特征矩阵U,在人脸识别中,训练和测试的图像投影到U上获得权重矢量w


这些权重作为可分类的人脸空间中的点。

这个方法广泛应用于人脸识别技术,但是受限与二阶独立且仅仅依赖于单层表达。

2.DPCA

因此,提出一种基于PCA的等级学习方法。

第一层的输出作为第二层的输入:



但是直接输出第一层的结果会产生线性冗余投影。从而想出一个f(.)滤波产生每一层结果的不同的表达。在本篇论文中,f(.)为白化滤波器。

A. ZCA 白化

白化的思想:给出一个组训练样本,我们将观测矢量X变成一个新的X’使得其中的元素不相关,并且有统一的差异:


白化矩阵为:


则输入图像x,白化后的图像为


B.算法流程



分层输入并级联输出矩阵。

三、小结

本文提出了一种把ZCA白化+PCA多层处理,再把每层的特征提取的结果进行输出的方法,可有效地应用于人脸识别中。

Reference

http://xueshu.baidu.com/s?wd=paperuri:(81e914f6986d42591eebb17be985cf2d)&filter=sc_long_sign&sc_ks_para=q%3DFace+recognition+using+Deep+PCA&tn=SE_baiduxueshu_c1gjeupa&ie=utf-8&sc_us=8627420934555620381
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息