基于PCA的人脸识别

本文介绍了基于PCA的人脸识别算法,包括算法描述、Matlab实现、性能测试和结果分析。通过PCA对人脸图像进行降维,提取特征脸,实现高精度的匹配。测试结果显示,PCA算法在K值为87时,能达到约94.5%的识别准确率。
摘要由CSDN通过智能技术生成

基于PCA的人脸识别

一、算法描述

这次项目人脸识别只要靠PCA算法实现,算法的主要步骤如下:

1.首先,应题目要求,对于所有的Faces集里的40个人,各随机取出其10张图像中的7张用作训练集,剩余3张用作后续的测试。

2.然后,将280张train_imgs都拉伸成列向量并将所有列拼在一起,由于每张图像的总像素数都为10304,这样就得到了10304*280的矩阵X。

3.X的每列再减去均值向量,从而中心化。

4.求出X的转置和X的矩阵乘积,并求出乘积40*40矩阵的特征向量,这里用的是matlab的eig函数。

5.滤出前K大的特征值对应的特征向量W,再将X乘上W映射得到V,将V的每一列向量作为后续映射关系的一组基向量,共有K个基向量,也可以称为K个特征脸。

6.将X每一列都通过基向量矩阵V映射到对应的特征空间中。这样相当于将每张图像train_imgs都在新的空间中找到了对应的位置。

7.对于每个测试图像,也进行类似上述的变换:转成列向量,减去均值向量而中心化,然后用基向量矩阵映射到特征空间中。

8.要判断测试图像和40张train_imgs的哪张最匹配,只需对比测试图像在特征空间的新坐标和40张train_imgs在特征空间的坐标直接的欧几里得距离(或二范数)的大小,找到二范数最小的对应的train_img,就找到了最匹配训练图像了。

9.综上所述,这种算法的主要思想就是,去除部分无关的或者关系较小的向量,保留影响较大的向量作基,这样即减少了基向量的数目从而减少了运算量,同时又减少了图像细节,能避免无关的向量和测试图像主人公的表情、脸朝向和配饰等变化对测试准确性产生不良干扰。

二.Matlab代码

函数Get_Training_Set.m(用来随机读取40*7张图像并分别作平均产生训练集):

function [ imgs ] = Get_Training_Set( input_path, index, height, width, output_path )     
    imgs = zeros(length(index), height, width);     
    for i = 1 : length(index)         
        imgs(i, :, :) = uint8(imread([input_path '/' num2str(index(i)) '.pgm']
人险识别是生物特征识别中一个活跃的研究领域,智能人脸识别软件技术对新时期的反恐和综合安全等具有重大意义。人脸识别系统以人的脸像作为识别身份的媒介,采用计算机视觉和图像处理技术,抓住人脸的轮廓特征和局部细节特征,研究匹配和识别方法。目前已经在身份鉴别和权限控制等方面得到了广泛的应用,是计算机科学与技术和模式识别领域中非常活跃的研究课题。人脸识别方法主要分两类:基于整体特征的方法和基于特征分析的方法。本文采用基于整体的特征脸方法(PCA),并以人脸识别为目标,以基于PCA人脸识别方法为重点进行了分析比较研究和实现的关键技术研究。主要的工作如下:(1)介绍人脸识别的研究背景、意义,比较分析当前常用的人脸识别技术,以及存在的主要困难。 (2)人脸识别的关键问题是人脸的检测和人脸特征的提取,所以本文利用人脸的肤色信息,实现了人脸的检测与定位。采用基于肤色模型的方法,先检测出人脸的一个大致区域,再进行眼睛、嘴巴等的定位,最后得到人脸的精确位置。系统测试过程中发现,基于肤色模型的人脸检测对正面人脸的检测效果较好,而对多尺度检测的能力较弱并且对光线的变化敏感。 (3)比较深入的分析了PCA人脸识别方法的原理,并对PCA在应用过程中遇到的特征值选择和距离准则问题进行了研究,实现了基于PCA算法的人脸识别PCA方法的显著特点就是利用低维特征向量来表示原始样本信息,但是这样产生的结果就是,使得PCA方法在特征值提取的计算量和时间上的花费都很大,所以本文对PCA的一种改进方法2DPCA也进行了研究,并通过实验比较了二者的性能,2DPCA识别时间更短,识别率更高。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值