数字图像处理课程设计_第1页
数字图像处理课程设计_第2页
数字图像处理课程设计_第3页
数字图像处理课程设计_第4页
数字图像处理课程设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、课 程 设 计 说 明 书题 目: 图像人脸区域隐私保护系统设计课 程: 数字图像处理课程设计院 (部): 信息与电气工程学院专 业: 班 级: 学生姓名: 学 号: 指导教师: 完成日期: 2013年12月目录摘 要31 设计目的32 设计要求33 人脸识别系统概述33.1 当前现状33.2系统概述33.3 人脸识别的常用方法34 设计内容34.1系统方案设计34.2 软件模块设计34.2.1 图像输入设计34.2.2 图像肤色区分设计34.2.3 对肤色图进行修补处理设计34.2.4 网格标记图像设计34.2.5 人脸识别标记34.2.6 对原图像进行脸部模糊处理3总结与致谢3参考文献3附

2、录:系统设计程序3摘 要人脸是准确鉴定一个人的身份,推断出一个人的种族、地域,地位等信息的重要依据。科学界从图像处理、计算机视觉等多个学科对人脸进行研究。人脸识别在满足人工智能应用和保护信息安全方面都有重要的意义,是当今信息化时代必须解决的问题。 本设计用MATLAB对图像的读取,在识别前,先对图像进行处理,再通过肤色获得可能的脸部区域,最后根据人脸固有眼睛的对称性来确定是否就是人脸,同时采用高斯平滑来消除图像的噪声,再进行二值化,二值化主要采用局域取阈值方法,接下来就进行定位、提取特征值和识别等操作。经过测试,图像预处理模块对图像的处理达到了较好的效果,提高了定位和识别的正确率。为保护当事人

3、或行人的隐私权,需要将图像中当事人的人脸区域作模糊,实现图像中人脸区域隐私保护。关键词:人脸识别;图像处理;图像模糊1 设计目的近年来随着科技和人们的生活水平的提高,生物特征识别技术在近几十年中飞速发展。随着社会的发展和技术的进步,特别是近年来计算机在软硬件方面性能的飞速提升,各应用领域对快速高效的身份验证的要求日益迫切。由于生物特征是人的内在属性,具有很强的自身稳定性和个体差异性,因此成为身份验证的最理想依据。其中,利用人脸特征进行身份验证又是最自然最直接的手段。人脸识别系统与指纹、虹膜、掌纹等其他人体生物特征识别系统相比,更加友好、方便,更易于为用户所接受。作为人的一种内在属性,并且具有很

4、强的自身稳定性及个体差异性,生物特征成为了自动身份验证的最理想依据。人脸识别由于具有直接,友好,方便的特点,使用者易于为用户所接受,从而得到了广泛的研究与应用。除此之外,我们还能够对人脸识别的结果作进一步的分析,得到有关人的性别,表情,年龄等诸多额外的丰富信息,扩展了人脸识别的应用前景。所谓人脸识别(Face Recognition),分析人脸图像,从中提取有效的识别信息,用来辨别身份的一门技术。即,对己知人脸进行标准化处理后,通过某种方法和数据库中的人脸标本进行匹配,寻找库中对应人脸及该人脸的相关信息。人脸识别技术应用背景十分广泛,可用于公安系统刑侦破案的罪犯身份识别、身份证及驾驶执照等证件

5、验证、银行及海关的监控、自动门卫系统、视频会议、机器人的智能化研究以及医学等方面。人身辨别方法主要是通过人身标识物品和人身标识知识两种方式来实现的。常见的人身标示物品有钥匙、证件等各种标识,人身标示知识有用户名、密码等。众周知,像钥匙、证件标识等人身标识物品很容易丢失或被伪造,而标识知识容易遗忘或记错,更为严重的是传统身份识别系统往往无法区分标识物品真正的拥有者和取得标识物品的冒充者,一旦他人获得标识物品,也可以拥有相同的权力,电视采访、街景地图等应用中,为保护当事人或行人的隐私权,需要将图像中当事人的人脸区域作模糊或马赛克处理。因此具有广阔的应用前景和商业价值。2 设计要求1、 读取人物图像

6、 。2、 对图像进行数字图像处理。3、对人脸识别 。4、对人脸进行模糊或者马赛克处理。3 人脸识别系统概述3.1 当前现状自动人脸识别技术的研究开始于20世纪60年代末期。20世纪90年代后期以来,一些商业性的人脸识别系统逐渐进入市场。近几年,人脸识别作为计算机安全技术在全球范围内迅速发展起来,特别是美国遭遇恐怖袭击后,这一技术引起广泛关注。人脸识别技术具有广泛的应用前景,在国家安全、军事安全和公共安全领域,智能门禁、智能视频监控、公安布控、海关身份验证、司机驾照验证等是典型的应用;在民事和经济领域,各类银行卡、金融卡、信用卡、储蓄卡的持卡人的身份验证、社会保险人的身份验证等具有重要的应用价值

7、;在家庭娱乐等领域,人脸识别也具有一些有趣有益的应用,比如能够识别主人身份的智能玩具、家政机器人、具有真实面像的虚拟游戏玩家等等。人脸识别作为一种人体生物特征识别技术,它涉及人工智能、模式识别、计算机视觉、图像处理和分析、图像编码、计算机图形学等众多学科领域,依据视觉通道的输入信息,在人脸检测和跟踪得到输入人脸图像模式的基础上,定位人面的主要生理特征区域(眼睛、鼻子、下巴等)并给出其形状特征,实现输入人脸模式的识别,达到确定使用者身份的目的。3.2系统概述人脸识别包括人脸检测、人脸图像预处理、人脸特征提取和人脸识别等过程。人脸检测是指在输入图像中确定人脸的位置与大小。人脸检测的质量影响人脸识别

8、的其他过程以及整个人脸识别的效果,在人脸识别过程中显得尤为重要。近年来,电子商务等网络资源的利用使得可视电话、视频会议、多媒体教学等快捷便利的交流方式成为时尚,如何实时实现复杂背景下对人脸检测和识别已成为人脸识别研究的热点1。目前,已有神经网络算法、基于Hough变换或可适应的Hough变换逼近、小波变换、镶嵌图方法、颜色纹理规则等多种人脸检测方法26。这些方法是针对静态图像的基于人脸特征的统计与结构分析方法,虽具有一般性,但分析计算量大,对噪声敏感,性能不稳定,难以实时检测。3.3 人脸识别的常用方法1、基于几何特征的人脸正面图像识别方法通过人脸面部拓扑结构几何关系的先验知识,利用基于结构的

9、方法在知识的层次上提取人脸面部主要器官特征,将人脸用一组几何特征矢量来表示,识别归结为特征矢量之间的匹配,基于欧氏距离的判决是最常用的识别方法。2、基于统计的人脸正面自动识别方法基于统计的人脸正面自动识别方法包括特征脸方法和隐马尔科夫模型方法。统计的识别方法将人脸用代数特征矢量来表示。代数特征是由Hong等首先提出的,由图像本身的灰度分布决定,它描述了图像的内存信息,它是通过对图像灰度进行各种代数变换和矩阵分解提出的。将人脸看作一个二维的灰度变化的模板,从整体上捕捉和描述人脸的特征,所运用的主要是一些标准的数据统计技巧,运算比较复杂4 设计内容4.1系统方案设计读取图像字图像处理图像进行数面部

10、特征定位人脸识别人脸模糊处理标出脸部输出处理后的图像图1 系统总设计方框图4.2 软件模块设计 图像输入设计可以通过摄像头来获取,也可以通过图像库来获取。在图像获取以后,将图像显示出来,同时记录下图像在内存的地址,以便在图像处理中使用。RGB=imread('face06.jpg'); %face02,04,06YCbCr=rgb2ycbcr(RGB); %将RGB色彩值变换为YcbCr色彩空间(将RGB真彩色图像转化为YcbCr色彩空间中相等的图像)Y=YCbCr(:,:,1); %这三行分别是Ycbcr空间的y,cb,cr对应矩阵Cb=YCbCr(:,:,2); Cr=YC

11、bCr(:,:,3); imshow(RGB);title('原始图像RGB'); %原始图像figure,imshow(YCbCr);title('YcbCr色彩空间的图像'); %进行将RGB色彩值变换为YcbCr色彩空间的图像如图2所示: 原始图像YCbCr图图2 原图像与YCbCr图 图像肤色区分设计人脸定位是完成对需定位的人脸运动区域进行肤色检测。在肤色分割阶段,采用YCrCb色度空间,能较好地获取肤色区域,排除一些类似人脸肤色的非人脸区域,并使用投影法正确标记人脸。人脸定位过程包括5个步骤。 1) 相似度计算,方法是定义)/(BG

12、RRr+=和)/(BGRBb+=,把三维RGB降为二维,在二维平面上,肤色的区域相对集中,根据肤色在色度空间的高斯(Gauss)分布,将彩色图像中的某个像素从RGB色彩空间变换到YCbCr空间,可以计算出该像素点属于肤色区域的概率,即根据该像素点离高斯分布中心的远近程度得到一个与肤色的相似度(图2a是待检测区域的相似度),相似度计算公式为: )()(5.0exp),(1mxCmxbrPT=                

13、60;            (5) 式中  M为均值;C为方差。 2) 选择适当的阈值,对图像中的待检测区域进行二值化处理。 3) 对二值图像作形态学处理,利用圆形结构元素作膨胀变换,抹掉细节,使图像平滑。 4) 用直方图方式对二值图像进行垂直投影和水平投影,如图2b和图2c所示。图像中人脸区域的获取,根据肤色来获取,通过肤色非线形分段色彩变换来实现。对图像进行图像灰度化、高斯平滑处理

14、、对比度增强、二值化等一系列的图像处理之后,可以根据人的两个眼睛具有对称、眼睛下面有鼻子、再往下有嘴巴的特点,来确定划分的区域是否就是人脸区域代码:I=RGB; W=size(YCbCr,1); %y对应矩阵宽大小H=size(YCbCr,2); %y对应矩阵高大小 k=(2.53/180)*pi; m=sin(k);n=cos(k); %正余弦噪声cx=109.38;cy=152.02;ecx=1.60;ecy=2.41;a=25.39;b=14.03; %(cb=( 100,140),cr=(70,160)这是阈值,这个阈值应该是人脸肤色的范围for i=1:W for j=1:H if

15、Y(i,j)<110 I(i,j,:)=0; elseif (Y(i,j)<=200&&Y(i,j)>=110) x=(double(Cb(i,j)-cx)*n+(double(Cr(i,j)-cy)*m; y=(double(Cr(i,j)-cy)*n-(double(Cb(i,j)-cx)*m; if(x-ecx)2/a2+(y-ecy)2/b2)<=1 I(i,j,:)=255; else I(i,j,:)=0; end elseif Y(i,j)>200 x=(double(Cb(i,j)-cx)*n+(double(Cr(i,j)-cy)

16、*m; y=(double(Cr(i,j)-cy)*n-(double(Cb(i,j)-cx)*m; if (x-ecx)2/(1.1*a)2+(y-ecy)2/(1.1*b)2)<=1 I(i,j,:)=255; %肤色部分变为白色 else I(i,j,:)=0; %其余转成黑色 end end end end figure,imshow(I);title('肤色区分后的图像'); %进行将肤色识别后的黑白图像如图3所示: 图3肤色区分后的图像 对肤色图进行修补处理设计se1=strel('square',35); %这个函数可以创建边长35的方形元素

17、f0=imclose(I,se1); %利用上面创建的方形元素,弥补imshow(I)中人脸中以及其他部分残留的小块黑色figure,imshow(f0);title('修补漏洞后的人脸'); %显示修补漏洞后的人脸如图4所示: 图4 修补漏洞后的人脸图 网格标记图像设计对人脸图像打上网格,对区域块图像做二值分析,通过像素比例来做处理,进而得到人脸区域。 在彩色图像中,颜色是人脸表面最为显著的特征之一,利用颜色检测人脸是很自然的想法。研究人员在考察了不同种族、不同个体的肤色后,认为人类的肤色能在颜色空间中聚成单独的一类,而影响肤色值变化的最主要因素是亮度变化。因此他们

18、采用广泛使用的RGB颜色空间,在滤去亮度值的图像中通过比较像素点的、值与肤色范围来推断该像素点及其邻域是否属于人脸区域。除了RGB颜色空间,还有诸如HIS,LUV,GLHS等其它颜色空间被使用。寻找到肤色区域后,必须进行验证,排除类肤色区域。利用肤色像素的连通性分割出区域,使用椭圆拟合各个区域,根据椭圆长短轴的比率判断是否为人脸。BW = im2bw(f0, graythresh(f0); % 二值化figure, imshow(RGB);title('网格标记图像', 'FontWeight', 'Bold');hold on;xt, yt =

19、 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');如图5所示:图5 网格标记图像图 人脸识别标记n1, n2 = size(BW);r = floor(n1/10); % 分成10块,行c = floor(n2/10); % 分成10块,

20、列x1 = 1; x2 = r; % 对应行初始化s = r*c; % 块面积for i = 1:10y1 = 1; y2 = c; % 对应列初始化for j = 1:10if(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<= 100f1(x1:x2, y1:y2) = 0;endendy1 = y1+c; % 列跳跃y2 = y2+c; % 列跳跃endx1 = x1+r

21、; % 行跳跃x2 = x2+r; % 行跳跃endL, num = bwlabel(BW, 8); % 区域标记stats = regionprops(L, 'BoundingBox'); % 得到包围矩形框Bd = cat(1, stats.BoundingBox);s1, s2 = size(Bd);mx = 0;for k = 1:s1p = Bd(k, 3)*Bd(k, 4); % 宽*高if p>mx && (Bd(k, 3)/Bd(k, 4)<1.8 %如果满足面积块大,而且宽/高<1.8mx = p;j = k;endendfi

22、gure,imshow(RGB); hold on;rectangle('Position', Bd(j, :), .'EdgeColor', 'r', 'LineWidth', 3);title('标记图像', 'FontWeight', 'Bold');如图6所示:图6人脸识别标记图 对原图像进行脸部模糊处理h1=ones(40,40)/1600; I2=imfilter(RGB ,h1); %对原图像进行全部模糊%figure,imshow(I2);a=Bd(j,:);%脸部标

23、记的矩形框的四个坐标for i=a(2)-0.5:a(2)-0.5+a(4); for j=a(1)-0.5:a(1)-0.5+a(3);RGB(i,j,:)=I2(i,j,:);%部分模糊的替换 endendfigure,imshow(RGB);title('模糊后的人脸图像'); %显示模糊后的人脸如图7所示:图7 人脸模糊隐私保护图总结与致谢通过本次设计,培养了创新意识和综合素质,更好地掌握了数字图像处理设计,提高个人基本能力、实验及设计能力和独立工作能力,基本知识更加牢固,会编程调试、会查资料在设计的过程和设计说明书的撰写过程中,老师给予了我热心的帮助和大力的支持,给我

24、提了诸多的宝贵意见,拓宽了我的思路。人脸检测及识别算法研究近年来受到很大关注,同时也得到了很大的进展。但是考虑到视频处理的复杂程度,大多数检测或识别率高的算法往往都要在计算上付出很大的代价而失去了使用价值。而本文提出的一种基于差分和肤色的人脸检测算法,在计算量上大大减少,同时抑制背景噪声。随着硬件技术的进步,采用摄像机的图像系统的成本已经不高,使得这种算法有大量应用的条件,实验表明该算法具有可行性。这一次做的图像人脸区域隐私保护系统设计。原理看似简单,但过程让我深深感受到再简单的图像处理,理论与实际也会有一定的差入。在参考书设计原理的基础上经过了个人的改进,让功能更完善,特别是程序的调试,花的

25、时间最多,也是最难的一个地方。在此我向张运楚、杨红娟、张君捧老师致以崇高的敬意和衷心的感谢!参考文献1 王科俊,姚向辉人脸图像检测与识别方法综述J自动化技术与应用2004, 23(12).2 邢藏菊,曲延锋,王守觉静态灰度图像中的人脸快速检测J计算机辅助设计与图形学学报V0114,NoMay,2002 3 周杰,卢春雨,张长水,等.人脸自动识别方法综述J.电子学报,2004 (4):102-106.4 简(Jain A.K.) 美,韩博,徐枫著数字图像处理基础M北京:清华大学出版社,2006.5 冈萨雷斯数字图像处理(MATLAB)中文版M北京:电子工业出版社,2007.6 Castleman

26、, K. R.美著,朱志刚等译数字图像处理M北京:电子工业出版社,20027 朱虹数字图像处理基础M北京:科学出版社,2005.8 刘志敏,扬杰,施鹏飞数学形态学的图像分割算法D计算机工程与科学,1998,20 (4):219 章毓晋图像分割北京:科学出版社,200110 王树伟,杨鸲Matlab 6.5辅助图像处理M电子工业出版社,2003.附录:系统设计程序RGB=imread('face06.jpg'); %face02,04,06YCbCr=rgb2ycbcr(RGB); %将RGB色彩值变换为YcbCr色彩空间(将RGB真彩色图像转化为YcbCr色彩空间中相等的图像)

27、Y=YCbCr(:,:,1); %这三行分别是Ycbcr空间的y,cb,cr对应矩阵Cb=YCbCr(:,:,2); Cr=YCbCr(:,:,3); imshow(RGB);title('原始图像RGB'); %原始图像figure,imshow(YCbCr);title('YcbCr色彩空间的图像'); %进行将RGB色彩值变换为YcbCr色彩空间的图像I=RGB; W=size(YCbCr,1); %y对应矩阵宽大小H=size(YCbCr,2); %y对应矩阵高大小 k=(2.53/180)*pi; m=sin(k);n=cos(k); %正余弦噪声cx

28、=109.38;cy=152.02;ecx=1.60;ecy=2.41;a=25.39;b=14.03; %(cb=( 100,140),cr=(70,160)这是阈值,这个阈值应该是人脸肤色的范围for i=1:W for j=1:H if Y(i,j)<110 I(i,j,:)=0; elseif (Y(i,j)<=200&&Y(i,j)>=110) x=(double(Cb(i,j)-cx)*n+(double(Cr(i,j)-cy)*m; y=(double(Cr(i,j)-cy)*n-(double(Cb(i,j)-cx)*m; if(x-ecx)2

29、/a2+(y-ecy)2/b2)<=1 I(i,j,:)=255; else I(i,j,:)=0; end elseif Y(i,j)>200 x=(double(Cb(i,j)-cx)*n+(double(Cr(i,j)-cy)*m; y=(double(Cr(i,j)-cy)*n-(double(Cb(i,j)-cx)*m; if (x-ecx)2/(1.1*a)2+(y-ecy)2/(1.1*b)2)<=1 I(i,j,:)=255; %肤色部分变为白色 else I(i,j,:)=0; %其余转成黑色 end end end end figure,imshow(I)

30、;title('肤色区分后的图像'); %进行将肤色识别后的黑白图像% 找到人脸区域并设为白色% (r=35)se1=strel('square',35);%这个函数可以创建边长35的方形元素f0=imclose(I,se1);%利用上面创建的方形元素,弥补imshow(I)中人脸中以及其他部分残留的小块黑色figure,imshow(f0);title('修补漏洞后的人脸'); %显示修补漏洞后的人脸%44444444444444444444444444444BW = im2bw(f0, graythresh(f0); % 二值化figure,

31、 imshow(RGB);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');n1, n2 = size(BW);r = floor(n1/10); % 分成10块,行c = floor(n2/10); % 分成10块,列x1 = 1; x2 = r; % 对应行初始化s = r*c; % 块面积for i = 1:10y1 = 1; y2 = c; % 对应列初

温馨提示

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

评论

0/150

提交评论