网站首页  词典首页

请输入您要查询的论文:

 

标题 基于并行PCA算法的人脸识别系统的研究
范文

    赵亚鹏

    摘 要:为了解决快速、准确人脸识别的问题,提出了一种基于并行PCA算法的人脸识别方法。利用主成分分析法(PCA)能够降低特征维数、容易实现、训练时间较短的特点,设计实现了一种并行PCA算法,首先根据整幅图像提取出4幅部分人脸图像,然后将整幅图像和4幅部分图像同时由相同结构的PCA模型进行学习,提取人脸特征向量,通过欧氏距离进行测试图像与训练图像的匹配计算,最后通过测试图像与5级并行PCA模型的识别结果进行加权决策,从而实现人脸识别的目的。利用ORL人脸库的图像数据,在Matlab进行的仿真实验结果表明,该方法在准确性上有了很大程度的提升,识别的速度也相对较快,具有较高的鲁棒性。

    关键词:PCA算法;人脸识别;五级并行PCA模型;权重计算;均值滤波

    中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)19-0147-02

    Research on Face Recognition System Based on Parallel PCA Algorithm

    ZHAO Ya-peng

    (College of Information Science and Engineering, Shandong University of Science and Technology, Qingdao 266590, China )

    Abstract:In order to solve the problem of fast and accurate face recognition, a face recognition method based on parallel PCA algorithm is proposed. Using principal component analysis (PCA) method can reduce the dimension of features, easy to implement, training time is short, the design and implementation of a parallel algorithm for PCA, first of all according to the whole image to extract the 4 part of face images, then the whole image and 4 partial images at the same time by the same structure of the PCA model of learning, face feature vector extraction, the Euclidean distance for matching calculation of the test images and training images, finally through the test image with the five level parallel PCA model identification results are weighted decision, in order to achieve face recognition. Using the image data of the ORL face database , the simulation results in Matlab show that the method has a great degree of improvement in accuracy, the recognition speed is relatively fast, with a high degree of robustness.

    Key words:PCA algorithm;Face recognition;Five level parallel PCA model;Weight calculation;Mean filter

    1 概述

    随着智能终端设备(手机、Pad、门禁等)的不断发展,身份识别已经成为我们日常生活的重要组成部分,身份验证技术被广泛应用于各个领域,特别是人们对于个人隐私信息的保护,使得身份识别再次成为关注的焦点。人脸识别作为身份识别的重要手段之一,因其具有识别率高、采集性强、接受性高等特点,在身份识别的各类方法中具有独特的优势,成为了目前比较热门的研究领域。

    目前,卷积神经网络(Convolutional Neural Networks)是图像识别领域最重要的研究热点,而且在语音识别领域也取得了不错的效果,但是卷积神经网络的整个训练过程比较费时,而且实现相对复杂,而基于PCA算法的人脸识别技术因其自身存在的许多缺陷,一直没有被广泛应用,但该方法实现简单、学习速度较快,因此,本文主要研究改进的并行PCA算法,以弥补传统PCA算法在人脸识别领域的不足。

    本文提出的基于并行PCA算法的人脸识别技术,首先对原始图像进行预处理,如灰度归一化和中值滤波等操作,以消除图像噪声、光照等因素造成的影响,使得特征提取更加准确可靠。然后,通过5级并行PCA模型获取数据的不同特征矩阵,然后将训练图像和测试图像分别进行子空间的投影,利用欧氏径向基函数(Euclidean Radial Basis Function)进行人脸的匹配,最后根据训练得到的权值向量进行加权决策。本文通过ORL人脸数据库的仿真实验证明,该算法的效果明显好于PCA算法。

    2 并行PCA算法

    PCA(Principal Component Analysis)即主成分分析技术,PCA是基于K-L变换的统计学分析方法,是多元分析中常用的方法,其基本思想是将高维数据投影到低维空间,主要过程在于特征值的计算和矩阵的降维。将PCA应用于人脸识别时,首先将图像转化成矩阵向量,然后进行矩阵的奇异值分解(Singular Value Decomposition),将高维向量通过计算得到的特征向量矩阵投影到低维的向量空间,从而减少数据的计算量。

    2.1 基于并行PCA算法的人脸识别流程

    本文中提出的并行PCA算法,正是基于上述的PCA算法,通过建立5级的PCA算法模型同时进行数据特征的学习,使得最终的人脸识别准确率得到进一步的提高,具体的人脸识别流程如图1所示。

    2.2 并行PCA算法的实现的步骤

    2.2.1 人脸图像的预处理

    首先,需要把ORL人脸数据数据库的所有训练图像大小进行归一化,并转化为像素矩阵,矩阵大小记为,为矩阵的行数,为矩阵的列数。之后利用均值滤波和灰度归一化进行图像的去噪处理,以消除光线等问题对图像造成的影响,以方便后期的特征提取等操作。

    2.2.2 人脸图像的PCA降维

    根据PCA的原理,可以将每一张图像看成是一个高维的向量,所有的图像可以看成是这个高维空间中的一点,PCA要做的就是找出另外一个尽可能多的反应图像特征的低维空间。

    假如样本由n张大小为p*q的人脸图像组成,那么每一张图像可以保存为一列向量,向量维数是p*q,真个样本可以看成是一个行数为n,列数为p*q的矩阵记为矩阵A。

    根据上述过程,首先求出矩阵A的协方差矩阵,然后求出协方差矩阵的特征值,选取前m个最大的特征值,然后求出对应的特征向量,组成一个特征矩阵。通常所说的“特征脸”就是这些特征向量,而特种功能矩阵就是“特征脸”空间或者说子空间。然后可以将每一张图片投影到该子空间,得到了每一张图像的投影矩阵(l*m)。

    2.2.3 人脸图像的识别

    对于待识别的图像,也可以看成是一列向量,投影到子空间得到一个投影矩阵,然后一一求出这个投影矩阵与样本图像投影矩阵最相似的。然而有可能该人脸不是人脸库中的,所以最相似的人脸也不一定是同一个人脸,还需要设置一个阈值来判断待识别人脸是否是人脸库中的。

    人脸识别部分正是基于上述的PCA算法,在本文所提出的并行PCA模型中,是由5级的PCA模型同时进行人脸识别这一操作,最后根据训练得到的权值向量进行决策,通过使用多个PCA模型,从而使得整个识别过程的准确率得到进一步的提升。

    3 系统设计及实现

    3.1 系统总体设计

    本文中所提出的基于并行PCA算法的人脸识别系统,包括人脸图像采集模块、图像预处理模块、识别模块。人脸图像采集模块主要是采集训练图像数据和测试图像数据,并由原始图像提取出4幅与之对应的部分图像;图像预处理模块主要就是进行图像归一化和图像的去噪工作,图像的归一化包括大小归一化和灰度归一化,可以使用比较常见的直方图均衡化等技术,而图像的去噪可以使用中值滤波技术,以去除比较常见的高斯噪声等;人脸识别模块是基于5级相互独立的PCA模型进行特征值的学习和比对,而且通过训练得到的权值向量进行最终的是脸识别决策。整个系统的实现是基于Matlab进行仿真实验的,实验数据来自剑桥大学AT&T实验室创建的ORL人脸数据库。

    3.2系统功能模块实现

    3.2.1人脸图像采集实现

    图像采集模块主要就是将存储在本地的图像文件通过Matlab的imread函数读入矩阵中,以方便后期的PCA操作,其核心语句为Image{t}=imread([[filepath,FilDir(ii).name],'\',ImDir{ii}(jj).name]);

    使用上述语句即可读入训练数据和测试数据文件。

    3.2.2 图像预处理模块

    该模块的主要任务就是利用中值滤波和直方图均衡化进行图像的去噪工作,以消除不同光照和图像噪声的影响,提高准确率。其核心代码为:

    S1=zeros(1,256);

    for i=1:256

    for j=1:i

    S1(i)=GP(j)+S1(i);

    end

    end

    S2=round((S1*256)+0.5);

    for i=1:256

    GPeq(i)=sum(GP(find(S2==i)));

    end

    3.2.3 识别模块

    图像经过之前的预处理之后,需要将图像矩阵转化为列向量,一幅图像就是一列向量,整个训练图像构成了整个特征空间矩阵,测试图像也会转化为一列向量,之后会利用矩阵之间的运算进行图像的分析计算。识别模块的工作就是根据测试图像和之前所有的训练数据进行对比,查找到与之最相似的图像,实验的结果如图2所示。

    4 结论

    PCA算法作为传统的人脸识别算法,因其自身存在的许多缺陷而没能发挥较好的作用,但是其自身具有其他算法所不具有的特点,本文设计的并行PCA算法虽然是基于PCA算法,但是借鉴了卷积神经网络的多层结构,而且使用加权操作进行最终人脸识别的决策。基于ORL人脸数据库的测试结果表明,该并行PCA算法的准确率和鲁棒性均得到了进一步的提升,与其他的单独PCA算法具有十分明显的优势。

    参考文献:

    [1] 张利芳. 基于PCA算法的人脸识别系统研究[D].太原:中北大学,2015.

    [2] 杨海燕,蒋新华. 基于并行卷积神经网络的人脸关键点定位方法研究[J]. 计算机应用研究, 2015, 32(8): 2517-2519.

    [3] 杨颖娴. 基于PCA算法和小波变换的人脸识别技术[J]. 微电子与计算机, 2011, 28(1): 92-94.

    [4] 段宝彬,韩立新. 改进的卷积神经网络及在碎纸拼接中的应用[J]. 计算机工程与应用, 2014, 50(9): 176-181.

    [5] 顾佳玲,彭宏京. 增长式卷积神经网络及其在人脸检测中的应用[J]. 系统仿真学报, 2009, 21(8): 2441-2445.

    [6] 伊力哈木·亚尔买买提. 基于改进型PCA和LDA融合算法的人脸图像识别[J]. 计算机仿真, 2013, 30(1): 415-418.

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2024/12/22 17:00:00