课程设计说明书题目:图像人脸区域隐私保护系统设计课程:数字图像处理课程设计院(部):信息与电气工程学院专业:电子信息工程班级:学生姓名:学号:指导教师:完成日期:目录摘要 (3)1 设计目的 (4)2 设计要求 (5)3 设计内容 (6)3.1、具体设计 (6)3.1.1、图像输入设计 (6)3.1.2、图像肤色区分设计 (7)3.1.3、对肤色图进行修补处理设计 (7)3.1.4、网格标记图像设计 (7)2.1、5、人脸识别标记 (9)3.1.6、对原图像进行脸部模糊处理 (10)总结与致谢 (11)参考文献 (12)附录 (13)摘要近年来随着科技和人们的生活水平的提高,生物特征识别技术在近几十年中飞速发展。
作为人的一种内在属性,并且具有很强的自身稳定性及个体差异性,生物特征成为了自动身份验证的最理想依据。
人脸识别由于具有直接,友好,方便的特点,使用者易于为用户所接受,从而得到了广泛的研究与应用。
除此之外,我们还能够对人脸识别的结果作进一步的分析,得到有关人的性别,表情,年龄等诸多额外的丰富信息,扩展了人脸识别的应用前景。
人脸是准确鉴定一个人的身份,推断出一个人的种族、地域,地位等信息的重要依据。
科学界从图像处理、计算机视觉等多个学科对人脸进行研究。
人脸识别在满足人工智能应用和保护信息安全方面都有重要的意义,是当今信息化时代必须解决的问题。
本设计用MATLAB对图像的读取,在识别前,先对图像进行处理,再通过肤色获得可能的脸部区域,最后根据人脸固有眼睛的对称性来确定是否就是人脸,同时采用高斯平滑来消除图像的噪声,再进行二值化,二值化主要采用局域取阈值方法,接下来就进行定位、提取特征值和识别等操作。
经过测试,图像预处理模块对图像的处理达到了较好的效果,提高了定位和识别的正确率。
为保护当事人或行人的隐私权,需要将图像中当事人的人脸区域作模糊,实现图像中人脸区域隐私保护。
关键词:人脸识别;图像处理;图像模糊1 设计目的随着社会的发展和技术的进步,特别是近年来计算机在软硬件方面性能的飞速提升,各应用领域对快速高效的身份验证的要求日益迫切。
由于生物特征是人的内在属性,具有很强的自身稳定性和个体差异性,因此成为身份验证的最理想依据。
其中,利用人脸特征进行身份验证又是最自然最直接的手段。
人脸识别系统与指纹、虹膜、掌纹等其他人体生物特征识别系统相比,更加友好、方便,更易于为用户所接受。
所谓人脸识别(Face Recognition),分析人脸图像,从中提取有效的识别信息,用来辨别身份的一门技术。
即,对己知人脸进行标准化处理后,通过某种方法和数据库中的人脸标本进行匹配,寻找库中对应人脸及该人脸的相关信息。
人脸识别技术应用背景十分广泛,可用于公安系统刑侦破案的罪犯身份识别、身份证及驾驶执照等证件验证、银行及海关的监控、自动门卫系统、视频会议、机器人的智能化研究以及医学等方面。
人身辨别方法主要是通过人身标识物品和人身标识知识两种方式来实现的。
常见的人身标示物品有钥匙、证件等各种标识,人身标示知识有用户名、密码等。
众周知,像钥匙、证件标识等人身标识物品很容易丢失或被伪造,而标识知识容易遗忘或记错,更为严重的是传统身份识别系统往往无法区分标识物品真正的拥有者和取得标识物品的冒充者,一旦他人获得标识物品,也可以拥有相同的权力,电视采访、街景地图等应用中,为保护当事人或行人的隐私权,需要将图像中当事人的人脸区域作模糊或马赛克处理。
因此具有广阔的应用前景和商业价值。
2 设计要求1、读取人物图像。
2、对图像进行数字图像处理。
3、对人脸识别。
4、对人脸进行模糊或者马赛克处理。
3 设计内容本设计的系统总方案设计方框图如图1所示。
图1 系统总设计方框图 3.1、具体设计3.1.1、图像输入设计:RGB=imread('gaoyuanyuan.jpg'); %face02,04,06YCbCr=rgb2ycbcr(RGB); %将RGB 色彩值变换为YcbCr 色彩空间(将RGB标出脸部真彩色图像转化为YcbCr色彩空间中相等的图像)Y=YCbCr(:,:,1); %这三行分别是Ycbcr空间的y,cb,cr对应矩阵Cb=YCbCr(:,:,2);Cr=YCbCr(:,:,3);imshow(RGB);title('原始图像RGB'); %原始图像figure,imshow(YCbCr);title('YcbCr色彩空间的图像'); %进行将RGB色彩值变换为YcbCr色彩空间的图像如图2所示:图2 原图像与YCbCr图3.1.2、图像肤色区分设计:I=RGB;W=size(YCbCr,1); %y对应矩阵宽大小H=size(YCbCr,2); %y对应矩阵高大小k=(2.53/180)*pi;m=sin(k);n=cos(k); %正余弦噪声%%%111111111111111111111111111cx=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:Wfor j=1:Hif Y(i,j)<110I(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/a^2+(y-ecy)^2/b^2)<=1I(i,j,:)=255;else I(i,j,:)=0;endelseif Y(i,j)>200x=(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)<=1I(i,j,:)=255; %肤色部分变为白色else I(i,j,:)=0; %其余转成黑色endendendendfigure,imshow(I);title('肤色区分后的图像'); %进行将肤色识别后的黑白图像如图3所示:图3肤色区分后的图像3.1.3、对肤色图进行修补处理设计:se1=strel('square',35); %这个函数可以创建边长35的方形元素f0=imclose(I,se1); %利用上面创建的方形元素,弥补imshow(I)中人脸中以及其他部分残留的小块黑色figure,imshow(f0);title('修补漏洞后的人脸'); %显示修补漏洞后的人脸如图4所示:图4 修补漏洞后的人脸图3.1.4、网格标记图像设计:BW = im2bw(f0, graythresh(f0)); % 二值化figure, 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');如图5所示:图5 网格标记图像图3.1.5、人脸识别标记:[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; % 对应列初始化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; % 行跳跃x2 = x2+r; % 行跳跃end[L, 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;endendfigure,imshow(RGB); hold on;rectangle('Position', Bd(j, :), ...'EdgeColor', 'r', 'LineWidth', 3);title('标记图像', 'FontWeight', 'Bold');如图6所示:图6人脸识别标记图3.1.6、对原图像进行脸部模糊处理:h1=ones(40,40)/1600;I2=imfilter(RGB ,h1); %对原图像进行全部模糊%figure,imshow(I2);a=Bd(j,:);%脸部标记的矩形框的四个坐标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 人脸模糊隐私保护图总结与致谢这一次做的图像人脸区域隐私保护系统设计。