经典多张人脸肤色检测模型+微调改进

人脸检测改进模型

1. 读取RGB图像I = imread(img_name);并对图像运用色彩均衡算法进行光照调整。I=GrayWorld(I);%%%图像光照调整
2. % 转换为灰度图像gray = rgb2gray(I);% 将图像转化为YCbCr颜色空间YCbCr = rgb2ycbcr(I);
3. 根据肤色模型将图像二值化再进行形态学处理。膨胀之后二次腐蚀,再去除边缘多余区域,填补小空洞。

以下给出关键代码。该模型在图像背景简单,图像中人脸数较少时表现较好。还有很多可改进之处,欢迎交流。
肤色模型,GRAYWORLD,寻找眼部区域 function 可参考相关资料,或者私信我

function detection(I)
% 读取RGB图像
%I = imread(img_name);
I=GrayWorld(I);%%%图像光照调整
% 转换为灰度图像
gray = rgb2gray(I);
% 将图像转化为YCbCr颜色空间
YCbCr = rgb2ycbcr(I);
% 获得图像宽度和高度
heigth = size(gray,1);
width = size(gray,2);

% 根据肤色模型将图像二值化
for i = 1:heigth
    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;
        else
            if(skin(Y,Cb,Cr) == 1)%肤色模型
                gray(i,j) = 255;
            else
                gray(i,j) = 0;
            end
        end
    end
end
% 二值图像形态学处理
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值