首页
会员中心
到顶部
到尾部
其他电子电气

基于肤色信息和模板匹配的人脸检测

时间:2020/10/27 9:23:39  作者:  来源:  查看:0  评论:0
内容摘要:系统算法分析3.3.1  色彩空间的转换彩色信息常常作为一种有效的特征应用于图像分割。在不同光照下,虽然亮度会产生很大的差异,但物体的色度具有恒常性,基本保持不变。根据计算机色彩理论,对一种颜色而言,在计算机中有不同的表达方式,这样就形成了各种不同的色彩空间。MATLA...

系统算法分析
3.3.1  色彩空间的转换
彩色信息常常作为一种有效的特征应用于图像分割。在不同光照下,虽然亮度会产生很大的差异,但物体的色度具有恒常性,基本保持不变。根据计算机色彩理论,对一种颜色而言,在计算机中有不同的表达方式,这样就形成了各种不同的色彩空间。
MATLAB图像处理工具箱支持四种基本图像类型:索引图像、灰度图像、二进制图像和RGB图像。RGB图像,也就是真彩图形。MATLAB直接从图像文件中读取的图像就是RGB图像。它存储在n×m×3的数据矩阵中,这个三维数组有三个面,依次对应于红(Red)、绿(Green)、蓝(Blue)三种颜色,而面中的数据则分别是这三种颜色的强度值,面中的元素对应于图像中的像素点。假设所得三维矩阵X为 (256,256,3),则X(:,:,1)代表红颜色的2维矩阵;X(:,:,2)代表绿颜色的2维矩阵;X(:,:,3)代表蓝颜色的2维矩阵。
首先要收集几十幅彩色的皮肤图像,组成一个肤色库,在读入每张肤色图像之后,先通过公式(3-1)将每一个像素点的RGB值归一化转换到原色空间,然后获取每张肤色图像的[r ,g ]均值。
                            (3-1)
这样,RGB色彩空间就转化成了归一化RGB色彩空间。
3.3.2  肤色模型
将通过色彩空间转换后的每张图片的[r ,g ]均值组合成数组向量[r, g],然后由公式(3-2)和公式(3-3)得出均值和协方差:
μ=E{x}                                 (3-2)
其中x=[r g];                                                                     
C=E{(x-μ)(x-μ)T}                          (3-3)
有了均值和协方差的值,就能采用高斯模型N(μ,C)来逼近肤色机率分布,本设计通过高斯概率密度函数来拟合肤色高斯模型,由公式(3-4)所示。
                            (3-4)
对参考图像的每个像素利用高斯模板建模,即认为每个像素点都服从均值μ和协方差C的分布,且每一点的高斯分布是独立的,如图3-3所示。
图3-3 肤色高斯模型
通过高斯拟合获得皮肤颜色模型后,可以得到图像中任何像素的皮肤概率。这样
就产生了一个灰度图像,这个图像用灰色的深浅程度来表明皮肤可能性的大小。图3-4是一个计算肤色模型的例子。其中图(a)是原图像,图(b)是对原图像进行肤色建模后得到的灰度图像。

          (a)原图像                    (b)皮肤灰度图像
图3-4 肤色建模
3.3.3  平滑去噪声
图像中不同特性的像素具有不同的频谱特性,频谱上的高频信息对应空域上变化比较剧烈的信号,而低频信号对应着空域上变化比较缓慢的信号。可以用“低频部分反映图像的概貌,高频部分反映图像细节”来总结频域上的信息强度和空域上的像素特性之间的关系。通过对图像频谱特性的分析和研究发现,其中低频的成分远高于高频成分,高频成分代表了图像的边缘,跳跃部分以及在图像获取过程中产生的噪声,大部分图像信息集中在低频部分。
因为人在对图像进行观察时,如果图像的概貌可以呈现在面前,则已经可以达到理解图像的目的,因此,在不过于苛刻地计较图像的再现质量的场合下,可以通过只对图像低频部分进行编码,达到减少图像数据量的目的。
图像平滑的主要目的就是去除或衰减图像上的噪声和假轮廓,即衰减高频分量,增强低频分量,故图像平滑也称为低通滤波。这种低通滤波器可以通过一种称之为模板(template)的工具来实现。
    模板实际上是一种邻域运算符,模板运算的数学涵义是一种卷积或互相关运算。事实上模板运算就是用模板中心点逐一对准图像上一象素,然后将模板上的元素和它所重合位置上的图像灰度对应相乘,然后再求和,其结果就是该象素平滑后的灰度。经模板操作之后,图像上每一个象素的灰度不仅和该象素原来的灰度有关,而且与该象素相邻象素的灰度有关。
    模板1/9[1 1 1;1 1 1;1 1 1] 是一种常用的平滑模板,称之为Box模板,是一种消噪声模板。消噪声模板的主要作用是消减随机噪声。它运算结果是将原图像中的每一象素的灰度和它周围8个象素的灰度相加,然后除以9作为平滑后图像的对应像素的灰度。图3-5显示了一张灰度图片在没有使用平滑滤波与使用平滑滤波的不同情况。     
              (a)没有使用过平滑滤波               (b)使用过平滑滤波
图3-5 平滑去噪
3.3.4  二值化
二值图像有如下特点:
1、假定二值图像大小为m×n,其中,物体像素值为1,背景像素值为0;
2、二值图像处理的算法简单,易于理解和实现,计算速度快;
3、二值视觉所需的内存小,对计算设备要求低;
4、二值视觉系统技术可用于灰度图像视觉系统。
对于灰度图像,通过选取合适的门限值,可以将灰度图像进一步转换为二值图像。
其中,0(黑色区域)和1(白色区域)分别表示非皮肤区域和皮肤区域。
因此,可以通过阀值处理将两者分割开。对于不同肤色、不同亮度的各种图像,无法确定一个固定的阀值对所有的图像进行准确的分割。如果阈值降低,则被分割的皮肤区域的数量就会增加;如果阈值下降并太低的话,那么皮肤区域的数量就会急剧上升。基于这个事实,可以生成一个阈值模型。
本文的自适应阀值程序让阈值从0.65开始计算,每次减少0.1,直到0.05。当被分割肤色区域的数量变化最小时,这时候的阈值是最佳的。这个过程用MATLAB很容易实现。
最佳的阈值一旦确定,灰度图像就可以转化成二进制的图像了。白色区域表示肤色区域,黑色区域表示不包含皮肤的区域,需要用MATLAB中的bwlabel()函数将每个皮肤区域标上标签,即为其分配一个数字以便于以人脸特征独立地检测它们。图3-6显示了一张图片的灰度图像和转化成的二值图像。
(a)灰度图像                      (b)二进制图像
图3-6 二值化
3.3.5  去除假区域
二值皮肤分割图像只是给出了所有与皮肤颜色相同的区域,有可能把肩膀、手臂、腿等肤色区域或是与肤色相近的其他物体也包括了进去,所以,得到的只能是人脸的大致区域,需要进一步通过各种算法将那些非人脸区域尽可能都去除掉。
在视觉应用中,欧拉数或亏格数(Euler)可作为识别物体的特征。定义:连通成份数减去空洞数E = C –H,其中: C为连通成份数、H为空洞数。
因为人脸包含眼睛、鼻子以及嘴巴,因此可以说一张脸在被分割的区域里应包含至少一个洞。由于一次仅分析一个被分割区域,要算出这个区域里包含的洞的个数,可用公式 H = 1 – E,其中,E数值由MATLAB中的“bweuler”函数计算。
为了进一步排除分割,还需要对上面获得的二值图像中的目标区域进行比例、结构的分析,过滤掉不可能的人脸区域,便于后面的形状模板的匹配。具体的判断规则如下:
1、长宽比: 虽然人脸的比例通常是1:1,但考虑到与人脸相连的脖子可能没有被衣服覆盖的情况,本文规定,如果目标区域的高度/宽度比例小于0.8,或者大于2.0,则认为不是人脸区域,删除该区域。
该条件限定了要检测区域的形状比例大小,排除了一些颜色类似皮肤颜色但长宽比不合要求的区域。
2、区域填充率:矩形面积s=目标区域的高度*目标区域的宽度,目标区域的面积为S区域,如果S区域/s小于0.35,则认为不是人脸区域,删除该区域。
该条件可以排除一些不规则但和肤色色调接近的物体,同时也可以排除一些人体的其它非人脸区域,如弯曲的四肢等。
3.3.6  模板匹配
模板匹配过程选取被分割的一个区域,然后将一个人脸的模板放在这个区域。首先,人脸模板要根据被分割区域的尺寸重新进行缩放。在分割区域的高度和宽度的基础上,人脸模板被转化成同样的大小,以便以后能放进被分割区域。被分割区域的倾斜度被用来以一定的角度旋转人脸模板。然后,确定被分割区域和人脸模板的中心,以便人脸模板能够直接放在区域中心。
人脸模板一旦被放到被分割区域里,就应该看看它到底在多大程度上能适合这个区域。确定这个值的一个方法就是计算两个图像矩阵之间的相关系数。相关系数是在直线相关条件下,说明变量之间相关关系密切程度的统计分析指标。相关系数的大小可以判断现象间的相关程度的高低。所以,在去掉假区域后,可以将模板脸覆盖在剩下的认为是人脸的区域上,进行模板匹配的相关运算。即从两张图像的左上角像素点开始,用样本模板去和待匹配图像对比,根据公式(3-5)求出其总相关系数corr。
                                           (3-5)
其中, 和 分别代表每张图片的r、g均值。在MATLAB软件中,可直接调用函数corr2()来求取相关系数。
通过测试多个数值发现:两个矩阵之间较好的相关系数很接近0.6。如果人脸模板矩阵和被分割区域矩阵的相关系数是0.6或者更高,原始图像就会被用灰度图像显示出来,并将人脸模板放在被分割区域。
 

Tags:



相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号