电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

基于matlab程序实现人脸识别

基于matlab程序实现人脸识别_第1页
1/9
基于matlab程序实现人脸识别_第2页
2/9
基于matlab程序实现人脸识别_第3页
3/9
基于 matlab 程序实现人脸识别1.人脸识别流程1.1。1 基本原理基于 YCbCr 颜色空间的肤色模型进行肤色分割。在 YCbCr 色彩空间内对肤色进行了建模发现,肤色聚类区域在 Cb—Cr 子平面上的投影将缩减,与中心区域显著不同.采纳这种方法的图像分割已经能够较为精确的将人脸和非人脸分割开来。1。1。2 流程图人脸识别流程图2.人脸识别程序(1)人脸和非人脸区域分割程序function result = skin(Y,Cb,Cr)%SKIN Summary of this function goes here% Detailed explanation goes herea=25.39;b=14。03;ecx=1.60;ecy=2。41;sita=2.53;cx=109。38;cy=152。02;xishu=[cos(sita) sin(sita);—sin(sita) cos(sita)];%假如亮度大于 230,则将长短轴同时扩大为原来的 1.1 倍if(Y〉230) a=1.1*a; b=1。1*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;否则为肤色,返回 1if value〉1 result=0;else result=1;endend(2)人脸的确认程序function eye = findeye(bImage,x,y,w,h)%FINDEYE Summary of this function goes here% Detailed explanation goes herepart=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;endendend[L,num]=bwlabel(part,8);%假如区域中有两个以上的矩形则认为有眼睛if num<2 eye=0;else eye=1;endend(3)人脸识别主程序clear all;%读入原始图像I=imread(’face3。jpg');gray=rgb2gray(I);ycbcr=rgb2ycbcr(I);%将图像转化为 YCbCr 空间heighth=size(gray,1);%读取图像尺寸width=size(gray,2);for i=1:heighth %利用肤色模型二值化图像for j=1:width Y=ycbcr(i,j,1); Cb=ycbcr(i,j,2); Cr=ycbcr(i,j,3);if(Y〈80) gray(i,j)=0;elseif(skin(Y,Cb,Cr)==1)%根据色彩模型进行图像二值化 gray(i,j)=255;else gray(i,j)=0;endendendendse=strel(’arbitrary’,eye(5));%二值图像形态学处理gray=imopen(gray,se);figure;imshow(gray)[L,num]=bwlabel(gray,8);%采纳标记方法选出图中的白色区域stats=regionprops(L,’BoundingBox’);%度量区域属性n=...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

基于matlab程序实现人脸识别

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部