资源简介
利用matlab实现基于肤色的人脸检测以及GUI设计,换图片测试需调整肤色均值
代码片段和文件信息
function [boxsface_numduration]=face_detect(imagethresholdmin_size)
if isempty(image)
boxs=[];
face_num=0;
duration=0;
return ;
end
if (nargin==1)
threshold =0.5;
min_size=40;
elseif (nargin==2)
min_size=40;
end
%fprintf(‘%f %d\r\n‘thresholdmin_size);
min_area=min_size*min_size;
tic;
YCbCr=rgb2ycbcr(image);
[height width channel]=size(YCbCr);
cb=double(YCbCr(::2));
cr=double(YCbCr(::3));
Ecb = (cb-117.4316);
Ecr = (cr-148.5599);
prob=exp((-0.0019)*Ecb.^2+(0.0004)*(Ecb).*(Ecr)+(-0.0033)*Ecr.^2);
z=prob./max(max(prob));%---------------------------------------------------------complextion probability
z = im2bw(zthreshold);
%figure;imshow(z);title(‘Set threshold‘)%-----------------------------------threshold
se=strel(‘square‘3);
f=imopen(zse);
f=imclose(fse);
%figureimshow(f);%open and close processing;
f=imfill(f‘holes‘);
%figureimshow(f);%fill holes in the Img
se1=strel(‘square‘4);
f=imerode(fse1);
f=imdilate(fse1);
%figureimshow(f);%----------------------------------------------------erosion and expansion;
[Lnum]=bwlabel(f4);
for i=1:num;%region loop;
[rc]=find(L==i);
len=max(r)-min(r)+1;
wid=max(c)-min(c)+1;
area_sq=len*wid;
area=size(r1);
len_wid_ratio=len/wid;
area_sq_ratio =area/area_sq;
for j=1:size(r1)%pixel loop;
if(len_wid_ratio<.8)|(len_wid_ratio>2.4)|area<(min_area)|area_sq_ratio<0.65
L(r(j)c(j))=0;%not zero pixel =0;
else
continue;
end
end
end
w=L&z;
[Lnum]=bwlabel(w4);
if num>0
boxs=zeros(num4);
face_num=num;
for i=1:num
[r c]=find(L==i);
r_min=min(r);r_max=max(r);
c_min=min(c);c_max=max(c);
boxs(i1)=c_min;%x1
boxs(i2)=r_min;%y1
boxs(i3)=c_max;%x2
boxs(i4)=r_max;%y2
end
else
boxs=[];
face_num=0;
end
duration=toc;
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-04-16 15:21 基于肤色的人脸检测GUI\
文件 2253 2017-12-05 01:04 基于肤色的人脸检测GUI\face_detect.m
文件 5103 2017-12-06 01:45 基于肤色的人脸检测GUI\GUI.fig
文件 3860 2017-12-12 22:32 基于肤色的人脸检测GUI\GUI.m
目录 0 2018-04-16 15:21 基于肤色的人脸检测GUI\test_iamge\
文件 11219 2017-12-04 00:23 基于肤色的人脸检测GUI\test_iamge\10.jpg
文件 16142 2017-12-04 00:57 基于肤色的人脸检测GUI\test_iamge\11.jpg
文件 90738 2017-12-04 01:37 基于肤色的人脸检测GUI\test_iamge\123.jpg
文件 36185 2017-12-04 01:29 基于肤色的人脸检测GUI\test_iamge\14.jpg
文件 48041 2018-04-11 16:57 基于肤色的人脸检测GUI\test_iamge\20140317083911630349[1].jpg
文件 31781 2017-08-05 23:35 基于肤色的人脸检测GUI\test_iamge\8.jpg
文件 62824 2018-04-11 16:57 基于肤色的人脸检测GUI\test_iamge\97e46e4c262ab077-e08426d869a2e1cb-ca42dc3a62c006fa857f7458dd96891b[1].jpg
文件 356099 2018-04-11 16:58 基于肤色的人脸检测GUI\test_iamge\D525D7E5EE9EC0C8E1958DB524[1].jpg
文件 91020 2017-12-04 12:38 基于肤色的人脸检测GUI\test_iamge\test1.jpg
文件 96877 2017-12-04 12:38 基于肤色的人脸检测GUI\test_iamge\test2.jpg
- 上一篇:卡尔曼滤波matlab仿真程序
- 下一篇:雷达杂波瑞利分布模型MATLAB仿真
相关资源
- 雷达杂波瑞利分布模型MATLAB仿真
- 卡尔曼滤波matlab仿真程序
- 基于matlab的路面裂缝检测识别系统设
- 基于matlab的DCT变换对灰度图像进行压
- 基于MATLAB图像处理的汽车牌照识别系
- 基于matlab的神经网络dropout层
- 基于matlab的svr代码
- 使用matlab 实现DTW算法
- 基于粒子群算法的优化模型matlab程序
- 遗传算法完整MATLAB程序
- MATLAB灰色关联度代码
-
simuli
nk计数器、累加器.zip - 仿真了两径瑞利衰落信道模型和多径
- matlab读取并显示遥感img图像,包含单
- 快速随机搜索树RRT算法
-
MATLAB模糊控制及simuli
nk仿真 - psot工具箱及使用说明.zip
- 基于matlab的最小生成树prim算法
- matlab拟合程序
- GPS捕获跟踪定时同步的matlab代码
- 龙贝格算法MATLAB程序
- Matlab2017a许可证
- 基于聚类的路标检测K-meansMATLAB(RGB)
- dijkstra算法的MATLAB实现258163
- matlab程序.rar
- H-a-A-Wishart分类.zip
- Bayesian_estimate .m
- MATLAB GUI语音信号特征提取
- 遗传算法函数优化matlab代码
- WSN仿真-MATLAB基于COMPOW协议下的网络连
评论
共有 条评论