<font color="#FF8000">作者:OpenSLee,来源:FPGA开源工作室</font>
<strong>1 背景知识</strong>
在肤色识别算法中,常用的颜色空间为Ycbcr,Y代表亮度,cb代表蓝色分量,cr代表红色分量。
由于肤色在YCbCr 空间受亮度信息的影响较小,本算法直接考虑 YCbCr 空间的 CbCr分量,映射为两维独立分布的 CbCr空间。在 CbCr空间下,肤色类聚性好,利用人工阈值法将肤色与非肤色区域分开,形成二值图像。
RGB 转 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
对肤色进行判定的条件常使用如下判定条件:
Cb > 77 && Cb < 127
Cr > 133 && Cr < 173