肤色模型在人脸识别中已被广泛使用.常见的肤色检测是通过把R,G,B各分量转换成对数值,并进一步得到肤色的色度和饱和度以进行肤色分割.常见的肤色检测在RGB空间里的算法如下:
R>95
G>40
B>20
R>G
R>B
Max(R,G,B)-Min(R,G,B)>15
Abs(R-G)>15
满足上述公式即可认为,是肤色。这是经验得到的~
我们还可有转换颜色空间,通过把R,G,B各分量转换成对数值,并进一步得到肤色的色度和饱和度以进行肤色分割.本文则对肤色色调在YHV和YIO颜色空间中的分布作线性化处理.RGB空间到YUV空间的转换用矩阵表示如下
其中,U和V是平面上两个相互正交的矢量,色度信号(即U与V之和)是一个二维矢量,称之为色度信号矢量.每一种颜色对应一个色度信号矢量,它的饱和度由模值Ch表示,色调
由相位角θ表示
图2是YUV色彩空间中的色度信号矢量图.白色和黑色都由原点(0,0)表示,模值为0,相位角任意.在YUV空间的UV平面上,肤色的色调介于红与黄之间.根据对大量图像的彩色分析,可以确定人的肤色色调6的变化范围,如图3所示.把彩色图像的象素p由RGB空间变换到YUV空间,如果满足条件,θp在[100,150]内,则p是肤色点.
YIQ表示法的定义是基于这样一个原则:对颜色编码所得信号的冗余信息最少或者说人眼看不见的就无需传送和重现.其中1色度分量选在相位角为173的红色和303的青蓝色色调位置Q色度,分量选在色分解力弱的紫红