标签:肤色检测
肤色被证明是一种有效的且鲁棒的人脸检测、定位、跟踪依据。同时皮肤颜色检测也能应用在图像内容过滤、内容感知视频压缩、图像色彩平衡应用等方面。
基于特征的人脸检测方法是用皮肤颜色作为检测依据已经非常实用化。颜色处理允许快速处理且对人脸模式的几何变换非常鲁棒。经验表明人脸皮肤具有特征颜色(很容易被人辨识)。使用颜色作为人脸的特征,需要克服三个主要问题:1.选择哪种颜色空间;2.皮肤颜色分布如何模型化;3.如何对人脸颜色分割结果进行处理
- 1.颜色空间介绍:
1.1.RGB空间:
RGB空间源于显像管显示用途,用三种基本颜色(红绿蓝)的光线构成颜色,这种空间在图像存储及处理方便应用得最为广泛。但由于不同颜色通道的颜色具有相关性、感知非一致性、色度与亮度的混合等因素导致非常不适合与基于颜色的图像识别与颜色分析。
1.2 Normaliz ed RGB
通过颜色归一化可以减少B通道的存储。
1.3 HSI、HSL、HSV (色调-饱和度-亮度):
该空间形容颜色给人的感官值,通常是由专家认定的原则。Hue描述主颜色,S表示饱和度,描述与亮度成比例的区域的颜色的丰富度。V表示颜色亮度。亮度与色度之间的明显差异与各个分量的直观性使得该空间在颜色分割领域非常流行。缺点是色调的非连续性与亮度的计算复杂度问题。
1.4 YCrCb
该空间是RGB空间分量的非线性变换,颜色由亮度Y,RGB中的r分量和b分量分别减去Y得到另外两个分量Cr和Cb。
亮度与色度分量的分离使得该空间对于肤色模型非常有吸引力。
1.5 感知统一颜色系统
肤色不是物体的物理特性而更是人的感官特性。因此与人的感官系统越接近的颜色表示能够得到更好的性能。CIELab和CIELUV是两种感知一致性的颜色空间。感知一致性是指色度图上表示的两种颜色之间的距离与颜色观察者感知的变化不一致,也就是颜色之间数字上的差别与视觉感知不一致。但是这带来的是从RGB空间转换到LAB空间的时间复杂度问题。
-2.Skin modelling
肤色检测的最终的目标是建立能够分辨皮肤与非皮肤像素的判决规则。通常引入测量像素点的颜色到皮肤色调的距离作为一个标准,这种标准由肤色建立来定义。
2.1 显式定义的皮肤区域
一种建立肤色分类器的方法是显示定义在颜色空间中的的肤色边界:
光照条件比较理想的情况下:
但是如果光照不均匀(受到阴影的影响)可能肤色分割的结果不甚理想(论文中提到对于与肤色相近的物体比如木头、铜着色的金属,会出现判断出错即False Positive(误报)):
可以看出对于与肤色相近的木质地板也被错误检测为肤色区域:
这种方法的明显优点是非常简单,难点是找到合适的颜色空间以及对应的判决规则。[Gomez and Morales 2002]提出一种机器学习算法找到合适的颜色空间与判决规则。首先使用归一化RGB空间,运用一种建设性的推断感应算法来建立大量由三个r\g\b分量与常量1/3叠加的三种属性的集合。该方法证明性能超过了相同颜色空间下的Bayes skin probability map方法。
2.2 Nonparametric skin distribution modelling(非参数肤色分布模型)
非参数方法的关键思想是从训练集中估计肤色分布。
2.2.1 Normalized lookup table (LUT )
颜色空间被量化统计为大量的bins,每个bins表示颜色分量对的特定范围。bins构成二维或者三维的直方图,每个bins中统计了对应颜色对在训练集中出现的次数。训练完成后,直方图进行归一化,将直方图的数值转化为离散概率分布。
skin [c ]表示当前直方图bins的值,即对应着颜色矢量,Norm为归一化因子。直方图为32时基本性能最好
2.2.2 Bayes classifier
更合适的方法是计算条件概率,即在给定颜色的情况下对应是皮肤的概率。贝叶斯公式表示如下:
当只是比较和的情况下,由二者的比值给出一个判决条件:
《Statistical Color Models with Application to Skin Detection》一文中theta取的是0.4,直方图级数为32时达到检测效果最佳。查找表的优势在于速度快,但是要耗费较大的内存,因为要保存skin和non-skin的直方图。(未完——)
标签:肤色检测
原文地址:http://blog.csdn.net/u010350978/article/details/44981221