数字图像处理课程设计人脸检测与识别_第1页
数字图像处理课程设计人脸检测与识别_第2页
数字图像处理课程设计人脸检测与识别_第3页
数字图像处理课程设计人脸检测与识别_第4页
数字图像处理课程设计人脸检测与识别_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、数字图像处理课程设计人脸检测与识别课程设计1、 简介人脸检测与识别是当前模式识别领域的一个前沿课题,人脸识别技术就是利用计算机技术,根据数据库的人脸图像,分析提取出有效的识别信息,用来“辨认”身份的技术。人脸识别是模式识别研究的一个热点, 它在身份鉴别、信用卡识别, 护照的核对及监控系统等方面有着广泛的应用。人脸图像由于受光照、表情以及姿态等因素的影响, 使得同一个人的脸像矩阵差异也比较大。因此, 进行人脸识别时, 所选取的特征必须对上述因素具备一定的稳定性和不变性. 主元分析(pca)方法是一种有效的特征提取方法,将人脸图像表示成一

2、个列向量, 经过pca 变换后, 不仅可以有效地降低其维数, 同时又能保留所需要的识别信息, 这些信息对光照、表情以及姿态具有一定的不敏感性. 在获得有效的特征向量后, 关键问题是设计具有良好分类能力和鲁棒性的分类器. 支持向量机(svm ) 模式识别方法,兼顾训练误差和泛化能力, 在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势。 本此课程设计基于matlab,将检测与识别分开进行。其中检测部分使用实验指导书上的肤色模型算法进行,不进行赘述。识别部分采用pca算

3、法对检测出的人脸图像进行特征提取, 再利用最邻近距离分类法对特征向量进行分类识别,将在后文具体表述。仿真结果验证了本算法是有效的。2、 人脸检测1. 源码img=imread('d:std_test_imagesface3.jpg');figure;imshow(img);r=img(:,:,1);g=img(:,:,2);b=img(:,:,3);facergn1=(r>95)&(g>40)&(b>20)&max(img,3)-min(img,3)>15&abs(r-g)>15&r>b;fi

4、gure;imshow(facergn1);r=double(r)./double(sum(img,3);g=double(g)./double(sum(img,3);y=0.3*r+0.59*g+0.11*b;facergn2=(r>0.333)&(r<0.664)&(g>0.246)&(g<0.398)&(r>g)&g>=0.5-0.5*r;figure;imshow(facergn2);q=facergn1.*facergn2;p=bwlabel(q,8);bb=regionprops(p,'boundi

5、ngbox');bb1=struct2cell(bb);bb2=cell2mat(bb1);figure;imshow(img);s1 s2=size(bb2);mx=0;for k=3:4:s2-1 p=bb2(1,k)*bb2(1,k+1); if p>mx&(bb2(1,k)/bb2(1,k+1)<1.8 mx=p; j=k; hold on; rectangle('position',bb2(1,j-2),bb2(1,j-1),bb2(1,j),bb2(1,j+1),'linewidth',3,'edgecolor&#

6、39;,'r'); hold off; endend2.处理过程 3、 人脸识别1. 算法简述在matlab 2012a版本中添加了对pca算法的支持,由于水平有限我选择直接调用。在本次课程设计中,pca算法又分为样本训练和人脸识别两个过程,在样本训练阶段,将样本库(每组15张共15组人脸图像,对每组前11张进行特征提取用于训练,后4张用于检测)中的人脸图像转换为特征向量表示,并投影到pca子空间,最终将这些向量数据保存到训练数据库中。而在识别阶段,同样将待识别的人脸图像使用pca子空间的向量表示,通过计算待识别图像的向量与样本中的向量之间的距离,寻找其中最相近的人脸图像,作为

7、识别结果。2. 源码clearclc% 样本数量15*11people_count=15;face_count_per_people=11;% 训练比率,设置为75%识别正确率可达100%training_ratio=.75;% 能量energy=90;training_count=floor(face_count_per_people*training_ratio);training_samples=;path_mask='d:pca_face_rec%03d%02d.jpg' % 训练for i=1:people_count for j=1:training_count i

8、mg=im2double(imread(sprintf(path_mask,i,j); img=imresize(img,10 10); % 归一化至50*50 if ndims(img)=3 img=rgb2gray(img); end training_samples=training_samples;img(:)' endendmu=mean(training_samples);coeff,scores,explained=pca(training_samples);idx=find(cumsum(explained)>energy,1);coeff=coeff(:,1:i

9、dx);scores=scores(:,1:idx); % 测试acc_count=0;for i=1:people_count for j=training_count+1:face_count_per_people img=im2double(imread(sprintf(path_mask,i,j); img=imresize(img,10 10); if ndims(img)=3 img=rgb2gray(img); end score=(img(:)'-mu)/coeff' ,idx=min(sum(scores-repmat(score,size(scores,1)

10、,1).2,2); if ceil(idx/training_count)=i acc_count=acc_count+1; end endendtest_count=(people_count*(face_count_per_people-training_count);acc_ratio=acc_count/test_count;fprintf('测试样本数量:%d,正确识别率:%2.2f%',test_count,acc_ratio*100)3. 仿真结果及说明样本库举例:结果为:测试样本数量:45,正确识别率:100.00%4、 总结 人脸识别是一个多学科领域的挑战性难题,近

温馨提示

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

评论

0/150

提交评论