APP下载

几种常用的肤色检测颜色空间

2013-09-20庞燕

关键词:肤色像素点色调

庞燕

(中国专利技术开发公司,北京100080)

1 引言

肤色检测是在图像中选取对应于人体皮肤像素的过程。随着视频图像采集设备的普及,近年来对图像中肤色区域分割的研究日趋活跃。在与人相关的各种机器视觉系统中,肤色检测技术正得到越来越多的应用,具有巨大的市场潜力。目前比较典型的应用包括人脸检测与识别、表情识别、手势识别、基于部分内容的图像与视频检索、新的人机接口技术、肌体检测和敏感图片过滤等方面。可见,肤色检测不仅是人脸或手势等身份、情感和行为识别系统的重要组成,而且在安全规范、反恐和医疗保健等领域,人脸的化妆和整容的检测也日趋重要。

在过去的十几年中,人们对肤色检测已经做了广泛的研究,提出了许多成熟的肤色检测方法,这些方法在总体上大致可分为两类,即基于像素点的肤色检测方法和基于区域的肤色检测方法。基于像素点的肤色检测方法主要包括肤色区域边界固定法、查表法(LUT)、基于Bayes判决的统计肤色模型以及建立高斯肤色模型等方法,其中肤色区域边界固定法就是通过离线的实验观察建立肤色在某个颜色空间中的分布范围,这个范围由若干个简单不等式定义,目前比较常用的颜色空间有 RGB、YCbCr、HSV以及YUV等等,这种方法最大的优势是实现起来简单、快速而且高效。本文就简单介绍一下这些颜色空间并在这些颜色空间中进行肤色检测,然后做出对比分析。

2 几种常用颜色空间的介绍

颜色空间也称彩色模型(又称彩色空间或彩色系统)它的用途是在某些标准下用通常可接受的方式对彩色加以说明。本质上,彩色模型是坐标系统和子空间的阐述。位于系统的每种颜色都有单个点表示。下面就简单的介绍一下几种常见的颜色空间。

2.1 RGB颜色空间

RGB(红绿蓝)颜色模型是我们使用最多、最熟悉的颜色模型,现有的图像采集设备最终采集的大多数都是RGB值,颜色显示设备最终使用的也多是RGB值。它采用三维直角坐标系(如下图1所示)。红、绿、蓝三原色是加性原色,各个原色混合在一起可以产生复合色。在图中,坐标原点(0,0,0)表示黑色,坐标点(1,1,1)表示白色,坐标轴上的三个顶点表示RGB三个基色。因此彩色空间是三维线性空间,任意一种具有一定亮度的颜色光都可以用空间中的一个点或一个矢量来表示。

图1 RGB颜色空间单位立方体

2.2 YCbCr颜色空间

YCbCr色彩模型是CCIR601编码方式的色度模型,也是许多视频压缩编码,如MPEG、JPEG等标准中普遍采用的颜色表示格式,它被广泛应用在电视的色彩显示等领域中。YCbCr颜色空间(或YIQ,YUV空间)来源于国家电视标准委员会(NTSC)制彩色电视信号的传输,它也将色彩表示成三个分量,即亮度Y,蓝色色度Cb和红色色度Cr。

YCbCr颜色空间是RGB颜色空间的线性转换,其转换公式如下。

2.3 HSV颜色空间

HSV颜色空间是为了更好的数字化处理颜色而提出来的,其中H(Hue)代表色调,S(Saturation)代表饱和度,V(Value)代表亮度。HSV颜色空间是一个圆锥体,圆锥底面半径与0度线之间的夹角代表色调(Hue),圆锥底面半径大小代表饱和度(Saturation),圆锥的高代表亮度(Value)。当色调(Hue)从0度变化到360度时,相应的颜色从红色变化到黄色、绿色、蓝绿色、蓝色、紫红色,然后回到红色。当饱和度(Saturation)从0变化到1时,相应的颜色或者说色调(Hue)从不饱和(灰色阴影)变到全饱和(没有白色成分)。亮度(Value or Brightness)从0变到1.0,相应的颜色变得越来越亮。

HSV颜色空间是RGB颜色空间的非线性变换,其具体的算法流程如下:

①对RGB颜色空间的R、G、B的值作归一化处理,归一化公式如下:

②计算HSV颜色空间中V的值,该值由以下公式确定

③确定HSV颜色空间中S的值,公式如下:

④确定H的值,在确定H值之前,我们需要确定一个差值σ,σ的计算公式如下:

由(4)式计算的σ即可确定H的值:

3 各颜色空间下的肤色检测结果

本文从网上获得100多幅光照均匀的黄种人的图片,然后自己手工截取200个肤色区域块,记录每个肤色块的大小(即像素个数)。对这200个肤色区域块分别在RGB颜色空间、YCbCr颜色空间以及HSV颜色空间中进行肤色检测。RGB颜色空间中肤色像素点各颜色分量的取值为r>95,g>40,b>20,r>g,r>b,(r-b)< -15 或(r-b)>15,YCbCr颜色空间中肤色像素点可以用Cb、Cr两个分量确定,即145≤Cr≤170或145≤Cb≤195,HSV 颜色空间中肤色像素点可以仅用一个分量H来确定,为0.04<H<0.13。以下是一些肤色块在各个颜色空间中的肤色检测效果图:

图1给出了两幅截取的肤色块原图,分别在RGB、YCbCr以及HSV颜色空间中对这两幅肤色块图片进行肤色检测,图2和图3为经过肤色检测之后的图片,黑色部分表示被误检为非肤色的区域。从结果图中我们可以看出,所取的两个肤色块在RGB颜色空间中都存在被误检为非肤色的区域,而在YCbCr和HSV颜色空间中这种被误检的区域要少一些。实验中对200个肤色块分别在这三个颜色空间中进行肤色检测,统计出所有肤色块中被检测为肤色点的像素点个数,计算其与总的像素点的比值进而得出最终的肤色检测正确率,经过实验我们得出,最终的肤色检测结果为RGB颜色空间中肤色检测的正确率为70.3%,YCbCr颜色空间中肤色检测的正确率为80.1%,HSV颜色空间中的肤色检测的正确率为83.6%。

4 结果分析

如上实验结果所示,在所取图片的光照条件相对比较柔和的情况下,HSV颜色空间的肤色检测结果最优,YCbCr颜色空间次之,RGB颜色空间最差。造成这种结果的主要原因在于:

(1)RGB颜色空间虽然是依据人眼识别的颜色定义出的空间,它可以表示大部分的颜色,但是它将色调、亮度和饱和度这三个量放在一起表示,很难分开,因此RGB颜色空间用于肤色检测时算法的亮度适应性不好,造成了在该颜色空间中肤色检测的效果很不理想。

(2)YCbCr颜色空间具有将色度与亮度分离的特点,它是两维独立分布,能较好的限制肤色分布区域,在YCbCr色彩空间中,肤色的聚类特性比较好,因此,选择该颜色空间会获得比RGB颜色空间更好肤色检测效果。然而,在YCbCr颜色空间中,我们认为肤色区域的判定是只与Cb和Cr的值有关的,但是实际上,Y值也在某种程度上影响着肤色检测的效果。在YCbCr颜色空间中,肤色色度与亮度(Y)仅在高亮度和低亮度图片中近似无关,而在高亮度和低亮度图片区域中,肤色色度和亮度(Y)是非线性相关的,这是YCbCr颜色空间在肤色检测上的缺陷。

图1 两幅截取的肤色块原图

图2 肤色块1对应的几种颜色空间下的肤色检测效果

图3 肤色块2对应的几种颜色空间下的肤色检测结果图

(3)HSV颜色空间是RGB颜色空间的非线性转换,转换之后的H、S、V值的相关性较弱,H和S分量与人感受色彩的方式相对一致,同时,HSV颜色空间能较好地满足颜色空间的均匀性、紧致性、完整性和自然性等属性,另外,在HSV颜色空间中彩色图像的每一个均匀性色彩区域都对应一个相对一致的色调(Hue),使得色调(Hue)能够单独用来进行彩色区域的分割。HSV颜色空间的众多优点使得在该空间中对图片进行肤色检测具有相当不错的肤色检测效果,然而不考虑亮度信息而仅仅考虑用色调(Hue)来进行肤色区域的分割显然也是不够的,因此仅仅在HSV颜色空间中对图片进行肤色检测显然也不可能达到非常优秀的效果。

5 结束语

肤色检测技术现如今已经广泛的应用于人脸检测与敏感图像检测等各个领域。近年来各国的研究人员已经提出了各种各样比较成熟的肤色检测技术,本文用到的这种肤色区域边界固定法具有简单快速而且高效的特点,文章中选择了三种最常用的颜色空间进行实验,并对最后的实验结果进行了简单的对比分析,得出在所取图片的光照条件相对比较柔和的情况下,HSV颜色空间具有相对最佳的肤色检测效果。考虑到在HSV颜色空间中亮度信息对肤色检测存在的影响,后期的实验研究工作打算先对图片进行灰度均衡化处理以尽可能的消除亮度信息的干扰,然后再在HSV颜色空间进行肤色检测以获得更好的肤色检测结果。

[1]Jayaram S,Schmugge S,Shin MC,etal.Effect of color space transformation,the illuminance component,and color modeling on skin detection[C].Proceedings of IEEE Conference on Computer Vision and Pattern Recognition ,Washington D C,2004,813-818.

[2]Albiol A,Torres L,Delp EJ.Optimum color spaces for skin detection[C].Proceedings of the International Conference on Image Processing,Thessaloniki,2001,122-124.

[3]田巍,庄镇泉.基于HSV色彩空间的自适应肤色检测[J].计算机工程与应用,2004,14:81-85.

[4]Gomez G,Sanchez M,Sucar LE.On selecting an appropriate color space for skin detection[C].Proceedings of Mexican International Conference on Artificial Intelligence,Yucatan ,2002,69-78.

[5]Jedynak B,Zheng H,Daoudi M,Barret D.Maximum entropy models for skin detection[A].Tech Rep XIII[C].France:Universite des Sciences et Technologies de Lille,2002.

[6]Shamik Sural,Gang Qian,Sakti Pramanik.Segmentation and Histogram Generation Using the HSV color space for Image Retrieval[C].Image processing 2002,Proceedings 2002 International Conference,2002.589-592.

[7]王建国,林宇生,杨静宇.基于新颜色空间YCgCr的人脸区域初定位[J].计算机科学,2007,34(5):228-233.

[8]吕东辉,王滨.YCbCr空间中一种基于贝叶斯判决的肤色检测方法[J].中国图象图形学报,2006,11(1):47-52.

[9]J L Lin ,M H Dunham.Mining association rules:Antiskew algorithms[A].Proceedings of the International Conference on Data Engineering[C].Orlando,Florida:1998.

猜你喜欢

肤色像素点色调
图像二值化处理硬件加速引擎的设计
肤色(外一首)
基于局部相似性的特征匹配筛选算法
Conversation in a house
人的肤色为什么不同
为什么人有不同的肤色?
湖光水色调
色调会说话
分离色调与色调曲线
基于像素点筛选的舰船湍流尾迹检测算法