采用PCA方法的人脸识别系统毕业论文_第1页
采用PCA方法的人脸识别系统毕业论文_第2页
采用PCA方法的人脸识别系统毕业论文_第3页
采用PCA方法的人脸识别系统毕业论文_第4页
采用PCA方法的人脸识别系统毕业论文_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DSP综合实验课程设计报告题目:采用主成分分析方法的人脸识别系统院系名称:电子信息学院类别:雪豪学生:讲师:2020年1月前言信号处理系列课程是电子信息类专业的核心课程,包括六门课程:信号与系统、随机信号分析、数字信号处理、DSP原理及应用、语音信号处理、数字图像处理。前三门是基础课,后三门是专业应用课。数字信号处理是电子信息工程和通信工程专业的一门重要的理论和实践必修课。其目的是让学生了解数字信号处理的基本理论、基本分析方法、基本算法和基本实现方法。包括离散时间大规模集成电路系统的理论,其时域和频域分析方法,DFT算法,FFT算法,以及IIR和FIR滤波器的结构和设计方法,为后续的课程学习和

2、工作实践奠定理论基础。DSP原理及应用是一门应用性很强的专业课程,DSP技术是目前信息技术行业广泛应用的先进技术。本课程的目的是使学生在掌握数字信号处理基本理论的前提下,了解DSP的发展现状和应用领域,掌握DSP的基本硬件结构特点和开发环境,学习DSP硬件设计和软件编程的基本方法,为今后数字信号处理的应用和研究打下基础。语音信号处理是一门发展迅速、应用广泛的前沿交叉学科,也是一门跨学科的综合应用研究领域和新技术。它是迅速发展的情报学研究领域之一,其研究涉及一系列前沿课题。本课程的目的是使学生了解语音信号处理的原理、方法和应用,以及该学科当前的发展趋势和方向。其中一些能反映智能信息处理技术、现代

3、信号处理技术等前沿和新兴技术在语音信号处理中的应用、最新研究成果和进展。数字图像处理是研究数字图像处理的基本理论和方法,系统介绍图像分析的基本理论和实际应用。目的是使学生系统地掌握数字图像处理的基本概念、基本原理、实现方法和实用技术,了解数字图像处理的基本应用和目前国外的发展方向。是一门涉及多个领域的专业应用课程,与图像通信、模式识别、计算机视觉等学科交叉,为以后相关领域的研究和发展打下坚实的基础。为了帮助学生深入理解和消化基础理论,进一步提高学生的综合应用能力,锻炼学生独立解决问题的能力,我们通过整合数字信号处理、DSP原理及应用、语音信号处理、数字图像处理几门课程,设计了一门DSP综合实验

4、课。在学生所学的基础上,查阅相关资料,自主设计,并通过实验装置实施,综合分析结果,寻找最佳设计方案。目录导言1目录22概述33课程设计的四个基本要求设计的五种能力和目的46课程设计的组织形式4七课程设计宽容与原则5八个设计步骤9九。设计源程序15十种体验21十一篇参考文献22一.概述信号处理系列课程是电子信息类专业的核心课程,包括六门课程:信号与系统、随机信号分析、数字信号处理、DSP原理及应用、语音信号处理、数字图像处理。前三门是基础课,后三门是专业应用课。为了帮助学生深入理解和消化基础理论,进一步提高学生的综合应用能力,锻炼学生独立解决问题的能力,我们通过整合数字信号处理、DSP原理及应用

5、、语音信号处理、数字图像处理几门课程,设计了一门DSP综合实验课。主要从以下两个方面入手:1.设计信号处理理论和技术的综合应用。比如信号滤波实验,语音信号中混有噪声,要求学生滤除语音信号中的噪声。学生首先要分析信号频谱,然后选择滤波器类型,再确定滤波器参数,最后设计和应用滤波器。而不是简单的给出过滤器类型和设计指标。2.如何将DSP原理与应用、语音信号处理、数字图像处理三门课程有机结合起来,设计一个实用的系统。在学生所学的基础上,查阅相关资料,自主设计,并通过实验装置实施,综合分析结果,寻找最佳设计方案。希望学生通过完成一门与信号处理相关学科的理论设计、程序设计和实验调试任务,提高分析和解决实

6、际问题的能力。本次设计要求将课程中所学的算法实现、Matlab仿真、程序设计、DSP开发平台调试等知识进行应用,以加深对信号处理知识的理解和应用,培养可编程DSP芯片的开发技能。二,课程设计的基本要求1.设计过程以小组为单位,每个小组有一个组长,负责组织协调本小组的讨论和任务分工;2.设计过程必须在本组内独立完成,不允许跨组参考或抄袭,避免方案雷同;3.设计书应打印在B5纸上,并使用统一的封面装订;4.课程设计原则上应在3周内完成;5.最后一周的周五进行优秀设计方案评选,在各组推选代表进行方案介绍的基础上,评选出2-3个优秀设计方案。6.在完成规定设计能力的基础上,有余力的同学可以进一步设计能

7、力,提高综合应用能力,锻炼独立解决问题的能力。三。设计内容和目的1.课程设计的主要内容题目:采用主成分分析方法的人脸识别系统利用所学知识,设计了一个基于PCA方法的人脸识别系统。要求系统能够分析各种文件格式的人脸文件,提取一定长度的人脸训练集的特征值,显示特征值和平均脸,由特征向量构造训练集内或训练集外的任意人脸文件,完成误差比较和人脸识别功能。2.课程设计的目的1.熟悉人脸检测和识别的基本原理和实现方法;2.熟悉Matlab的使用和常见的信号处理功能,能使用Matlab进行一般的数字图像处理操作。3.掌握基于PCA的人脸识别的步骤和算法。4.通过对实际人脸图像的处理,了解通用DSP系统设计的

8、开发过程;熟悉数字图像处理常用功能的使用和通用数字图像处理系统的设计方法;5.掌握主成分分析、特征值和特征脸的实现方法,获得人脸识别的感性认识;6.培养认真的工作作风和科学态度。通过课程设计的实践,帮助学生逐步树立正确的生产观、经济观和全局观。第四,课程设计的组织形式课程设计过程以小组为单位进行。讲师向学生分发课程设计的相关背景资料,并告诉他们课程设计的方法、步骤和要求。设计过程采用集中课堂指导,分散设计的方式进行。课程设计由23人组成,要求在分工合作、充分讨论、相互启发的基础上形成设计方案。在课程设计结束时,需要提交一份课程设计报告。必要时可要求每个小组选出一名代表对课程设计方案进行论证和答

9、辩,并对部分优秀设计成果进行评价。第五,课程设计的容忍度和原则1.为什么要设计PCA人脸识别系统?人脸识别一直是图像处理和模式识别领域的研究热点和难点。这项技术有着广泛的应用背景,如身份认证、信用卡识别、驾照和护照的验证、银行和海关的监控系统、一些单位的自动警卫系统等。根据特征和分类方法的不同,人脸识别大致可以分为三类:1)提取人脸几何特征的方法;2)基于特征分析的模板匹配;3)统计分析方法,如主成分分析(PCA)、弹性图匹配、隐马尔可夫模型、神经网络等。其中,基于主成分分析1的特征脸1方法因其计算简单、概念清晰而受到研究者的青睐。主成分分析(PCA),也称为特征脸方法,已经成为人脸识别的基本

10、方法之一。M. Kirby和L. Sirovich Kkirby,1990使用PCA来表征人脸图像。他们认为任何图像都可以通过一组特征脸的线性加权和近似重构,其权重系数可以通过将人脸图像投影到特征脸空间中得到。M. Turk和A. Pentland将PCA应用于人脸检测和识别Turk,1991a土耳其人,1991年b。2.2的原则。主成分分析算法PCA(主成分分析)算法是人脸识别中一种比较新的算法。其优点是识别率高,识别速度快。2.1.主成分分析原理设x是代表环境的m维随机向量。假设x的平均值为零,即:Ex=O。设W表示为M维单位向量,X投影在其上。该投影被定义为矢量x和w的乘积,表示为:主成

11、分分析的目的是找到权重向量w以最大化表达式Ey2的值:根据线性代数理论可知,最大化满足公式子值的训练应满足以下公式:即使最大化上式的W是矩阵Cx的最大特征值对应的特征向量。2.2.主成分求解步骤在PCA中,主要要求是找到方差最大化的变换方向,具体求解步骤如下:(1)构造关联矩阵:Cx=Ex*xT,CX PN * N .在实际应用中,由于原始数据的数学期望不易求解,我们可以用下面的公式近似构造关联矩阵:(其中x1,x2,.,xN,是每个原始灰度图像的所有像素对应的向量,n是原始图像的个数)首先,计算Cx的各个特征值。(3)将特征值按大小排序。(2)(4)计算对应于前m个特征值的正交特征向量以形成

12、W.(5)将原始数据投影到特征向量W上,得到原始图像的主要特征数据。2.3主成分的求解方法通过以上分析可以知道,主成分分析的问题最终转化为求协方差矩阵的特征值和特征向量的问题,以及主成分正交分解的算法。3.特征脸算法特征脸是利用主成分分析进行特征提取的经典算法之一。人脸特征方法是从主成分分析中衍生出来的一种人脸识别和描述技术。人脸特征法将包含人脸的图像区域视为一个随机向量,因此可以通过K-L变换得到正交的K-L基。其中,较大特征值对应的基具有与人脸相似的形状,所以也称为特征脸。这些基的线性组合可以用来描述、表达和近似人脸图像,因此可以进行人脸识别和合成。识别过程是将人脸图像映射到特征人脸形成的

13、子空间,并在特征空间中将其位置与已知人脸进行比较。具体步骤如下:(1)初始化,获取人脸图像的训练集并计算特征脸,定义为人脸空间,存储在模板库中供系统识别;(2)输入新的人脸图像,将其映射到特征人脸空间,获得一组关于人脸的特征数据;(3)通过检查图像与人脸空间的距离来判断图像是否是人脸;(4)如果是人脸,根据权重模式判断是否是数据库中的人,并进行具体操作。如何计算特征脸:设人脸图像I(x,y)为二维N*N灰度图像,用N维向量r表示,人脸图像的训练集为Ri|i=1,M,其中M为训练集中图像的总数,这M幅图像的平均向量为:每个面部Ri和平均面部之间的差向量是:训练图像的协方差矩阵可以表示为:其中A=

14、1,M。人脸由协方差矩阵C的正交特征向量组成.对于N*N张人脸图像,协方差矩阵C的大小为N2*N2,因此求解其特征值和特征向量非常困难。另一种方法是:也就是协方差矩阵的转置矩阵,可以知道这个矩阵是M*M的一个较小的矩阵(M是训练的面数)。首先计算M*M矩阵L的特征向量vi(l=l,M),然后通过差分图像i(i=1,M)和vi(l=l,M)的线性组合得到矩阵C的特征向量ui(l=1,M): U=u1,um实际上m(m I = imread( test . png );%将图像文件test.png读入变量I尺寸(一)%来获取矩阵I的行和列的大小。ans =320 240一(1:10,1:10)%显

15、示了矩阵I的1-10行和1-10列ans =26 20 20 22 22 20 19 20 22 2226 24 19 22 22 19 21 24 24 2225 24 22 24 21 19 20 22 24 2225 21 21 24 22 20 21 22 24 2024 20 22 25 22 19 20 21 25 2420 19 22 22 24 21 21 24 22 2420 20 21 25 25 24 24 25 20 2020 20 21 24 26 25 25 25 20 2020 19 22 24 24 25 24 24 22 2121 17 21 25 21 22

16、 24 25 22 21 colormap(灰色(256);%显示256个值的灰度。图像(一);%将矩阵I显示为图片。 da SPECT(1 1 1);%将x:y设置为1 1:13.加载待训练的人脸集图像,存储在一个大矩阵中。Matlab适合矩阵运算。这里,使用matlab的函数进行矩阵运算比使用C编程代码更简单。可以加载的训练集文件存放在同一个目录下,文件名存放在一个文件中,方便阅读。训练集中的每个人脸图像切片被存储为大矩阵的一列。显示图像时,注意将一维数据还原为二维数据。运行结果如图2所示。 L = Imgs(:,10);%取大矩阵的一列。 L = shape(L,w,h);% Resha

17、pes函数将列向量转换为二维矩阵。图像(L); colormap(灰色(256); da SPECT(1 1 1);图2由训练集矩阵显示的集合的每个图像4.获取训练图像集的主成分特征向量。采用Turk和Pentland提出的算法来获得特殊的向量,下面的代码绘制了特征值和特征向量的图谱,执行结果如图3所示。剧情(瓦尔斯);%画特征值图。 CVals = zeros(1,长度(Vals);%使向量的长度等于Vals CVals(1)= Vals(1); 对于i = 2:长度(Vals特征值的累积和CVals(I)= CVals(I-1)+Vals(I);结束; CVals = CVals/sum(

18、Vals);%被设置为1剧情(CVals); ylim(0 1);图3画出特征值图。5.显示特征面在人脸的相关研究中,通常在子空间中使用PCA方法来定义最佳的人脸风格表情。一些训练面部图像集被用于生成特征脸,并且面部空间被扩展,使得这些图像中的面部区域被投影到图像的子空间中并被聚类。相同的非人脸区域的训练图像将通过相同的方法被投影到相同的空间并被聚类。然后,比较两个投影的子空间,得到人脸区域和非人脸区域在子空间投影上的分布。然后,比较两个投影的子空间,得到人脸区域和非人脸区域在子空间投影上的分布。图4示出了图2所示的训练面部图像集的特征面部显示。例如,通过观察特征脸的显示结果,我们可以生动地认

19、识到特征脸是粗糙脸。图4是对应于图2中的训练脸部图像集的特征脸部显示6.平均人脸显示训练集的平均面,即均值面,是矩阵每一列数据的平均值。如图5所示,是图2中训练人脸图像集对应的平均人脸。图5平均图像7.从特征人脸重建训练集人脸图像。这些特征可以重建训练集的人脸图像。图6a)是训练集图像的再现,图6b)是每个特征脸的权重和欧几里德距离。图6a图6 b这些特征还可以在训练集之外重建人脸图像。图7a)是训练集之外的图像的再现,图7b)是每个特征脸的权重和欧几里德距离。(一)(二)图7七。设计源程序清除%删除变量关闭%关闭窗口。Clc%清除窗口m = 9;经过训练的图片数量百分比选择的标准差和平均值。

20、选定的标准值和平均值它可以是接近大多数图像的标准差和平均值的任何数字。大多数图片接近标准值和平均值的百分比如下:um = 100%平均值ustd = 80%标准值%读取并显示图像(BMP);阅读和显示图片的功能部分:s =;% imgmatrices是一个图像矩阵。图(1);%打开图1对于i=1:M%,打开集合M=9的训练图像。str=strcat(int2str(i),。PGM);%连接构成图像名称的两个字符串当前目录中的% 19.pgmeval( img = im read(str););Im (img)%显示图像如果i=3标题(定型集, fontsize ,18)%标题目标drawnow

21、%更新数字1irow icol=大小(img);temp=reshape(img ,irow*icol,1);%创建一个(N1*N2)x1矩阵创建一个N1N21矩阵。S =S temp;目标这里我们改变所有图像的平均值和标准差。我们将所有图像标准化。%该部分更改所有图像的平均值和标准值,并使图像正常化。这样做是为了减少由于光照条件造成的误差。%这可以减少由光源条件引起的误差。对于i=1:size(S,2) %size返回矩阵S的维数。temp=double(S(:,I)。%双精度m =平均值(温度);平均百分比。st=std(温度);%标准偏差s(:,I)=(temp-m)* ustd/ST+

22、um;%这个公式平均s。目标%显示标准化图像使用图2显示标准化图像。图(2);因为我=1:Mstr=strcat(int2str(i),。BMP);%读入19.bmp文件img = shape(S(:,I),icol,irow);%重构imgimg = img ;%换位eval(imwrite(img,str);%执行字符串plot(cell(sqrt(m)、cell(sqrt(m)、I)%与上述相同,以形成33图像排列。Im (img)%显示图像drawnow%更新数字2如果i=3标题(标准化训练集, fontsize ,18)目标目标%平均图像;平均图像m =均值(S,2);TMI mg

23、= uint 8(m);img = shape(tmimg,icol,irow);%获取n1 * n2x 1向量并创建一个n2xn 1矩阵,以创建一个N2N1矩阵。img = img ;通过转置图像创建一个N1XN2矩阵。找到img的转置矩阵图(3);imshow(img);标题(“平均图像”,“字体大小”,18)用于操作的图像改变用于处理的图像。dbx =;% A矩阵A矩阵因为我=1:Mtemp=double(S(:,I)。%采用双精度。dbx =dbx temp;%将两个矩阵相加。目标协方差矩阵C=AA,L=AA 协方差矩阵a = dbx ;%矩阵A是从上面获得的dbx的转置矩阵获得的。l

24、 = A * A;%A矩阵和A矩阵的转置矩阵的乘积给出L矩阵。l的特征向量是l的特征向量。dd是L=dbx*dbx和C=dbx*dbx 的特征值;Dd是L=dbx*dbx和C=dbx*dbx 的特征值vv DD= EIG(L);排序和精英认为整八值为零。选择并消除特征值为0的那个。v =;%将v留空。d =;%将d留空。对于i=1:size(vv,2)If(dd(i,i)1e-4)%用这个表达式来度量。v=v vv(:,I);d=d dd(i,I);目标目标排序,将返回一个升序序列选择一个可以返回降序序列。B索引= sort(d);ind=zeros(大小(索引);具有与索引一样大的% ind

25、的零矩阵dt EMP = zeros(size(index);同理,% dtemp是一个与index大小相同的零矩阵。vtemp =零(大小(v);% vtemp是一个与v大小相同的零矩阵。len =长度(索引);% len是索引的最大维度。对于i=1:len%从1到len循环dt EMP(I)= B(len+1-I);% dtemp(i)的值是B(len+1-i)ind(I)= len+1-index(I);% ind(i)的值是len+1-index(i)vtemp(:,ind(i)=v(:,I);% vtemp的列ind(i)与v的列I相同。目标d = dtemp% dtemp的值被赋给

26、d。v = vtemp% vtemp的值被分配给v。特征向量的规范化%特征向量的规范化对于I = 1: size (v,2)% access,每列访问每一行kk=v(:,I);%将V的第I行赋给kktemp=sqrt(sum(kk。2);%取一个名为temp的临时变量,对kk的每个元素求平方。然后求和,将平方根赋给temp。v(:,i)=v(:,I)。/temp;目标C矩阵的特征向量%矩阵C的特征向量。u =;%取U为空矩阵对于i=1:size(v,2)%访问每一行temp = sqrt(d(I);u=u (dbx*v(:,I)。/temp;%构造矩阵u目标特征向量归一化对于i=1:size(

27、u,2)kk=u(:,I);%将U的第I列赋给kktemp=sqrt(sum(kk。2);%取一个名为temp的临时变量,对kk的每个元素求平方。然后求和,将平方根赋给temp。u(:,i)=u(:,I)。/temp;%划分U矩阵和temp矩阵对应的元素,重新生成U。目标显示特征脸;显示特征面图(4);%图4对于i=1:size(u,2)img = shape(u(:,I),icol,irow);%通过U矩阵重建图像img = img ;%转置图像img=histeq(img,255);%使用平衡直方图来提高对比度。图4中的Plot (CEIL (sqrt (m),CEIL (sqrt (m)

28、,I)%是一个33的图像。im show(img)%显示imgdrawnow%更新图4如果i=3Title (Eigenfaces , Fontsize ,18)%显示 Eigenfaces 目标目标找出训练集中每张脸的权重。求训练中每张脸的权重。omega =;%创建一个空矩阵对于h=1:size(dbx,2)WW =;%外部循环建立一个空矩阵WW。对于i=1:size(u,2)t = u(:,I);%将U的第I列转置赋值给t。weightoimage = dot(t,dbx(:,h);%被T和dbx的H列转置形成向量点,赋给WeightOfImage。WW =WW;weightoimage

29、;%构成WW目标omega =omega WW;%构成欧米伽。目标90%以上的图像被读入、归一化、特征空间的训练和特征脸的形成.%并显示训练图像、归一化图像、均值图像和特征脸。%识别以下零件。获取新图像获取新图像。%仍然使用orl人脸数据库中的人脸图像作为实验对象。%保持与训练图像相同的大小。InputImage = input(请输入图像的名称及其扩展名n , s );%输入要读取的文件作为鉴别。input image = im read(strcat(input image);%读取当前路径中的文件。图(5)%图5Plot (1,2,1)%显示了图5中左侧和右侧的两个图像。im show(

30、input image);色彩映射表(“灰色”);Title (Input image , fontsize ,18)%显示带有标题 Input image 的输入图像in image = shape(double(input image),irow*icol,1);%将输入图像重建序列分配给图像。temp = InImage%将图像分配给tempme =均值(temp);%取temp的平均值,赋给我。st=std(温度);%取temp的标准偏移量,赋给ST。temp =(temp-me)* ustd/ST+um;% temp由辅助表达式处理。NormImage = temp%将临时分配给正常

31、图像差值= temp-m;%temp和m之间的差异是差异NormImage =差异;%将差异分配给NormImage。p =;%建立一个空矩阵p。aa=size(u,2);%从u的纬度得到aa的值。对于i = 1:aa %aa周期pare = dot(NormImage,u(:,I);%向量点对由normimage,u的列I构成。p =p;pare;%使用pare构造p矩阵。目标ReshapedImage = m + u(:,1:aa)* p;% m是均值图像,u是特征向量m是均值图像,u是特征向量。取U矩阵的1到aa列,乘以P矩阵,再加上m。ReshapedImage = reshape(R

32、eshapedImage,icol,irow);ReshapedImage = ReshapedImage ;%转置整形图像%显示重建的图像。逼真的重建图像Plot (1,2,2)%显示了图5右侧的重建图像。imagesc(ReshapedImage);色彩映射表(“灰色”);%测量并显示整形图像。Title(未重构的图像, fontsize ,18)% title:“未重构的图像”最小重量=;%创建最小重量的空矩阵对于i=1:size(u,2)t = u(:,I);%转置U的第I列,并将其赋给t。WeightOfInputImage = dot(t,Difference );%构建向量点权重输入图像最小重量=最小重量;WeightOfInputImage;%构造图像权重目标ll = 1:M;%图(6)Plot (1,2,1)% figure6输入图像的权重显示在左侧。Stem(ll,InImWeight)%使用Stem函数划分离散系列数据。Title(输入面的权重, fontsize ,14)% title 输入面的权重%查找欧几里得距离查找欧几里得距离e =;%创建一个空矩阵e。对于i=1:大小(,2)q =(:,I);%阅读欧米伽的第一列diff weight = in imweight-q;%使用最小重量-q获得不同重量。mag = n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论