- 1 -
中国科技论文在线
基于模糊聚类的肤色检测
周玉成,杨新年*
作者简介:周玉成,(1986-),男,助教,计算机图像图像处理算法与设计
(辽宁工程技术大学电子与信息工程学院,辽宁 葫芦岛 125105)
摘要:肤色是彩色图像人脸检测中一个非常重要的特征。复杂光照往往在图像上产生高光区5
和阴影区域,对于具体的待测图像由于训练样本训练方法的限制,肤色常常出现误判,肤色
在二维空间投影处理,虽然不用考虑亮度影响,但往往又会造成肤色和类肤色重叠。本文提
出采用 YCbCr 空间将肤色按照高光区,中光区,暗光区进行模糊聚类形成三个相对稳定的聚
类中心,可以根据待测图像中光照情况决策判断肤色区域。实验证明,由于结合了每幅图像
自身的特点, 该算法能很好的色分割结果的准确性。�10
关键词:肤色检测算法;肤色模型;聚类分割�
中图分类号:�
Skin detection based on fuzzy clustering
Zhou Yucheng, Yang Xinnian 15
(Electronic and Information Engineering School,Liao Ning Technical University,
LiaoNing HuLuDao 125105)
Abstract: Color plays an important part in the face detection in color lighting
often produces images with high light areas and shadow the specific images , As
restrictions on training method of training samples,Color miscarriage of justice often 20
in the two-dimensional color space projection,Although the effect of light is
not considered , but this will often result in skin color and class this paper ,using
YCbCr space,skin-color fuzzy Clustering is respectively carried out in high light areas, district
light ares and shadow areas,forming three relatively stable cluster centers. According to the light
conditions of images ,skin region is detected. Experimental results show,as combining the 25
characteristics of each image itself , The algorithm can raise the accuracy of the color
segmentation results.
Keywords:Skin detection algorithm; Skin-color model; cluster
0 引言 30
肤色检测是针对彩色图像中选取对应于人体皮肤像素的过程. 肤色是脸部区别于其他
区域的重要特征,,因其对姿势、旋转、表情等变化不敏感,已成为彩色图像人脸检测中的一
个非常重要的特征[1]。通过肤色检测可以有效的减小人脸检测搜索的范围,有效的去除图像
中背景带来的干扰,提高了人脸检测效率。实验研究表明肤色在一定彩色空间中具有较好的
聚类性,但是这种聚类性,但这种聚类性是相对的,它在不同人种之间肤色表现出了相似性,35
但在复杂光照情况下肤色聚类却出现了波动,即使是相同的肤色点在不同的光照情况下在色
彩空间中会表现出不同的分布情况。有些人尝试将亮度分量独立出来,譬如利用 YCbCr 色
彩空间,通过简单的将肤色投影到二维 CbCr 平面中对肤色进行分割,而降维会造成一部分
肤色和非肤色像点重叠在一起,影响肤色分割精确度。所以亮度信息是不能丢弃的。为此,
Hsu 等提出一种光照补偿加颜色非线性变换的方法来克服光照的影响, 但仍难以准确描述空40
间中的不规则肤色分布特征。Dios 等提出采用 YCgCr 颜色空间, 对于肤色分布,CgCr 平面
比 CbCr 具有更规则的分布, 但是采用的仍是二维肤色模型[2]。另外, 通用的肤色模型在训练
时, 将包含各种颜色的肤色点放在训练集内一起训练, 由此得到模型的优势在于可对不同人
种的肤色具有较强的适应性。但同时带来的缺陷在于对每副特定图像, 分割结果在保留了真
- 2 -
中国科技论文在线
正肤色区域之外, 常常会保留下很多背景点。因此, 需要考虑保持肤色模型在对各种肤色有45
较好适应性的基础上, 获得对具体图像更好的分割结果。
基于上面的分析, 本文提出采用 YCbCr 的彩色空间建立肤色模型。将复杂光照下的肤
色样本投射到色彩空间中,将肤色按照高光区,中光区,暗光区进行模糊聚类形成三个相对
稳定的聚类中心,根据待测图像中光照情况决策判断肤色区域,最终从图像中准确的分割出
肤色区域. 大量实验结果表明,该算法能够提高了人脸检测的速度和鲁棒性。 50
1 色彩空间的选择
彩色图像处理有许多彩色空间坐标系,最常见的是 RGB 空间,其来源于 CRT 显像设备,
是面向硬件设备的. 常用的还有 YCbCr 空间、HSV 空间及 TSL 空间等,这些都是从 RGB 空
间转换而来. 在彩色空间不同色调的各类物体聚类在各自不同的色带中,由此可以利用彩色
信息在图像中快速检测出相应的目标. 。YCbCr 空间具有将色度与亮度分离的特点,在55
YCbCr 色彩空间中肤色的聚类特性比较好,而且是两维独立分布,能较好地限制肤色分布
区域,并且受人种的影响不大。本研究选择 YCbCr 色彩空间模式进行肤色区域分割。YcbCr
格式可以从 RGB 格式线性变化得到,转换公式如下:
⎥⎥
⎥
⎦
⎤
⎢⎢
⎢
⎣
⎡
⎥⎥
⎥
⎦
⎤
⎢⎢
⎢
⎣
⎡
=
⎥⎥
⎥
⎦
⎤
⎢⎢
⎢
⎣
⎡
=
⎥⎥
⎥
⎦
⎤
⎢⎢
⎢
⎣
⎡
B
G
R
-
256
1
128
128
16
Cr
Cb
Y
(1)
2 改进的基于聚类的肤色模型 60
所谓的肤色模型是指一个二类分类器,即如何分类肤色与非肤色. 大部分肤色模型是基
于统计思想的. 现在常用的肤色模型有参数化的肤色模型与非参数化肤色模型,其中前者主
要有混合高斯模型,后者主要有统计直方图模型.
Anil K.Jain 等从 Heinrich-Heriz-institute 图像库中的 137 幅图像中手工选取 853571 个
肤色象素点,将其绘制在 YCbCr 空间及其二维投影子空间 Cb—Cr 空间中得到的结果如图 165
所示。从图中可以看到,在 YCbCr 色彩空间中,肤色聚类是呈两头尖的纺锤形状,也就是
在 Y 值较大和较小的部分,肤色聚类区域也随之缩减[3]。
图 肤色在YCbCr空间的分布
70
彩色人脸图像易受光照的影响,图像中的人脸会产生高光区、阴影区.研究发现在 RGB
转化为 YCbCr 时,当光照强度在[60,200]变化时,CrCb 值变化不大,聚类性较强,当光照
- 3 -
中国科技论文在线
强度 Y 强于 200 时,Cr 值逐渐变小直至趋近于零而 Cb 逐渐变大直至趋近于零[4]。如果按照
亮度划分肤色分布空间,在肤色检测时按亮度分别检测各像素点,则可检测到不同亮度的肤色
像素,从而提高肤色检测的鲁棒性,这同时为分析图像的光照环境提供了相关信息. 75
基于以上分析, 本文在 YCbCr 色彩空间建立肤色模型 ,利用 k-means 聚类迭代将采样
分成高、中、低 3 类亮度,并建立高斯混合肤色模型用于彩色图像人脸检测。高中低亮度区
间分别对应[0,60] ,[60,200],[200,255].并在建立肤色模型后, 生成一个 YCbCr 空间到肤色概
率的查找表,从而可以大大提高检测的速度.
模型的具体步骤如下: 80
设 E 为肤色像素集: { }n321 ...XX,X,XE = , 其中 { }CrCbYX ,,i = .(1) 按 Y 大致可
分为 3 类, { }321 ,, EEEE = 其中:
{ }600|1 <≤= YXE i , { }20060|2 <≤= YXE i , { }255200|3 ≤≤= YXE i ,即将
亮度分成高、中、低 3 类亮度范围;
(2) 分别计算每类中 Y、Cb 与 Cr 的均值与协方差: 85
( ) ∑= n iXn 1
1xμ (2)
( )( ) ( )( )Tn ii xXxXnk ∑∑ −−= 1
1 μμ (3)
(3) 对 E 中每个采样点,逐一计算其在 3 个高斯混合分布中的马氏距离:
( ) ( )( ) ( ) ( )( ){ }211
2
1 exp
2
1, Tiii kXkkX
k
kXp μμ
π
−⋅−×= ∑∑
− (4)
将此点分配到概率值最大的类中 90
( )kXpgkE ikki ,maxar,X =⎯→⎯ (5)
(4) 重复(2),(3)到达到一定的迭代次数或者某类中像素的个数小于给定值;
(5) 保存每类中 Y、Cb 与 Cr 的均值与 YCbCr 协方差∑ k
在实验中,我们选择 18076 个不同光照、不同人种的肤色采样像素,转换到 YCbCr 空间,
求出聚类质心与查找表。 95
3 阈值选取
阈值选取是为了将肤色与非肤色,在进行肤色检测时,对图像中的每个像素点,逐一按照
式(4) 计算像素点到聚类中心的马氏距离,取最小值作为该点到肤色像素类的距离,设定一个
阈值δ ,若该距离超出阈值则为非肤色,否则为肤色像素. 因此, δ 值的设定对肤色检测的精
度有很大影响,值太小会漏检属于肤色的像素点,而值太大又会把非肤色误检为肤色. 一般有100
如下 3 种设定阈值的方法:(1) 固定阈值法,对所有的图像设定一个阈值; (2) 自适应阈值法,根
据各图像的亮度等信息,自适应地调整阈值大小; (3) 最佳阈值法,针对每幅图像,选择一个最
佳分割阈值.采用固定阈值的方法,效果很不理想,而自适应阈值法在应用中计算速度较慢,不
适合于快速检测[5].对此,我们提出一种最佳阈值的分割方法,这种方法基于以下事实: (1) 图
像中主要人脸的图像较之图中其他似肤色连通区域,其面积大致相同; (2) 在有大片连通的似105
肤色的背景中,当阈值由大到小递减到某一阈值时,肤色的像素数量会突然增大; (3) 在有大
- 4 -
中国科技论文在线
量分散的似肤色的背景中,当阈值由大到小递减到某一阈值时,连通区域的数量会突然增大.
该算法的基本思想是:如果把肤色像素的数目与生成的连通区域的数目的“商”看作图像中
人脸的平均面积. 那么,在阈值变化中,这个“商”变化最小的时候,也就是人脸的平均面积变
化最小时,可以认为此时的阈值为最佳阈值[6]. 实验中,我们以 为间隔,由 至 每次110
肤色像素的数目与生成的连通区域的数目的“商”(相当于人脸的平均面积) ,求得其中变化
最小的一个,作为最佳阈值δ 进行分割,实验证明效果很好。
4 肤色检测流程
图像分割是按照一定规则将一幅图像划分为若干个相互没有重叠区域的图片的过程[7].
肤色检测就是将图像中的肤色像素点与背景分离的过程.根据构造的肤色模型和阈值选择算115
法,我们设计出如下的肤色检测流程:(1) 给定一幅彩色图像,将其转换到 YCbCr 空间;(2) 对
其中的每个点,根据 YCbCr 的值查表,通过计算式(4) 得到所有点的马氏距离值 ( )jip , ,其中
( )ji. 为图中点的坐标;(3) 对 ( )jip , 进行预处理. 因为人脸肤色是连续的,所以生成的距离也
应该是连续的,对得到的肤色距离进行 33× 均值滤波, 以去除图像中的噪声点;
(4) 对 ( )jip , 采取极值规范化,以减少光照与成像设备的影响, 120
( ) ( ) ( )( )( )( ) ( )( )jipjip
jipjipjip
,min,max
,min,, −
−= , (6)式中, ( )jip , 为原点 ( )ji. 的值, ( )jip ,' 为规
范化后的点 ( )ji. 的值;
(5) 采用最佳阈值法进行阈值分割,选择阈值δ 并计算
( ) ( ) δ>= jipjip ,,1,'' . (7)
( ) δ≤= ''' ,0, pjip (8) 125
(6) 对得到的二值图像 ( )jip ,'' 进行二值形态学的闭处理,其结构元素为 33× 的单位矩
阵;然后对其连通区域进行人脸区域选取. 去除噪声区域,即面积小于图像总面积一定比例阈
值的区域.
5 实验结果与总结
针对本算法,我们在 WinXP 操作系统,P4 CPU 处理器,内存 1G 的环境下进行了实130
验.由实验结果可知,改进的基于亮度信息聚类的肤色模型具有较好的鲁棒性,能适应于不同
光照下的人脸检测,具有较高的误检率。通过肤色检测缩小了人脸检测的范围,降低了背景对
人脸检测的干扰。图是实验检测效果。
- 5 -
中国科技论文在线
135
图 原图( 左) 、传统YCbCr肤色模型检测结果( 中) 和本算法肤色模型检测结果( 右)
本文重点研究了亮度对肤色聚类的影响,在前人研究的基础上从亮度信息角度分成三个
区间对肤色聚类做模糊聚类,对于复杂光照下的图像肤色检测提供了鲁棒性更强的检测方
法。并提出基于改进的聚类的肤色模型,建立了量化亮度的查找表,可以快速区别图像中的肤140
色区域与非肤色区域。实验证明,我们提出的基于亮度聚类的肤色模型有很强的鲁棒性和较
高的检测速度。
[参考文献] (References)
[1] 陈锻生,刘政凯.肤色检测技术综述[J].计算机学报,2006,29(2):194-207. 145
[2] DE DIOS J,GARCIA N. Face detection based on a new color space YCgCr[ C ].PP Proceedings of
International Conference on Image ,2:9092912.
[3] Anil K Jain,Rein-Lien Hsu,Mohamed Detection in Color Images[J].IEEE transactions
on pattern analysis an machine intrlligence,2000,,24(5):696-706.
[4] HSU R L,ABDEL2MOTTALEB M,JAIN A K. Face detection in color images [J ] . Pattern Analysis and 150
Machine Intelligence,2002, 24 (5):6962706.
[5] LIU H,YAN S Y,CHEN XL,et al. Rotated face detection in color images using radial template (RT)
[C]PPMultimedia and Expo , ICME'03. 2003 , 3 :1372140.
[6] 秦立峰,何东健. 基于肤色分割的人脸检测算法研究[J]. 计算机工程与设计,2009,30(19):4461- 4463.
[7] 边肇祺,张学工.模式识别[M].北京:清华大学出版社,2000. 155