跳转到主要内容
瑞苏盈科专栏
我与瑞苏盈科板卡的开发故事

人体肤色识别

Zynq-7000 人体肤色识别

judy /

<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