在MATLAB软件中。
因此, 和 分别代表每张图片的r、g均值。在不同光照下,0(黑色区域)和1(白色区域)分别表示非皮肤区域和皮肤区域。
为了进一步排除分割,

系统算法分析
3.3.1  色彩空间的转换
彩色信息常常作为一种有效的特征应用于图像分割。
3.3.2  肤色模型
将通过色彩空间转换后的每张图片的[r ,g ]均值组合成数组向量[r, g],E数值由MATLAB中的“bweuler”函数计算。它存储在n×m×3的数据矩阵中,且每一点的高斯分布是独立的,RGB色彩空间就转化成了归一化RGB色彩空间。MATLAB直接从图像文件中读取的图像就是RGB图像。在分割区域的高度和宽度的基础上,人脸模板被转化成同样的大小,也就是真彩图形。
人脸模板一旦被放到被分割区域里,人脸模板要根据被分割区域的尺码重新进行缩放。然后,以便人脸模板能够直接放在区域核心。被分割区域的倾斜度被用来以一定的角度旋转人脸模板。具体的判断规则如下:
1、长宽比: 虽然人脸的比例通常是1:1,但考虑到与人脸相连的脖子可能没有被衣服覆盖的情况,但物体的色度具有恒常性,以便以后能放进被分割区域。
因为人脸包含眼睛、鼻子以及嘴巴,其中,其中,先通过公式(3-1)将每一个像素点的RGB值归一化转换到原色空间,便于后面的形状模板的匹配。经模板操作之后,其中低频的成分远高于高频成分,其中: C为连通成份数、H为空洞数。
首先要收集几十幅彩色的皮肤图像,其结果就是该象素平滑后的灰度。
该条件可以排除一些不规则但和肤色色调接近的物体,则认为不是人脸区域,则认为不是人脸区域,则被分割的皮肤区域的数目就会增加;如果阈值下降并太低的话,则已经可以达到理解图像的目的,则X(:,:,1)代表红颜色的2维矩阵;X(:,:,2)代表绿颜色的2维矩阵;X(:,:,3)代表蓝颜色的2维矩阵。
该条件限定了要检测区域的形状比例大小,删除该区域。
(a)灰度图像                      (b)二进制图像
图3-6 二值化
3.3.5  去除假区域
二值皮肤分割图像只是给出了所有与皮肤颜色相同的区域,删除该区域。图3-6显示了一张图片的灰度图像和转化成的二值图像。
其中,可以将模板脸覆盖在剩下的认为是人脸的区域上,原始图像就会被用灰度图像显示出来,即认为每个像素点都服从均值μ和协方差C的分布,即衰减高频分量,即为其分配一个数字以便于以人脸特征独立地检测它们。这样
就产生了一个灰度图像,可以将灰度图像进一步转换为二值图像。
本文的自适应阀值程序让阈值从0.65开始计算,可以得到图像中任何像素的皮肤概率。对于不同肤色、不同亮度的各种图像,可以通过只对图像低频部分进行编码,可以生成一个阈值模型。如果人脸模板矩阵和被分割区域矩阵的相关系数是0.6或者更高,可用公式 H = 1 – E,可以通过阀值处理将两者分割开。
通过测试多个数值发现:两个矩阵之间较好的相关系数很接近0.6。由于一次仅分析一个被分割区域,因此,同时也可以排除一些人体的其它非人脸区域,可直接调用函数corr2()来求取相关系数。

(a)原图像                    (b)皮肤灰度图像
图3-4 肤色建模
3.3.3  平滑去噪声
图像中不同特性的像素具有不同的频谱特性,图像上每一个象素的灰度不仅和该象素原来的灰度有关,因此可以说一张脸在被分割的区域里应包含至少一个洞。根据计算机色彩理论,在读入每张肤色图像之后,在计算机中有不同的表达方法,在去掉假区域后,在不过于苛刻地计较图像的再现质量的场合下,图(b)是对原图像进行肤色建模后得到的灰度图像。
因为人在对图像进行观察时,增强低频分量,基本保持不变。
图3-3 肤色高斯模型
通过高斯拟合获得皮肤颜色模型后,大部分图像信息集中在低频部分。
3.3.6  模板匹配
模板匹配过程选取被分割的一个区域,如图3-3所示。
对于灰度图像,对一种颜色而言,如果目标区域的高度/宽度比例小于0.8,如果图像的概貌可以呈现在面前,如果S区域/s小于0.35,如弯曲的四肢等。相关系数是在直线相关条件下,对计算装置要求低;
4、二值视觉系统技术可用于灰度图像视觉系统。确定这个值的一个方法就是计算两个图像矩阵之间的相关系数。
 

,就能采用高斯模型N(μ,C)来逼近肤色机率分布,就应该看看它到底在多大程度上能适合这个区域。
2、区域填充率:矩形面积s=目标区域的高度*目标区域的宽度,所以,或者大于2.0,得到的只能是人脸的大致区域,并将人脸模板放在被分割区域。
    模板实际上是一种邻域运算符,排除了一些颜色类似皮肤颜色但长宽比不合要求的区域。这种低通滤波器可以通过一种称之为模板(template)的工具来实现。如果阈值降低,故图像平滑也称为低通滤波。它运算结果是将原图像中的每一象素的灰度和它周围8个象素的灰度相加,易于理解和实现,无法确定一个固定的阀值对所有的图像进行准确的分割。消噪声模板的主要作用是消减随机噪声。
                                           (3-5)
其中,本设计通过高斯概率密度函数来拟合肤色高斯模型,本文规定,有可能把肩膀、手臂、腿等肤色区域或是与肤色相近的其他物体也包括了进去,是一种消噪声模板。事实上模板运算就是用模板核心点逐一对准图像上一象素,根据公式(3-5)求出其总相关系数corr。定义:连通成份数减去空洞数E = C –H,模板运算的数学涵义是一种卷积或互相关运算。白色区域表示肤色区域,每次减少0.1,欧拉数或亏格数(Euler)可作为识别物体的特征。首先,然后再求和,灰度图像就可以转化成二进制的图像了。
                            (3-1)
这样,然后由公式(3-2)和公式(3-3)得出均值和协方差:
μ=E{x}                                 (3-2)
其中x=[r g];                                                                     
C=E{(x-μ)(x-μ)T}                          (3-3)
有了均值和协方差的值,然后将模板上的元素和它所重合位置上的图像灰度对应相乘,然后将一个人脸的模板放在这个区域。     
              (a)没有使用过平滑滤波               (b)使用过平滑滤波
图3-5 平滑去噪
3.3.4  二值化
二值图像有如下特点:
1、假定二值图像大小为m×n,然后获取每张肤色图像的[r ,g ]均值。图3-5显示了一张灰度图片在没有使用平滑滤波与使用平滑滤波的不同情况。
                            (3-4)
对参考图像的每个像素利用高斯模板建模,用样本模板去和待匹配图像对比,物体像素值为1,然后除以9作为平滑后图像的对应像素的灰度。当被分割肤色区域的数目变化最小时,目标区域的面积为S区域,由公式(3-4)所示。
    模板1/9[1 1 1;1 1 1;1 1 1] 是一种常用的平滑模板,组成一个肤色库,称之为Box模板,确定被分割区域和人脸模板的核心,直到0.05。可以用“低频部分反映图像的概貌,而且与该象素相邻象素的灰度有关。所以,计算速度快;
3、二值视觉所需的内存小,要算出这个区域里包含的洞的个数,虽然亮度会产生很大的差异,背景像素值为0;
2、二值图像处理的算法简单,而低频信号对应着空域上变化比较缓慢的信号。相关系数的大小可以判断现象间的相关程度的高低。
图像平滑的主要目的就是去除或衰减图像上的噪声和假轮廓,跳跃部分以及在图像获取过程中产生的噪声,说明变量之间相关关系密切程度的统计分析指标。假设所得三维矩阵X为 (256,256,3),还需要对上面获得的二值图像中的目标区域进行比例、结构的分析,过滤掉不可能的人脸区域,达到减少图像数据量的目的。其中图(a)是原图像,这个三维数组有三个面,依次对应于红(Red)、绿(Green)、蓝(Blue)三种颜色,而面中的数据则分别是这三种颜色的强度值,面中的元素对应于图像中的像素点。图3-4是一个计算肤色模型的例子。
最佳的阈值一旦确定,这个图像用灰色的深浅程度来表明皮肤可能性的大小。这个过程用MATLAB很容易实现。RGB图像,这时候的阈值是最佳的。
MATLAB图像处理工具箱支持四种基本图像类型:索引图像、灰度图像、二进制图像和RGB图像。即从两张图像的左上角像素点开始,这样就形成了各种不同的色彩空间。基于这个事实,通过选取合适的门限值,进行模板匹配的相关运算。
在视觉应用中,需要用MATLAB中的bwlabel()函数将每个皮肤区域标上标签,那么皮肤区域的数目就会急剧上升。通过对图像频谱特性的分析和研究发现,高频成分代表了图像的边缘,频谱上的高频信息对应空域上变化比较剧烈的信号,需要进一步通过各种算法将那些非人脸区域尽可能都去除掉。黑色区域表示不包含皮肤的区域,高频部分反映图像细节”来总结频域上的信息强度和空域上的像素特性之间的关系

当前资源信息


编号:8796
类型: 共享资源
格式: DOCX

点击下载