版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于BP神经网络的人脸识别学生:林仙土 学号:S 摘要:人脸自动识别技术有着广阔的应用领域,本文提出用主成分分析和BP神经网络进行人脸识别。人脸识别包括两个部分:第一,特征提取;第二,神经网络进行识别。 关键词:BP神经网络 人脸识别 主成分分析 本系统采用20幅图像(4个人每人5幅)作为训练图像,应用主成分分析对训练图像进行二阶相关和降维,提取训练图像的独立基成分构造人脸子空间,并将训练集中的人脸图像向独立基上投影得到的系数输入改进的BP神经网络进行训练。然后将待识别的人脸图像向独立基上投影得到投影系数,再将其输入已训练过的BP神经网络进行识别。此方法对人脸库图像进行测试,识别率达到90%以
2、上。本系统采用MATLAB编程,并运用了其中的GUI编程实现人机交互。 为在不同机子下顺利运行,本系统用uigetdir函数让用户选择训练图像库和待识别图像,使得待识别图像可在不同位置皆可让软件识别。 注意:待识别图像的名字必须是test.jpg。系统界面:程序:function varargout = BP(varargin)gui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningFcn, BP_OpeningFcn, . gui_Output
3、Fcn, BP_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);endfunction BP_OpeningFcn(hObject, eventdata, handles, varar
4、gin)handles.output = hObject; guidata(hObject, handles); % UIWAIT makes BP wait for user response (see UIRESUME)% uiwait(handles.figure1);% - Outputs from this function are returned to the command line.function varargout = BP_OutputFcn(hObject, eventdata, handles) % varargout cell array for returnin
5、g output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structurevarargout1 = handles.output; % - Executes on button press in
6、input.function input_Callback(hObject, eventdata, handles)% hObject handle to input (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global TestDatabasePathTestDatabasePath=uigetdir(D:, Select test database path);
7、axes(handles.axes1);a=imread(strcat(TestDatabasePath,test.jpg);imshow(a)set(handles.text1,string,image for recognition) % - Executes on button press in recognise.function recognise_Callback(hObject, eventdata, handles)% hObject handle to recognise (see GCBO)% eventdata reserved - to be defined in a
8、future version of MATLAB% handles structure with handles and user data (see GUIDATA)TrainDatabasePath=uigetdir(D:, Select training database path);global TestDatabasePathvalue=bpnet(TestDatabasePath,TrainDatabasePath)set(handles.text2,string,value)载入选择图像路径载入图像特征提取程序:function icaproject,wica=bpFeature
9、Extract(imagepath)% 用于训练的图片数量Count=20;%图像格式为.jpg;S=; %用于存储20幅图像的矩阵for i=1:Countstr=strcat(imagepath,int2str(i),.jpg); %把两个字符串连接起来组成图像名eval(img=imread(str););row col=size(img); % 获得一幅图像的行数N1和列数N2temp=reshape(img,row*col,1); %产生一个(N1*N2)x1 matrixS=S temp; %S is a N1*N2xM matrixendsig=double(S);%sig是Mx
10、N1*N2 matrix%对sig矩阵去均值处理sigmean=mean(sig);%对每一列取均值,imgsig是20x10304for i=1:size(sig)imgsig(i,:)=sig(i,:)-sigmean;end%对去均值的数据进行白化处理covariancematrix=cov(imgsig,1);%covariancematrix是20x20矩阵E,D=eig(covariancematrix);%E和D是20x20矩阵% 去掉值为0的特征值v=;d=;for i=1:size(E,2)if(D(i,i)0)v=v E(:,i);d=d D(i,i);endend%将特征
11、值由大到小排序,特征值对应的特征向量也作相应的排序Dccol=d;Vc=v;%从小到大排序Dcsort Dcindex=sort(Dccol);%Vc的列数DcCols=size(Vc,2);%反序for i=1:DcCols Vcsort(:,i)=Vc(:,Dcindex(DcCols-i+1); Dcsort(i)=Dccol(Dcindex(DcCols-i+1);end%取前k个最大特征值对应的特征向量,保留95的能量,此时k=8Dcsum=sum(Dcsort);Dcsum_extract=0;k=0;while(Dcsum_extract/Dcsum0.95) k=k+1; Dc
12、sum_extract=sum(Dcsort(1:k);end%temp是由前k个最大的非0特征值对应的特征向量组成的i=1;temp=;while(i=k) temp(:,i)=Dcsort(i)(-1/2)*Vcsort(:,i); i=i+1;endwhiteningmatrix=temp;%用于白化数据的白化矩阵,whiteningmatrix是8x20%用快速ICA算法求分离矩阵w(迭代50次)whitesig=whiteningmatrix*imgsig;X=whitesig;%X是8x10304vectorsize,numsamples=size(X);B=zeros(vectorsize);%B是8x8numofic=vectorsize;%numofic是8for r=1:numofic i=1; maxnumiterations=50;%设置最大的迭代次数w=rand(vectorsize,1)-.5;%随机设置初始值w=w/norm(w);%初始化w(0),令其模为1while i0.9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业客服人员培训方案
- 2026企业主要负责人安全培训考试题带答案
- 2026年银行从业模拟题及答案解析
- 水库水资源提质增效及生态治理项目节能评估报告
- 2026年基层政法面试题目及答案
- 生态恢复项目交通影响评价
- 2026公共综合类面试题及答案
- 农业灌溉蓄水池建设土地复垦方案报告书
- 【2026年】妇产科正(副)高级职称考试题库及答案
- 2025南平市山点水园林有限公司招聘笔试历年常考点试题专练附带答案详解
- 湖南2025年湖南蓝山县事业单位招聘45人笔试历年参考题库附带答案详解
- 全国结核病技能竞赛题及答案
- 2026年四川高考物理卷及答案
- 2026年1月浙江省高考(首考)英语试题(含答案)+听力音频+听力材料
- 国家开放大学《理工英语1》期末考试精准题库
- 旧楼加装电梯的具体施工方案
- LAN兰·企业品牌手册
- 江门流态固化土施工方案
- 2025年湖南省长沙市生地会考试卷附带长郡月亮岛中学生地会考及答案
- 2025云南黄金集团招聘高校毕业生72人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年河南省新乡市八年级学业水平考试地理试题
评论
0/150
提交评论