人脸检测技术研究及matlab实现_毕设论文

人脸检测技术研究及matlab实现_毕设论文
人脸检测技术研究及matlab实现_毕设论文

学号:3081818211

题目类型:论文

(设计、论文、报告)

西安电子科技大学GUILIN UNIVERSITY OF TECHNOLOGY

本科毕业设计(论文)

题目:人脸检测技术研究及MATLAB实现

学院:信息科学与工程学院

专业(方向):电子信息工程

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:

指导教师签名:日期:

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日导师签名:日期:年月日

摘要

人脸检测是当今视觉领域里非常重要和实用的研究课题,它应用于现实生活中的各个领域,如公安、金融、网络安全、物业管理以及考勤等。基于视频的人脸检测属于动态检测,方法是先提取视频文件的帧,然后再对帧(图像)进行人脸检测,利用肤色特征的检测算法先对图像(帧)进行处理,然后建模,运用适当的算法把人脸检测出来,运用该方法完成了视频之中的的人脸检测。本文采用MATLAB软件进行仿真,包括实现提取视频文件的帧,对输入图像检测有人脸(如果存在)的位置,大小和位姿,程序运行结果基本实现了上述功能。

关键词:人脸检测;视频检测;肤色特征

Research of Face Detection and Implementation of Matlab

Student: xu wenqiang Teacher:jiang zhong zheng

Abstract:Face detection is very important and practical research topic in the visual field,it is applied to many areas in our lives Such as public security, finance, network security, property management and attendance, Based on the video's face detection is dynamic detection ,The idea is to extract video file frame, then as the image face to detectionUse the skin color characteristics of the detection algorithm , first to do processing testing, Then https://www.360docs.net/doc/482402202.html,e appropriate algorithm, the face detection out.By using this method the video to finish face detection. this paper, we also use Matlab software simulationIncluding realize The input image for face detection, Video file frame extraction then That is to make sure that there is an image input face (if present) of location, size and posture of the process.To run the program results basically achieved the function

Key Words:Face Detection;Video Detection;Skin color characteristics

本科毕业设计·论文

目次

摘要 .............................................................................................................................. I Abstract ............................................................................................................................... II

1 绪论 (1)

1.1论文的研究历史背景及目的 (1)

1.2国内外研究现状 (2)

1.3论文的主要内容安排 (3)

2 人脸检测及其算法简介 (5)

2.1人脸检测介绍 (5)

2.2人脸检测的常用方法 (5)

2.2.1基于特征的人脸检测方法 (5)

2.2.2模块匹配法的人脸检测 (6)

2.2.3基于adaboost算法的人脸检测方法 (7)

3 基于视频的人脸检测研究及其实现 (8)

3.1 MATLAB图像处理工具箱中的视频操作 (8)

3.2提取AVI视频文件的帧 (9)

3.3对图像进行肤色特征的人脸检测 (11)

3.3.1色彩空间及其内容介绍 (11)

3.3.2对图像进行预处理 (12)

3.3.3对人脸肤色进行建模 (13)

3.3.4 检测人脸区域的选定 (14)

3.4图像向AVI视频文件的转换 (17)

4 人脸检测在MATLAB软件下仿真实现 (19)

4.1设计条件 (19)

4.2设计流程 (19)

4.4.1基于视频的人脸检测的总设计模块图 (19)

4.4.2对图像进行人脸检测具体框图 (20)

本科毕业设计·论文

4.3人脸检测的MATLAB实现 (20)

4.3.1人脸检测运行结果 (20)

4.3.2人脸检测结果分析 (22)

5 结论 (23)

致谢 (24)

参考文献 (25)

附录 (26)

本科毕业设计·论文

1 绪论

当前,人脸检测越来越受到大家的关注,它作为生物特征识别中一个非常重要的一个分支,已成为计算机视觉与模式识别领域中非常活跃的一个研究领域。而基于视频的人脸检测更是学术界的一个难点。数字视频是数字图像在时间轴上的扩展,可以将视频的每一个帧视为一副静止的图像,而本文先会对视频进行处理,然后再对图像进行人脸检测[3]。

作为图像与视频中最重要的视觉图像之一,人脸包含很多信息,,通过人脸检测,我们可以很快的知道一个的部分基本资料,如性别,表情,年龄和身份等基本信息,在现实生活中如在公安、金融、网络安全、物业管理以及考勤等都会用到人脸检测,因此人脸检测技术具有很高的学术的研究价值和商业价值,这就引起了在人脸识别这方面的广大科学研究工作者的浓厚兴趣,可以这么说,人脸检测已经成为当前科学界最热门的一个课题之一。

1.1 论文的研究历史背景及目的

近年来,由于视频监控,人机交互和视频检索等应用的需求,视频中的人脸

检测研究得到迅速发展。视频中人脸检测可以划分为三个环节:先提取视频文件中的帧,对图像进行人脸检测,再还原成视频,完成视频中人脸的检测。

人脸检测最初来源于人脸识别。是指对于任意一副给定的图像,采用一定的策略对其进行搜索以确定其中是否含有人脸,如果是则返回一脸的位置、大小和姿态,并把有人脸的地放识别出来。

早期,人脸检测技术主要服务于人脸识别课题的研究;但是,随着生物识别技术的快速发展,入脸检测技术己经被广泛的应用于其它相关领域,产生一定的商业价值。例如:国家军事、安全系统验证、视频会议、人机智能交,各类金融卡、身份验证等等方面具有重要的应用价值,所以,现在人们有许多人对人脸识别越来越重视了。

人脸检测的研究同时也具有非常重要的的学术价值,人脸是一类具有相当复杂的细节变化的自然结构目标,对此类目标的挑战性在于:人脸由于外貌、表情、肤色等不同,具有模式的可变性;一般意义下的人脸上,可能存在眼镜、胡须等附属物;作为三维物体的人脸影像不可避免地受由光照产生的阴影的影响。因此,如果能够找到

本科毕业设计·论文

解决这些问题的方法,成功地构造出人脸检测系统,将为解决其他类似的复杂模式的检测问题提供重要的启示。

人脸检测的目的是检测一张图像是否由人脸,如果有人脸,就把它从图像背景中分离出来,然后对特征进行人脸识别。而在视频中的人脸检测在信息处理中,已经成为是一项相当难突破的技术,越来越受到计算机视觉界的广泛关注,作为这个有价值课题,已经渗透到各不同领域中。

1.2 国内外研究现状

目前,越来越多的国家开始对人脸检测及其识别的研究。并且发展得很快,已经由原来的静态识别到动态识别,由单向多张脸识别,还有从最初的二维脸识别到现在的三围立体的识别。

在国内,最早研究人脸检测识别的,当属于中科院计算所跟哈工大的一个联合面像实验室。该实验室的高文教授,陈熙林教授,山世光教授,直到今天,都一直活跃在人脸识别领域,更可贵的是,在IEEE上面发表了很多paper。这一点,很值得国内的同行学习。后来,该实验室,成为上海银晨的研发中心,专门为上海银晨做技术研发和技术支持。其次是中科院生物识别研究所的李子青教授,以及下属的中科奥森公司。李子青教授,当年在微软亚洲研究院的时候,就从事人脸识别方面的研究工作。后来,在中科院组建了专门的人脸识别研究团队。该研究团队,首先提出了基于近红外的人脸识别技术,并将该项人脸识别技术用于08年北京奥运会。同时,基于近红外的人脸识别技术,得到了国际上同行业专家的认同和一致肯定。接着,是清华大学的丁晓青教授。丁晓青教授在OCR(字符识别)领域,可谓国内第一人。不过,最近几年转行做人脸识别,也是非常有成就的。不说别的,就只从FRVT2006(美国国家标准研究所2006年全球人脸识别供应商系统性能测试)的测试结果来看,丁晓青教授的研究团队是唯一一个完成大规模3D人脸识别性能测试的参赛团队。由此可见,在国内人脸识别领域来说,她们的算法,在3D领域,绝对排名第一。

国外主要有美国、欧洲国家、日本等著名的科研机构有美国的MIT和CMU,英国的剑桥大学。在人脸识别领域中,国际上逐步形成了一下几个研究方向:基于几何特征的方法、基于肤色模型的方法、基于模板匹配的方法、基于KL变换的特征脸方法、基于隐马尔可夫模型的方法和神经网络识别的方法等等。它们可以被归类到基于

本科毕业设计·论文

显式特征和基于隐式特征的两大类方法中。

发展至今,人脸识别的方法越来越多,最有代表的是基于Haar特征的人脸识别方法是其中较为典型的方法,该算法不仅具有较高的检测率,同时也能够满足实时检测的要求。基于Haar特征的人脸识别方法始于2001年Paul Viola和Michael Jones两者撰写的一篇论文,他们在论文中提出了Haar特征和Adaboost算法,并利用它们进行人脸检测。但是此方法只能用于检测正面无旋转的人脸。为此,Rainer Lienhart等人于2002年对此方法进行了扩展, 增加了倾斜特征的定义,此后此方法被扩展到全旋转缩放情况下的人脸检测。自从以上几位学者运用基于Haar特征和Adaboost算法进行人脸检测取得长足进步之后,基于Haar特征的人脸检测方法备受专家学者的青睐,国内外相关内容的研究成果也是层出不穷。

1.3 论文的主要内容安排

本文首先介绍人脸检测的基本内容,介绍人脸检测及其的方法,然后就是基于视频的人脸检测设计及其实现,在这部分中首先从视频中提取视频文件的帧,再对图像进行肤色特征的人脸检测,然后把检测后的图像还再转换成视频,再播放,以达到人脸检测的目的。检测图像是否有人脸,如果有,则把人脸从图像中标识出来达到预想的目的。最后再通过Matlab软件仿真,达到我们人脸检测的目的。

本论文的章节安排和主要内容如下:

第一章绪论。主要介绍了本文的历史背景,着重介绍了人脸检测技术的研究现状以及国内外研究现状,并明确了本文的工作内容和章节安排。

第二章是对人脸检测及其算法的介绍。首先进行人脸检测的介绍;然后介绍了当前国内外用到的人脸检测技术;其次介绍人脸检测的几种方法,当前人脸检测的几种方法,如基于特征的人脸检测,模块匹配的人脸检测,基于统计的的人脸检测和基于adaboost算法的人脸检测方法。对本设计中所用到的关键技术进行重点阐述。

第三章介绍基于视频的人脸检测研究及其实现。在这章中首先matlab图像处理工具箱中的视频操作,因为我们首先要对视频进行提取帧的处理,然后介绍帧(图像)基于肤色特征的人脸检测的设计。可以分为三大步骤:

(1)对图像初步处理。详细利用色彩平衡、光照补偿对人脸图像进行预处理的

本科毕业设计·论文

方法。

(2)基于肤色特征的人脸检测。介绍了色彩空间的相关知识,通过肤色分析选择YCbCr色彩空间建立肤色模型,再运用该肤色模型进行了人脸肤色分割,并对图像进行膨胀腐蚀以及平滑操作,得到人脸候选区域,完成对人脸的粗检测。

检测完后的图像再进行转化为视频,以达到在视频中检测人脸的目的。

第四章,人脸检测的Matlab实现及仿真。并对其进行分析,首先对软件的硬件做了简单介绍;然后从整体上描述基于视频的人脸检测的流程图。展示了人脸检测的实验结果并进行了比较分析。运用编写好的程序对图片进行人脸检测。看是否能达到我们所想要的效果。

最后部分是对整个毕业设计工作进行了总结和展望。

本科毕业设计·论文

2 人脸检测及其算法简介

2.1 人脸检测介绍

人脸检测(face detection)是指在输入图像中确定所有人脸(如果存在)的位置、大小、位姿的过程。人脸检测作为人脸信息处理中的一项关键技术,近年来成为模式识别与计算机视觉领域内一项受到普遍重视、研究十分活跃的课题。

人脸检测(face detection)问题来源于人脸识别(face recognition)问题。人脸检测是对给定的图像,判断其中是否有人脸,若有,将所有人脸从背景中分割提取出来,并确定每个人脸在图像中的位置和大小。人脸检测技术可以应用于人脸识别、视频会议、图像与视频检索、刑侦破案和证件验证等领域。

人脸检测是对于输入的人脸图像或视频,首先判断其中是否存在人脸,如果存在人脸,则进一步给出每个人脸的位置、大小以及各个主要面部器官的位置信息,并依据这些信息,进一步提取每个人脸中所蕴含的特征,并将其与已知人脸库中的人脸图像进行对比,从而得到识别结果。由此可见,一个完整的人脸识别过程应包括人脸检测与人脸识别两大部分。

人脸识别由两部分工作组成:(l)人脸检测:在输入的图像或视频画面当中确定存在的人脸位置、尺寸等的过程,这是识别工作的基础课题,在减少算法复杂度等方面对识别工作有关键性影响。(2)人脸识别:通过与计算机相连的摄像头动态捕捉人的面部信息,并把捕捉到的人脸与预先录入的人脸数据库中存储的人脸进行比较识别。

人脸检测的基本思想是建立人脸模型,比较所有可能的待检测区域与人脸模型的匹配程度,从而得到可能存在人脸的区域。

2.2 人脸检测的常用方法

随着科学技术的不断发展,人脸检测技术的方法越来越多,如早期的模块匹配法,基于特征的方法,还有中期的神经网络,统计模型,色彩信息,形状分析,还有最近的支持向量法,多模块信息融合,Adaboost算法等,下面我们来介绍这些方法。

2.2.1基于特征的人脸检测方法

特征是人从肉眼看到的特性,人脸检测基于特征我们可以从肤色,脸部,还有五

本科毕业设计·论文

官特征进行。下面我们来简单介绍这些东西。

整体轮廓法:我们知道人的脸看起来有点圆,所以我们可以通过圆形的检测以完成对人脸检测的进行,在前人研究中,有人把人脸分割为三个轮廓区:即头顶轮廓区,左脸轮廓区和右脸轮廓区,检测任何一张图像,先进行边缘区域测试,然后提取脸部特征,最后运用评估函数来检测人脸。

肤色检测法:我们知道人脸肤色在去除亮度后具有聚类性,所以人脸的肤色在一定程度上可以把人脸统大部分背景中分离区分出来,因此我们可以运用肤色模型来检测人脸,关于这类方法我们会在第三章中详细介绍。

器官分布法:人脸的人和人可以不同,但人脸的大致器官的分布都差不多的,就是人的五官的几何分布。在这方面yang等人提出的mosaic方法,它给出了人脸区域灰度分布的规则,依据这些规则对图像进行筛选,以样本满足这些规则的程度作为检查的依据。也可以先检测器官的位置,然后将这些位置排列组合,运用器官的分布规律进行检测,基本上找到人脸的位置[4]。

2.2.2模块匹配法的人脸检测

这种方法首先要把人脸的模板进行建立并保存,如人的正面人脸或是眼睛,鼻子,嘴巴等。接着利用一些算法来计算各待测区域与标准模板的相似程度(或称相关性),利用这一相似程度来判断某一区域是否为人脸。

(1)镶嵌图法(又称为马赛克图):就是将图像划分为一组大小相同的方格,每个方格的灰度为格中各个像素的平均值。镶嵌图特征是指这些块的值应满足的约束规则Yang[6]等人将人脸的五官区域分别划分为和个马赛克块,使用一组规则进行检验,并且利用边缘特征进一步验证。卢春雨等对镶嵌图方法进行了改进,按照人脸器官的分布将人脸划分为个马赛克块,在检测中自适应的调整各块的大小,使用一组基于各块灰度和梯度统计特征的知识规则检验该区域是否为人脸,取得了较好的实验结果。

(2)预定模板匹配法:根据人脸的先验知识确定出人脸轮廓模板以及各个器官特征的子模板,先通过计算图像中区域和人脸轮廓模板的相关值来检测出人脸候选区域,然后利用器官特征子模板验证上一步检测出的人脸候选区域是否包含人脸。采用“双眼一人脸”模板,将平均脸的双眼模板剪裁出来,滤波时先使用双眼模板再使用人脸模板,用以提高匹配速度并取得更好的性能。将人脸图像二值化后得到人脸轮廓,

基于matlab的人脸识别源代码

function varargout = FR_Processed_histogram(varargin) %这种算法是基于直方图处理的方法 %The histogram of image is calculated and then bin formation is done on the %basis of mean of successive graylevels frequencies. The training is done on odd images of 40 subjects (200 images out of 400 images) %The results of the implemented algorithm is 99.75 (recognition fails on image number 4 of subject 17) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @FR_Processed_histogram_OpeningFcn.,.. 'gui_OutputFcn', @FR_Processed_histogram_OutputFcn.,.. 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

基于matlab程序实现人脸识别

基于m a t l a b程序实现 人脸识别 TYYGROUP system office room 【TYYUA16H-TYY-TYYYUA8Q8-

基于m a t l a b程序实现人脸识别 1.人脸识别流程 基于YCbCr颜色空间的肤色模型进行肤色分割。在YCbCr色彩空间内对肤色进行了建模发现,肤色聚类区域在Cb—Cr子平面上的投影将缩减,与中心区域显着不同。采用这种方法的图像分割已经能够较为精确的将人脸和非人脸分割开来。 人脸识别流程图 2.人脸识别程序 (1)人脸和非人脸区域分割程序 function result = skin(Y,Cb,Cr) %SKIN Summary of this function goes here % Detailed explanation goes here a=; b=; ecx=; ecy=; sita=; cx=; cy=; xishu=[cos(sita) sin(sita);-sin(sita) cos(sita)]; %如果亮度大于230,则将长短轴同时扩大为原来的倍 if(Y>230) a=*a; b=*b; end %根据公式进行计算 Cb=double(Cb); Cr=double(Cr);

t=[(Cb-cx);(Cr-cy)]; temp=xishu*t; value=(temp(1)-ecx)^2/a^2+(temp(2)-ecy)^2/b^2; %大于1则不是肤色,返回0;否则为肤色,返回1 if value>1 result=0; else result=1; end end (2)人脸的确认程序 function eye = findeye(bImage,x,y,w,h) %FINDEYE Summary of this function goes here % Detailed explanation goes here part=zeros(h,w); %二值化 for i=y:(y+h) for j=x:(x+w) if bImage(i,j)==0 part(i-y+1,j-x+1)=255; else part(i-y+1,j-x+1)=0; end end end [L,num]=bwlabel(part,8); %如果区域中有两个以上的矩形则认为有眼睛 if num<2 eye=0;

人脸识别系统设计与仿真 基于matlab的(含matlab源程序)版权不归自己 交流使用

人脸识别系统设计与仿真基于matlab的(含matlab源程序) 交流使用参考后自行那个删除后果自负 目录 第一章绪论 (2) 1.1 研究背景 (2) 1.2 人脸图像识别的应用前景 (3) 1.3 本文研究的问题 (4) 1.4 识别系统构成 (5) 1.5 论文的内容及组织 (7) 第二章图像处理的Matlab实现 (8) 2.1 Matlab简介 (8) 2.2 数字图像处理及过程 (8) 2.2.1图像处理的基本操作 (8) 2.2.2图像类型的转换 (9) 2.2.3图像增强 (9) 2.2.4边缘检测 (10) 2.3图像处理功能的Matlab实现实例 (11) 2.4 本章小结 (15) 第三章人脸图像识别计算机系统 (16) 3.1 引言 (16) 3.2系统基本机构 (17)

3.3 人脸检测定位算法 (18) 3.4 人脸图像的预处理 (25) 3.4.1 仿真系统中实现的人脸图像预处理方法 (26) 第四章基于直方图的人脸识别实现 (29) 4.1识别理论 (29) 4.2 人脸识别的matlab实现 (29) 4.3 本章小结 (30) 第五章总结 (31) 致谢 (32) 参考文献 (33) 附录 (35)

第一章绪论 本章提出了本文的研究背景及应用前景。首先阐述了人脸图像识别意义;然后介绍了人脸图像识别研究中存在的问题;接着介绍了自动人脸识别系统的一般框架构成;最后简要地介绍了本文的主要工作和章节结构。 1.1 研究背景 自70年代以来.随着人工智能技术的兴起.以及人类视觉研究的进展.人们逐渐对人脸图像的机器识别投入很大的热情,并形成了一个人脸图像识别研究领域,.这一领域除了它的重大理论价值外,也极具实用价值。 在进行人工智能的研究中,人们一直想做的事情就是让机器具有像人类一样的思考能力,以及识别事物、处理事物的能力,因此从解剖学、心理学、行为感知学等各个角度来探求人类的思维机制、以及感知事物、处理事物的机制,并努力将这些机制用于实践,如各种智能机器人的研制。人脸图像的机器识别研究就是在这种背景下兴起的,因为人们发现许多对于人类而言可以轻易做到的事情,而让机器来实现却很难,如人脸图像的识别,语音识别,自然语言理解等。如果能够开发出具有像人类一样的机器识别机制,就能够逐步地了解人类是如何存储信息,并进行处理的,从而最终了解人类的思维机制。 同时,进行人脸图像识别研究也具有很大的使用价依。如同人的指纹一样,人脸也具有唯一性,也可用来鉴别一个人的身份。现在己

(完整word版)基于MATLAB的人脸识别

图像识别 题目:基于MATLAB的人脸识别 院系:计算机科学与应用系 班级: 姓名: 学号: 日期:

目录 引言 (1) 1 人脸识别技术 (2) 1.1人脸识别的研究内容 (2) 1.1.1人脸检测(Face Detection) (2)

1.1.2人脸表征(Face Representation) (2) 1.2几种典型的人脸识别方法 (3) 1.2.1基于几何特征的人脸识别方法 (3) 1.2.2基于K-L变换的特征脸方法 (4) 1.2.3神经网络方法 (4) 1.2.4基于小波包的识别方法 (5) 1.2.5支持向量机的识别方法 (5) 2 人脸特征提取与识别 (5) 2.1利用PCA进行特征提取的经典算法——Eigenface算法 (6) 2.2 PCA人脸识别流程 (6) 2.3特征向量选取 (8) 2.4距离函数的选择 (9) 2.5 基于PCA的人脸识别 (9) MATLAB人脸识别程序 (10) 3 MATLAB软件程序编写 (10) 3.1.创建图片数据库 (10) 3.2 主程序 (11) 3.3最终程序结果 (12) 4 心得与体会 (12) 参考文献 (13)

引言 随着社会的发展及技术的进步,社会各方面对快速高效的自动身份验证的需求可以说无处不在,并与日俱增。例如,某人是否是我国的居民,是否有权进入某安全系统,是否有权进行特定的交易等。尤其是自2001年美国“9.1l”恐怖袭击发生以来,如何在车站、机场等公共场所利用高科技手段,迅速而准确地发现并确认可疑分子成了目前世界各国在反恐斗争中普遍关注的问题。为此,各国都投入大量人力、物力研究发展各类识别技术,使得生物特征识别技术得到了极大的发展。生物特征识别技术主要包括:人脸识别、虹膜识别、指纹识别、步态识别、语音识别、笔迹识别、掌纹识别以及多生物特征融合识别等。人类通过视觉识别文字,感知外界信息。在客观世界中,有75%的信息量都来自视觉,因此让计算机或机器人具有视觉,是人工智能的重要环节。由于生物特征是人的内在属性,具有很强的稳定性和个体差异性,因此是身份验证最理想的依据。与虹膜、指纹、基因、掌纹等其他人体生物特征识别系统相比,人脸识别系统更加直接、方便、友好,易于为用户所接受,并且通过人脸的表情、姿态分析,还能获得其它识别系统难以得到的一些信息。 人脸识别技术在国家重要机关及社会安防领域具有广泛用途。例如:公安系统的罪犯识别、信用卡验证、医学、档案管理、视频会议、人机交互系统等身份识别和各类卡持有人的身份验证。同其他人体生物特征(如:指纹、掌纹、虹膜、语音等)识别技术相比,人脸识别技术的隐性最好,人脸识别系统更直接、友好,是当今国际反恐和安防最重视的科技手段和攻关标志之一。虽然人类能毫不费力地识别出人脸及表情,但对人脸的机器自动识别确实一个难度极大的课题,它涉及到模式识别、图像处理及生理、心理学等诸多方面的知识。人脸识别技术的研究虽然己经取得了一定的可喜成果,但在实际应用中仍存在着许多严峻的问题。人脸的非刚体性、姿态、表情、发型以及化妆的多样性都给正确识别带来了困难,要让计算机像人一样方便地识别出大量的人脸,尚需不同科学研究领域的科学家共同不懈的努力。

基于matlab人脸识别技术 开题报告

毕业设计(论文)开题报告 毕业设计(论文)课题情况,根据所查阅的文献资料,每人撰写2500字以上的文献综述,文后应列出所查阅的文献资料。 基于matlab人脸识别技术的实现 文献综述 一、MATLAB概述 MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。而在本文中主要用到的功能是图像处理功能。 二、BP神经网络概述 人工神经网络(Artificial Neural Net works,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connectionist Model),它是一种模范动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。 人工神经网络发展的主要历程有:20世纪50年代末,Rosenblatt提出的感知器模型和Widrow提出的自适应线性元件,出现了简单的线性分类器;1986年,Rumelhart和Mcllelland 提出了层网络“误差反向传播算法(BP)”,使有导师学习多层感知器网络(ML PN)模式分类器走向实用化,在此基础上又派生出若干前向网络,如径向基函数网络( RBFN)和函数链网络等;1982年,美国加州工学院的物理学家Hopfield提出的一种用于联想记忆和优化计算的反馈网络模型,由于引进了“能量函数” 的概念,使网络走向具体电路有了保证;20世纪70年代,Watanabe 提出了使用模式子空间的概念来设计不同类别对应的子空间,由不同类别聚类的子空间实现模式识别; Kohonen提出的自组织特征映射网络模型等都为神经网络模式识别理论提供了进一步的根据。 构成人工神经网络的三个基本要素是:神经元、络拓扑结构和网络的训练(学习)方法。神经元(节点)的作用是把若干输入加权求和,并对这种加权和进行非线性处理后输出。神经元的选择一般有以下特点:每个神经元都具有多个输入、个输出,具有闭值,采用非线性函数。 1、神经元

人脸识别MATLAB代码

1.色彩空间转换 function [r,g]=rgb_RGB(Ori_Face) R=Ori_Face(:,:,1); G=Ori_Face(:,:,2); B=Ori_Face(:,:,3); R1=im2double(R); % 将uint8型转换成double型G1=im2double(G); B1=im2double(B); RGB=R1+G1+B1; row=size(Ori_Face,1); % 行像素 column=size(Ori_Face,2); % 列像素 for i=1:row for j=1:column rr(i,j)=R1(i,j)/RGB(i,j); gg(i,j)=G1(i,j)/RGB(i,j); end end rrr=mean(rr); r=mean(rrr); ggg=mean(gg); g=mean(ggg); 2.均值和协方差 t1=imread('D:\matlab\皮肤库\1.jpg');[r1,g1]=rgb_RGB(t1); t2=imread('D:\matlab\皮肤库\2.jpg');[r2,g2]=rgb_RGB(t2); t3=imread('D:\matlab\皮肤库\3.jpg');[r3,g3]=rgb_RGB(t3); t4=imread('D:\matlab\皮肤库\4.jpg');[r4,g4]=rgb_RGB(t4); t5=imread('D:\matlab\皮肤库\5.jpg');[r5,g5]=rgb_RGB(t5); t6=imread('D:\matlab\皮肤库\6.jpg');[r6,g6]=rgb_RGB(t6); t7=imread('D:\matlab\皮肤库\7.jpg');[r7,g7]=rgb_RGB(t7); t8=imread('D:\matlab\皮肤库\8.jpg');[r8,g8]=rgb_RGB(t8);

(完整版)基于matlab的人脸识别系统设计毕业设计

毕业设计 [论文] 题目:基于MATLAB的人脸识别系统设计 学院:电气与信息工程学院 专业:自动化 姓名:张迎

指导老师:曹延生 完成时间:2013.05.28

摘要 人脸识别是模式识别和图像处理等学科的一个研究热点,它广泛应用在身份验证、刑侦破案、视频监视、机器人智能化和医学等领域,具有广阔的应用价值和商用价值。人脸特征作为一种生物特征,与其他生物特征相比,具有有好、直接、方便等特点,因此使用人脸特征进行身份识别更易于被用户所接受。 人脸识别技术在过去的几十年得到了很大的发展,但由于人脸的非刚性、表情多变等因素,使得人脸识别技术在实际应用中面临着巨大的困难。本文针对近年来国内外相关学术论文及研究报告进行学习和分析的基础上,利用图像处理的matlab实现人脸识别方法,这种实现简单且识别准确率高,但其缺点是计算量大,当要识别较多人员时,该方法难以胜任。 利用MATLAB实现了一个集多种预处理方法于一体的通用的人脸图像预处理仿真系统,将该系统作为图像预处理模块可嵌入在人脸识别系统中,并利用灰度图像的直方图比对来实现人脸图像的识别判定。 关键词:图像处理, Matlab, 人脸识别, 模式识别

ABSTRACT Human face recognition focuses on pattern recognition ,image processi ng andother subjects.It is widely used in authentication,investigation,video surveillance,intelligent robots,medicine and other areas.Facerecognition ha s wide application and business value.Facial feature asabiological character istic,compared with others is direct,friendly andconvenient.Facial featuree mployed in authentication are user-friendly. The technology of face recognition in the past few years obtained the v ery big development, but due to the face of nonrigid, expression and chang eablefactors, the face recognition technology in practical application are fa cing great difficulties. This paper aimed at home and abroad in recent year s the relevant papers and researchreports on study and on the basis of the a nalysis, some units within the data sensitivity places need to enter personne l to carry out limitation design and develop a set of identity verification ide ntification system, the system uses PCA face recognition method, therealiza tion is simple and the accuracy rate of recognition is high,but itsdrawback i s that a large amount of calculation, when to identify more staff,this metho d is difficult to do. The realization of a set of various pretreatment methods in one of the generic face image preprocessing simulation system based on MATLAB, the system is used as the image preprocessing module can be embedded in a face recognition system, and using the histogram matching gray image to realize the recognition of human face images to determine.

机器学习概述课程设计报告MATLAB人脸识别

机器学习概述课程设计 报告M A T L A B人脸识别 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】

机器学习概述课程设计报告题目:MATLAB人脸识别系统 姓名:** 学号:** 专业:** 时间:2015/8/7

目录 一、课程设计的目的.......................................... 二、设计的内容与要求........................................ 三、详细设计................................................ 四、课程设计的总结.......................................... 五、参考文献................................................

一. 课程设计的目的 人脸识别作为一项新兴的科学研究项目,有着广泛的应用前景,而且随着计算机技术的更新发展,它的科学研究价值也越发凸显。经过几十年的研发探讨,世界各大研究结构的研发人员的不断努力下,人脸识别技术一已取得丰硕的成果,可在一定限制条件下完成人脸的自动识别。这些成果的取得更促进了人们对人脸识别这一课题的深入研究。 在电子商务飞速发展的今天,人脸识别系统的范畴一不足以涵括人脸识别的应用范围,在数字图像处理、视频领域、基于内容的检索等方面有着重要的应用价值。。 二.设计的内容及要求 1、选择KNN,聚类或SVM方法中的一种或其他机器学习方法的一种 进行课程设计 2、要求能完成具体的识别任务:如图像分割、语音识别、人脸识 别 3、要求识别的对象中有自己生活元素,比如图像中包括学校的图片或语音时本人的语音等。 三.详细设计 YCbCr空间——>灰度图像转换——>噪声消除——>图像填孔——>图像重构——>人脸区域确定——>边缘检测

基于MATLAB的人脸识别

基于MATLAB的人脸识别

————————————————————————————————作者: ————————————————————————————————日期:

图像识别 题目:基于MATLAB的人脸识别 院系:计算机科学与应用系 班级: 姓名: 学号: 日期:

设计题目基于MATLAB的人脸识别设 计技术参数 测试数据库图片10张训练数据库图片20张图片大小1024×768 特征向量提取阈值 1 设计要求综合运用本课程的理论知识,并利用MATLAB作为工具实现对人脸图片的预处理,运用PCA算法进行人脸特征提取,进而进行人脸匹配识别。 工作量 两周的课程设计时间,完成一份课程设计报告书,包括设计的任务书、基本原理、设计思路与设计的基本思想、设计体会以及相关的程序代码; 熟练掌握Matlab的使用。 工作计划第1-2天按要求查阅相关资料文献,确定人脸识别的总体设计思路; 第3-4天分析设计题目,理解人脸识别的原理同时寻求相关的实现算法;第5-8天编写程序代码,创建图片数据库,运用PCA算法进行特征提取并编写特征脸,上机进行调试; 第9-12天编写人脸识别程序,实现总体功能; 第13-14天整理思路,书写课程设计报告书。 参考资料1 黄文梅,熊佳林,杨勇编著.信号分析与处理——MATALB语言及应用.国防科技大学出版社,2000 2 钱同惠编著.数字信号处理.北京:机械工业出版社,2004 3 姚天任,江太辉编著.数字信号处理.第2版.武汉:武汉理工大学出版社,2000 4 谢平,林洪彬,王娜.信号处理原理及应用.机械工业出版社,2004 5刘敏,魏玲.Matlab.通信仿真与应用.国防工业出版社,2005 6 楼顺天.基于Matlab7.x 的系统分析与设计.西安电子科技大学,2002 7孙洪.数字信号处理.电子工业出版社,2001 目录 引言?错误!未定义书签。 1 人脸识别技术?错误!未定义书签。 1.1人脸识别的研究内容?错误!未定义书签。 1.1.1人脸检测(Face Detection)........... 错误!未定义书签。

人脸识别matlab程序

人脸识别 % FaceRec.m % PCA 人脸识别修订版,识别率88% % calc xmean,sigma and its eigen decomposition allsamples=[];%所有训练图像 for i=1:40 for j=1:5 a=imread(strcat('e:\ORL\s',num2str(i),'\',num2str(j),'.jpg')); % imshow(a); b=a(1:112*92); % b 是行矢量1×N,其中N=10304,提取顺序是先列后行,即从上 到下,从左到右 b=double(b); allsamples=[allsamples; b]; % allsamples 是一个M * N 矩阵,allsamples 中每一行数 据代表一张图片,其中M=200 end end samplemean=mean(allsamples); % 平均图片,1 × N for i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean 是一个M ×N 矩阵,xmean 每一行保存的数据是“每个图片数据-平均图片” end; % 获取特征值及特征向量 sigma=xmean*xmean'; % M * M 阶矩阵 [v d]=eig(sigma); d1=diag(d); % 按特征值大小以降序排列 dsort = flipud(d1); vsort = fliplr(v); %以下选择90%的能量 dsum = sum(dsort); dsum_extract = 0; p = 0; while( dsum_extract/dsum < 0.9) p = p + 1; dsum_extract = sum(dsort(1:p)); end

基于matlab的人脸识别技术

基于matlab 的人脸识别技术 论文 摘要:随着计算机技术的飞速发展,人脸识别技术逐渐发展壮大起来,并应用到众多领域。 人脸识别是指在人脸检测的基础上针对输入的人脸图像,通过特征提取与特征匹配,找出与人脸库中匹配的人脸图像,从而达到识别效果。当前主要采取的人脸识别方法有:基于几何特征的方法 ,基于模板的方法和基于模型的方法。 这些方法较适合于人脸信息的验证,即待识别者是否为预先指定的对象。不足之处在于,需要建立一个拥有庞大人脸信息的训练样本库,因此就降低了输出结果的时效性和准确性。在应用领域中存在局限性,不适于具有庞大人脸样本训练库的身份鉴别领域。鉴于种种不足,本文提出了一种基于可变人脸库的快速人脸识别方法,使人脸识别技术适用于更多的行业。网络信息化时代的一大特征就是身份的数字化和隐性化,如何准确鉴定一个人的身份,保护信息安全是当今信息化时代必须解决的一个关键社会问题。正在悄然兴起的人脸识别技术正好可以解决这一问题。 关键词:模式识别,K-L 变换,人脸识别,图像处理,matlab,图像增强,边缘检测,图像预处理,灰度直方图,特征提取 1.1识别系统构成 自动人脸识别系统具有如图所示的一半框架并完成相应功能的任务。 (1)人脸图像的获取:一般来说,图像的获取都是通过摄像头摄取,氮摄取的图像可以是真人,也可以是人脸的图片或者为了相对简单,可以不考虑通过摄像头来摄取头像,而是直接给定要识别的图像。 (2)人脸的检测:人脸检测的任务是判断静态图像中是否存在人脸。若存在人脸,给出其在图像中的坐标位置,人脸区域大小等信息。而人脸跟踪需要进一步输出所检测到的人脸位置,大小等状态随时间的连续变化情况。 (3)特征提取通过人脸特征点的检测与标定可以确定人脸图像中显著特征点的位置(如眼睛,眉毛,鼻子,嘴巴等器官),同时还可以得到这些器官及其面部轮廓的形状信息的描述。 1.人脸特征提取的算法:K-L 变换是图像压缩中的一种最优正交变换,通过它可以把人脸样本从高维空间表示转换到低维空间表示,且由低维空恢复的人脸样本和原人脸样本具有最小的均方误差,从而可用人脸样本在低维空间的变换系数作为对人脸特征的描述。其中主元分析法(PCA )就是基于K-L 变换的一种比较流行的算法,它是统计学中分析数据的一种有效的方法,其目的是在数据间中找到一组向量以尽可能地解释数据的方差,将数据从原来的R 维空间将维投影到M 维空间(R>>M)并保存数据的主要信息,从而使数据更易于处理.按照K-L 变换识别算法流程.从人脸样本中提取面部特征.是人脸识别中重要步骤.其实质是一个从高维图像空间到低维数字空间的转换过程,可表示为:Y=T{x} 式中:x 表示原始数据,Y 表示为特征信息,T 表示映射 人脸样本特征提取算法如下:首先计算该库中所有样本的平均值(平均脸): ∑==p i n f P f 1 1 式中;P 表示照片数.f 表示每张照片的线性表示然后构建协方差矩阵: T T i p i i A A f f P C ?==∑=)'('11 式中:f f f i -='表示每张照片与样本平均值的差。A 表示差值形成的矩阵 接着,进行特征的提取:由于此协方差矩阵进行求解特征值和特征向量比较困难的,因此采用奇异值分解的方法得到特征矩阵。 i T i f U Y '=

matlab编程--基于肤色分割和匹配的人脸识别介绍

基于肤色分割和匹配的人脸识别 1.将RGB空间转换为YCbCr空间: 为了把人脸区域从非人脸区域分割出来,需要使用适合不同肤色和不同光照条件的可 靠的肤色模型。 常用的RGB 表示方法不适合于皮肤模型,在RGB 空间,三基色(r、g、b)不仅代表颜色,还表示了亮度。由于周围环境光照的改变,亮度可能使人脸的检测变得更加复杂, 在皮肤的分割过程中是不可靠的。为利用肤色在色度空间的聚类性,需要把颜色表达式中 的色度信息与亮度信息分开,将R、G、B 转换为色度与亮度分开的色彩表达空间可以达 到这个目的。颜色空间的转换常用的颜色模型主要有:YCrCb、HSV、YIQ等。在本文的实验中选用YCrCb 空间作为肤色分布统计的映射空间,该空间的优点是受亮度变化的影 响较小,而且是两维独立分布,能较好地限制肤色分布区域。 使用函数为:YCBCR = rgb2ycbcr(RGB); 2.将彩色图像转换为灰度图像,实验证明,不同的肤色具有相同的2D模型 G(m,V^2)。灰度值对应属于皮肤区域的可能性,同过设定门限,就可以转换为二值图 像,1,0分别表示皮肤和非皮肤区域。 皮肤颜色在ycbcr色度空间的分布范围为:100<=cb<=127,138<=cr<=170,可以将彩色图像转换为二值图像: f_cb=f(:,:,2); f_cr=f(:,:,3); f = (f_cb>=100) & (f_cb<=127) & (f_cr>=138) &(f_cr<=170) ; figure; imshow(f);

3.转换后不可避免出现了噪声,有背景的噪声影响,以及人的衣服和裤子引起的噪声点,使用开闭运算的方法消除噪声: se=strel('square',3); f=imopen(f,se); f=imclose(f,se); figure(2),imshow(f);

基于matlab程序实现人脸识别

1.人脸识别流程 基本原理 基于YCbCr颜色空间的肤色模型进行肤色分割。在YCbCr色彩空间内对肤色进行了建模发现,肤色聚类区域在Cb—Cr子平面上的投影将缩减,与中心区域显著不同。采用这种方法的图像分割已经能够较为精确的将人脸和非人脸分割开来。 流程图 人脸识别流程图 读入原始图像 将图像转化为YCbCr颜色空 间 利用肤色模型二值化图像并 作形态学处理 选取出二值图像中的白色区 域,度量区域属性,筛选后 得到所有矩形块 否 筛选特定区域(高度和宽度的比率 在(0.6~2)之间,眼睛特征) 是 存储人脸的矩形区域 特殊区域根据其他信息筛 选,标记最终的人脸区域

2.人脸识别程序 (1)人脸和非人脸区域分割程序 function result = skin(Y,Cb,Cr) %SKIN Summary of this function goes here % Detailed explanation goes here a=; b=; ecx=; ecy=; sita=; cx=; cy=; xishu=[cos(sita) sin(sita);-sin(sita) cos(sita)]; %如果亮度大于230,则将长短轴同时扩大为原来的倍 if(Y>230) a=*a; b=*b; end %根据公式进行计算

Cb=double(Cb); Cr=double(Cr); t=[(Cb-cx);(Cr-cy)]; temp=xishu*t; value=(temp(1)-ecx)^2/a^2+(temp(2)-ecy)^2/b^2; %大于1则不是肤色,返回0;否则为肤色,返回1 if value>1 result=0; else result=1; end end (2)人脸的确认程序 function eye = findeye(bImage,x,y,w,h) %FINDEYE Summary of this function goes here % Detailed explanation goes here part=zeros(h,w); %二值化

人脸识别PCA算法matlab实现及详细步骤讲解

%FaceRec.m %PCA人脸识别修订版,识别率88% %calc xmean,sigma and its eigen decomposition allsamples=[];%所有训练图像 for i=1:40 for j=1:5 a=imread(strcat('e:\ORL\s',num2str(i),'\',num2str(j),'.jpg')); %imshow(a); b=a(1:112*92);%b是行矢量1×N,其中N=10304,提取顺序是先列后行,即从上 到下,从左到右 b=double(b); allsamples=[allsamples;b];%allsamples是一个M*N矩阵,allsamples中每一行数 据代表一张图片,其中M=200 end end samplemean=mean(allsamples);%平均图片,1×N for i=1:200xmean(i,:)=allsamples(i,:)-samplemean;%xmean是一个M×N矩阵,xmean 每一行保存的数据是“每个图片数据-平均图片” end; %获取特征值及特征向量 sigma=xmean*xmean';%M*M阶矩阵 [v d]=eig(sigma); d1=diag(d); %按特征值大小以降序排列 dsort=flipud(d1); vsort=fliplr(v); %以下选择90%的能量 dsum=sum(dsort); dsum_extract=0; p=0; while(dsum_extract/dsum<0.9) p=p+1; dsum_extract=sum(dsort(1:p)); end i=1; %(训练阶段)计算特征脸形成的坐标系 base=xmean'*vsort(:,1:p)*diag(dsort(1:p).^(-1/2)); %base是N×p阶矩阵,除以dsort(i)^(1/2)是对人脸图像的标准化(使其方差为1) %详见《基于PCA的人脸识别算法研究》p31 %xmean'*vsort(:,i)是小矩阵的特征向量向大矩阵特征向量转换的过程 %while(i<=p&&dsort(i)>0) %base(:,i)=dsort(i)^(-1/2)*xmean'*vsort(:,i);%base是N×p阶矩阵,除以dsort(i)^(1/2)是对人脸图像的标准化(使其方差为1) %详见《基于PCA的人脸识别算法研究》p31 %i=i+1;%xmean'*vsort(:,i)是小矩阵的特征向量向大矩阵特 征向量转换的过程 %end %以下两行add by gongxun将训练样本对坐标系上进行投影,得到一个M*p阶矩阵allcoor allcoor=allsamples*base;%allcoor里面是每张训练人脸图片在M*p子空间中的一个点,即在子空间中的组合系数, accu=0;%下面的人脸识别过程中就是利用这些组合系数来进行识别

基于matlab的简单人脸识别程序代码

基于matlab的简单人脸识别实例 简介 人脸识别特指利用分析比较人脸视觉特征信息进行身份鉴别的计算机技术。人脸识别是一项热门的计算机技术研究领域,在生活中许多领域都有着重要应用。 内容 这里通过对人脸图像打上网格,对区域块图像做二值分析,通过像素比例来做处理。进而得到人脸区域。 代码 % Bylyqmath % DLUT School of Mathematical Sciences % BLOG:https://www.360docs.net/doc/482402202.html,/lyqmath clc; clear all; close all; % 载入图像 Img = imread('face.jpg'); if ndims(Img) == 3 I=rgb2gray(Img); else I = Img; end BW = im2bw(I, graythresh(I)); % 二值化 figure; subplot(2, 2, 1); imshow(Img); title('原图像', 'FontWeight', 'Bold'); subplot(2, 2, 2); imshow(Img); title('网格标记图像', 'FontWeight', 'Bold'); hold on; [xt, yt] = meshgrid(round(linspace(1, size(I, 1), 10)), ... round(linspace(1, size(I, 2), 10))); mesh(yt, xt, zeros(size(xt)), 'FaceColor', ... 'None', 'LineWidth', 3, ... 'EdgeColor', 'r'); subplot(2, 2, 3); imshow(BW); title('二值图像', 'FontWeight', 'Bold'); [n1, n2] = size(BW); r = floor(n1/10); % 分成10块,行 c = floor(n2/10); % 分成10块,列 x1 = 1; x2 = r; % 对应行初始化 s = r*c; % 块面积 for i = 1:10

照片人脸检测MATLAB代码(汇编)

% 载入图像 Img = imread('star1.jpg'); if ndims(Img) == 3 I=rgb2gray(Img); else I = Img; end BW = im2bw(I, graythresh(I)); % 二值化 figure; subplot(2, 2, 1); imshow(Img); title('原图像', 'FontWeight', 'Bold'); subplot(2, 2, 2); imshow(Img); title('网格标记图像', 'FontWeight', 'Bold'); hold on; [xt, yt] = meshgrid(round(linspace(1, size(I, 1), 10)), ... round(linspace(1, size(I, 2), 10))); mesh(yt, xt, zeros(size(xt)), 'FaceColor', ... 'None', 'LineWidth', 3, ... 'EdgeColor', 'r'); subplot(2, 2, 3); imshow(BW); title('二值图像', 'FontWeight', 'Bold'); [n1, n2] = size(BW); r = floor(n1/10); % 分成10块,行 c = floor(n2/10); % 分成10块,列 x1 = 1; x2 = r; % 对应行初始化 s = r*c; % 块面积 for i = 1:10 y1 = 1; y2 = c; % 对应列初始化 for j = 1:10 if (y2<=c || y2>=9*c) || (x1==1 || x2==r*10) % 如果是在四周区域 loc = find(BW(x1:x2, y1:y2)==0); [p, q] = size(loc); pr = p/s*100; % 黑色像素所占的比例数 if pr <= 100 BW(x1:x2, y1:y2) = 0; end end y1 = y1+c; % 列跳跃 y2 = y2+c; % 列跳跃 end x1 = x1+r; % 行跳跃 x2 = x2+r; % 行跳跃

基于MATLAB的人脸识别源程序

基于MATLA酌人脸识别源程序1?色彩空间转换function [r,g]=rgb_RGB(Ori_Face) R=0ri_Face(:,:,1); G=0ri_Face(:,:,2); B=Ori_Face(:,:,3); R1=im2double(R); % 将uint8 型转换成double型 G1=im2double(G); B1=im2double(B); RGB=R1+G1+B1; row=size(Ori_Face, 1); %行像素 column=size(Ori_Face,2); %列像素for i=1:row for j=1:column rr(i,j)=R1(i,j)/RGB(i,j); gg(i,j)=G1(i,j)/RGB(i,j); end

end rrr=mean(rr); r=mean(rrr); ggg=mean(gg); g=mean(ggg); 2?均值和协方差

皮肤库\2?jpg');[r2,g2]=rgb_RGB(t2); 皮肤库\3?jpg');[r3,g3]=rgb_RGB(t3); 皮肤库\4?jpg');[r4,g4]=rgb_RGB(t4); 皮肤库\5?jpg');[r5,g5]=rgb_RGB(t5); 皮肤库\6?jpg');[r6,g6]=rgb_RGB(t6); 皮肤库\7?jpg');[r7,g7]=rgb_RGB(t7); 皮肤库\8?jpg');[r8,g8]=rgb_RGB(t8); 皮肤库\9?jpg');[r9,g9]=rgb_RGB(t9); 皮肤库\10?jpg');[r10,g10]=rgb_RGB(t10); 皮肤库\11?jpg');[r11,g11]=rgb_RGB(t11); 皮肤库\12?jpg');[r12,g12]=rgb_RGB(t12); 皮肤库\13?jpg');[r13,g13]=rgb_RGB(t13); 皮肤库\14?jpg');[r14,g14]=rgb_RGB(t14); 皮肤库\15?jpg');[r15,g15]=rgb_RGB(t15); 皮肤库\16?jpg');[r16,g16]=rgb_RGB(t16); 皮肤库\17?jpg');[r17,g17]=rgb_RGB(t17); 皮肤库\18?jpg');[r18,g18]=rgb_RGB(t18); 皮肤库\19?jpg');[r19,g19]=rgb_RGB(t19); 皮肤库\20?jpg');[r20,g20]=rgb_RGB(t20); 皮肤库\21?jpg');[r21,g21]=rgb_RGB(t21);

相关文档
最新文档