姓名:朱睿琦
学号:15180288015
参考:http://blog.csdn.net/u014568921/article/details/45953225
http://blog.csdn.net/soaringlee_fighting/article/details/72983330
【嵌牛导读】:肤色作为人的体表显著特征之一,尽管人的肤色因为人种的不同有差异,呈现出不同的颜色,但是在排除了亮度和视觉环境等对肤色的影响后,皮肤的色调基本一致,这就为利用颜色信息来做肤色分割提供了理论的依据。
【嵌牛鼻子】:肤色特征,图像处理
【嵌牛提问】:肤色模型的应用有哪些?为什么将肤色特征作为识别的标准?
【嵌牛正文】:在肤色识别中,常用的颜色空间为YCbCr颜色空间。在YCbCr颜色空间中,Y代表亮度,Cb和Cr分别代表蓝色分量和红色分量,两者合称为色彩分量。YCbCr颜色空间具有将色度与亮度分离的特点,在YCbCr色彩空间中,肤色的聚类特性比较好,而且是两维独立分布,能够比较好地限制肤色的分布区域,并且受人种的影响不大。对比RGB颜色空间和YCbCr颜色空间,当光强发生变化时,RGB颜色空间中(R,G,B)会同时发生变化,而YCbCr颜色空间中受光强相对独立,色彩分量受光强度影响不大,因此YCbCr颜色空间更适合用于肤色识别。
由于肤色在YCbCr空间受亮度信息的影响较小,本算法直接考虑YCbCr空间的CbCr分量,映射为两维独立分布的CbCr空间。在CbCr空间下,肤色类聚性好,利用人工阈值法将肤色与非肤色区域分开,形成二值图像。
RBG转YCbCr:
Y = 0.257*R+0.564*G+0.098*B+16
Cb = -0.148*R-0.291*G+0.439*B+128
Cr = 0.439*R-0.368*G-0.071*B+128
1、目前常用的静态肤色建模方法主要有:
阈值法,简单高斯模型,混合高斯模型,直方图统计和区域级检测。
2、基于肤色的人脸分割
主要分为三大部分:(1)预处理,针对噪声,光照带来的影响进行消除。(2)基于肤色模型的肤色分割。(3)连通域分析,人脸区域定位。
流程图如下:
预处理主要使用高斯滤波和直方图均衡,这些原理比较基础。
通过比较RGB,HSV,Ycbcr空间,发现Ycbcr和HSV空间在进行人脸肤色分割方面由于肤色范围紧密,不易受光照其他物体干扰(基于肤色模型的,如果背景中有与人脸颜色类似的物体,且距离较近很容易产生干扰,影响人脸区域定位的准确性,这也是这一算法不能解决的问题)。但是RGB与HSV空间的转换相比RGB到Ycbcr空间转换来说较为复杂些,所以我们采用Ycbcr空间进行人脸肤色的建模与分割。
这种方法主要运用了统计学原理,认为肤色符合正态分布的随机样本也满足高斯分布。而高斯分布表达形式简单、直观。高斯模型通过计算像素的概率值构成连续的数据信息并得到一个肤色概率图,根据肤色大小完成肤色的确认。
二维高斯型函数:
其中:x为样本像素在YCbCr空间的值x=[Cb,Cr]T,M为肤色在YCbCr空间的样本均值M=E(x),C为肤色相似度模型的协方差矩阵C=E((x-M)(x-M)T)。
样本统计:
为确定函数里的参数,需要采集大量的肤色样本来计算他们的统计特征。即用来得到M和C的值。
代入高斯函数求得各个P(Cb,Cr)值,然后进行归一化处理。做法是:将Pi(Cb,Cr)/max(Pi(Cb,Cr)),用这个商作为该点的相似度值.为了查看相似度后图像,可以将[0,1]转化为[0,255]。做法是将(Pi(Cb,Cr)/max(Pi(Cb,Cr))*255。