基于积分图和粒子群优化的肤色分割

2014-09-12 11:17朱志亮刘富国陶向阳刘晓山
计算机工程与应用 2014年21期
关键词:肤色阈值粒子

朱志亮,刘富国,陶向阳,2,刘晓山,2

1.江西师范大学物理与通信电子学院,南昌 330022

2.江西省光电子与通信重点实验室,南昌 330022

基于积分图和粒子群优化的肤色分割

朱志亮1,刘富国1,陶向阳1,2,刘晓山1,2

1.江西师范大学物理与通信电子学院,南昌 330022

2.江西省光电子与通信重点实验室,南昌 330022

为了更快地将肤色区域从图像中分割出来,在二维Ostu方法的基础上,提出了一种将积分图和粒子群优化相结合用于寻找最优分割阈值点的新方法。该方法通过对经过颜色补偿后的图片在YCbCr颜色空间中用二维高斯肤色模型计算肤色概率图,根据二维Ostu算法确定粒子群优化的目标函数,将积分图的方法用于粒子群优化中目标函数的计算,在有效地获取最佳阈值点的同时减少了计算量。实验表明,该方法能有效并且快速地分割出肤色区域。

肤色分割;高斯肤色模型;Ostu算法;积分图;粒子群优化

1 引言

肤色是人脸非常重要的特征之一。肤色分割被证明是一种高效的分割人脸的方法,对复杂背景、几何变换等具有很强的鲁棒性[1]。为了获取肤色区域,可以对利用高斯肤色模型得到的肤色概率图进行二值化处理。从灰阶图像到二值图像转换的最常见的方法就是寻找一个阈值,所有灰阶值低于这个阈值的被分类成黑色,而高于这个阈值的被分类成白色[2]。阈值选取的方法有多种,如直方图双峰法、最大熵法、Ostu法[3]、矩量保持法、梯度统计法以及这些方法在二维上的推广,其中Ostu法以其分割效果好和适用范围广等优点而得到广泛的应用,但它存在计算量大、计算时间长的问题[4]。

本文在二维Ostu算法的基础上,提出基于积分图和粒子群优化的肤色分割的算法,减少了二维Ostu算法的计算量,缩短了计算时间。该算法利用肤色概率图及其领域平滑图构造二维直方图,然后选择类内离差矩阵的行列式作为二维Ostu算法的判别函数(准则函数)和粒子群优化的目标函数,最后利用积分图的方法来计算粒子群优化中各粒子的目标函数值,并根据粒子群优化算法找出最佳阈值分割点。实验结果验证了该算法的快速性和稳定性,结果也表明该算法在各类肤色分割方法中有一定的优势。

2 肤色概率图的获取

肤色概率图是在高斯肤色模型中通过计算肤色相似度[5]而得到的。本文选择的高斯肤色模型是根据一定光照变化范围内的个人肤色在RGB中符合高斯正态分布的特点[6],在YCbCr色彩空间中拟合得出的单高斯模型M=(m,C),其中选取的模型参数[7]为:

在进行肤色相似度计算之前,为了减小光照对图片亮度的影响,有必要对图像进行快速颜色补偿。本文采用Gray World算法对图像进行快速颜色补偿[8]:

其中,Cave为输入图像R、G、B的平均值;Cold为原图像的像素值;Cnew为亮度补偿后的像素值。

任何一个像素x(Cb,Cr)的肤色相似度h(Cb,Cr)的计算公式[9]如下所示:

通过式(3)可以得到输入图像的肤色相似度矩阵h,对肤色相似度矩阵归一化后就可以得到肤色概率图g:

3 基于积分图的二维Ostu算法

3.1 二维Ostu算法

二维Ostu算法[10]的思想是先利用原始图像和其邻域平滑图像组成二维联合直方图P,然后选取P在XY平面的投影的一点(s,t)作为阈值点,将图像分成四个部分,如图1所示。

图1 二维Ostu分割示意图

其中X轴代表原始图像的灰阶范围,Y轴代表其邻域平滑图像的灰阶范围;区域1和区域3分别代表背景和目标,区域2和区域4代表噪声和边缘。由于数据点都分布在主对角线附近,二维Ostu法假定区域2和区域4的概率都为0,并在这种假定下通过构造准则函数来判别最佳阈值点。

本文选用类内离差矩阵对应的行列式的值作为判别依据,即让准则函数值最小的点作为最佳阈值分割点。类内离差矩阵通过总的离差矩阵与类间离差矩阵相减得到,计算公式如下[11]:

其中ST为总的离差矩阵,SB为类间离差矩阵,准则函数的表达式为:

最佳阈值点(x,y)的判别依据是:

二维Ostu法能够得到很好的分割效果,但由于二维直方图的引入,大大增加了计算复杂性,在很大程度上限制了该算法的应用范围。

3.2 基于积分图的二维Ostu算法

“积分图像”(integral image)[12]是一种图像表示法,这种表示法大大加快了人脸检测过程中特征的计算速度。在文献[13]中,提出将“积分图像”方法用于以类间方差作为准则函数的二维Ostu算法,结果表明,该方法获得的阈值与没有使用积分图像的二维Ostu算法得到的结果完全相同,但处理时间大大减少[13]。但是以类间方差为判别依据的准则函数是直接按距离对模式进行分派,倾向于将模式平均分到两类中。本文选取类内离差矩阵的行列式的值作为准则函数的判别依据,这种方式对狭长区域和近球区域的差别不敏感,可以使分类结果中既包含了大类也包含了小类,更符合实际的测量环境。本文在文献[13]的基础上,用类内离差矩阵的行列式的值代替类间方差作为准则函数,得到新的基于积分图的二维Ostu算法。其步骤如下:

(1)将肤色概率图g采用3×3的均值滤波算子进行滤波得到邻域平滑图像f,然后遍历g与f,寻找对应像素并计数,将其存到矩阵d中,最后计算二维直方图矩阵P及其对应的变换矩阵Pi,Pj:

(3)计算点(i,j)对应的类间离差矩阵SB和总的离差矩阵ST:

(4)将式(11)带入式(5)计算类内离差矩阵,再利用式(6)计算点(i,j)对应的准则函数值。最后搜索全部数据点,找出最佳阈值点。

4 基于积分图和粒子群优化的Ostu算法

4.1 基本粒子群优化

粒子群优化算法[14]首先初始化一群随机粒子,然后粒子就追随当前的最优粒子在解空间中搜索。本文搜索空间是二维的,可以假设第n个粒子的位置和速度分别为Xn=(xn,1xn,2)和Vn=(vn,1vn,2),在每一次迭代中,粒子通过跟踪两个最优解来更新自己,第一个就是粒子本身所找的最优解,即个体极值Pn=(pn,1pn,2);另一个就是整个粒子群目前找到的最优解Pg。在找到这两个最优解时,粒子根据如下公式来更新速度和位置:

其中,vn,k(t+1)表示第t次迭代后粒子的速度。xn,k(t+1)表示第t次迭代后粒子的位置,w为权重,c1和c2是学习因子,r1和r2为0到1之间均匀分布的随机数。

4.2 基本粒子群优化结合积分图用于Ostu算法

本文结合积分图的计算方法,利用式(6)做目标函数,提出一种将积分图和粒子群结合用于二维Ostu算法的新方法。步骤如下:

(1)随机初始化n个粒子的位置和速度。

(2)利用积分图的二维Ostu算法计算各个粒子的目标函数值:

(3)将所有的目标函数值最小的个体的位置存储于Pg中,并用式(13)更新粒子的速度和位置:

(4)对每个微粒,将其目标函数值与之前的最好位置的目标函数值比较,如果更小,则将其作为当前的最好位置;否则,保持原始位置不变。更新完后将所有Pn对应的目标函数值与当前Pg对应的目标函数值进行比较,取最小的值对应的位置来更新Pg。

(5)若满足停止条件,则停止搜索,输出当前最优值,否则返回到第三步继续搜索。

5 实验结果和分析

为了证明本文算法的可靠性,在Pentium 3.2 GHz,内存3 GB的PC上利用MATLAB2010a软件进行实验。实验图片来自Markus Weber在加州理工学院采集的正面人脸数据库。在实验中,粒子群优化的参数设置为:惯性权重w为0.5,学习因子都为2,粒子数为10,迭代次数也为10。

实验1肤色分割的效果和运行时间的对比

实验进行传统二维Ostu算法、基于积分图的二维Ostu算法和本文提出的算法(基于积分图和粒子群优化相结合的二维Ostu算法)用于肤色分割的效果和运行时间的对比。实验测试图片大小为224×148,格式为JPG,结果以分割效果图和运行时间对比表呈现。

该组实验的分割效果图如图2所示。

图2 实验1分割效果图

三种方法运行时间对比表如表1所示。

表1 运行时间对比表s

由分割效果图可知,三种方法都能很好地分割出肤色区域,其中前两种方法得到的分割效果是一样的。由于高斯肤色模型是一种拟合而成的模型,因此不能保证百分百准确分割出肤色区域,同时因为光线角度的原因,分割结果难免会有一些误判区域。本文算法在此次测试中的效果要优于其他两种算法,这是由于该算法得到的阈值点具有一定的随机性,不一定就是按照全局搜索得到的那个阈值点,而不同的阈值点得到的效果是不同的,关于本文算法的稳定性将在后面的实验中进行验证。

但是三种方法的运行时间有明显的不同。传统二维Ostu算法在每次计算各分割点对应的准则函数值时都要遍历一遍原数据;基于积分图的二维Ostu算法在整个搜索过程中虽然只需要遍历一遍原数据,但是为了找出最佳阈值点,仍然要对所有的分割点进行计算;本文提出的积分图和粒子群优化相结合的方法,利用粒子群优化算法能有效避免全局穷尽搜索的特点来弥补积分图法的不足,因此运行时间大大减少。

实验2对图片进行颜色补偿前后的分割效果的对比

考虑到图片所处环境的光照可能会影响到肤色的分割,有必要对颜色补偿前后的图片的分割效果进行实验对比。本次实验的颜色补偿采用式(2)所示公式进行计算,肤色分割采用本文提出的算法在MATLAB中编程实现,测试图片大小为224×148,格式为JPG,结果以颜色补偿前后的分割效果图呈现。

该组实验的分割效果图如图3所示。

图3 颜色补偿前后分割效果图

由结果可知,图片所处环境的光照将会影响到肤色的分割,这是由于照相设备获取的图片的颜色不仅由物体自身的物理属性决定,还与物体所在环境的光照条件有关,人眼由于颜色恒常性会忽略这种变换,可是计算机视觉系统不具有这个能力[15]。实验结果表明,经过颜色补偿后的图片更有利于肤色的分割,因此有必要在对图片进行进一步处理前,先进行颜色补偿。

实验3算法稳定性测试

该组实验对本文算法的稳定性进行验证,即对同一幅图像连续进行12次测试,再观测分割效果。实验结果如图4所示。

该组实验共运行时间为20.674 2 s。由图可知,12次的测试都能很好地分割出肤色区域,该结果证明了本文的方法具有很好的稳定性。

图4 连续12次测试效果图

6 结论与展望

本文通过利用高斯肤色模型计算经过颜色补偿后的图片的肤色概率图,并结合其邻域的平滑图得到二维直方图,在二维Ostu算法基础上,提出利用积分图和粒子群优化相结合来进行肤色分割的方法,在保证肤色分割准确性的同时有效减少了运算量。由实验结果可知该算法能有效并且快速地分割出肤色区域,可以进一步将其用于人脸检测等相关领域的研究,具有一定的实用和参考价值。但是粒子群优化在搜索过程中容易出现所谓的早熟,即局部收敛。下一步可以在基本粒子群优化算法的基础上引入动态改变惯性权重的方法和混沌运动的方法来解决这个问题。

[1]张立刚,何东健.基于肤色模型和区域特征的人脸检测方法[J].计算机工程,2008,34(19):209-211.

[2]Johannsen G,Bille J.A threshold selection method using information measures[C]//Proceedings of the Sixth International Conference on Pattern Recognition,Munich,Germany,1982:140-143.

[3]Ostu N.A threshold selection method from gray-level histograms[J].IEEE Trans on Systems,Man,and Cybernetics,1979,9(1):62-66.

[4]程培英.一种新颖的Ostu图像阈值分割方法[J].计算机应用与软件,2010,26(5):228-231.

[5]刘春生,常发亮,陈振学,等.改进的高斯肤色模型及其在人脸检测中的应用[J].仪器仪表学报,2012,33(5):1117-1121.

[6]Yang J,Lu W,Waibel A.Skin color modeling and adaptation[C]//Proceedings of the 3rd Asian Conference on Computer Vision,Hong Kong,China,1998:687-694.

[7]王航宇.基于YCbCr高斯肤色模型的人脸检测技术研究[J].现代电子技术,2008(22):102-105.

[8]Yang Ming,Wang Xinpo,Wu Zhengguan.Auto white balance algorithm based on digital camera[C]//2011 International Conference on Internet Technology and Applications(iTAP),2011:1-4.

[9]郭耸,顾国昌,蔡则苏,等.肤色相似度和动态阈值相结合的肤色分割技术[J].计算机工程与应用,2010,46(18):1-3.

[10]朱冰莲,丰建军,杨吉祥,等.复杂背景下的多姿态人眼定位[J].计算机应用研究,2012,29(5):1977-1979.

[11]孙即祥.现代模式识别[M].北京:高等教育出版社,2008.

[12]Viola P,Jones M.Rapid object detection using a boosted cascade of simple features[C]//Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition,Kauai,Hawaii,2001:511-518.

[13]郎咸朋,朱枫,都颖明,等.基于积分图像的快速二维Otsu算法[J].仪器仪表学报,2009,30(1):39-43.

[14]Kennedy J,Eberhart R.Particle swarm optimization[C]// Proc of IEEE International Conference on Neural Networks,1995:1942-1948.

[15]Gasparini F,Schettini R.Color correction for digital photographs[C]//12th International Conference on Image Analysis and Processing,2003:646-651.

ZHU Zhiliang1,LIU Fuguo1,TAO Xiangyang1,2,LIU Xiaoshan1,2

1.College of Physics,Communications and Electronics,Jiangxi Normal University,Nanchang 330022,China
2.Key Laboratory of Photoelectronic&Telecommunication of Jiangxi Province,Nanchang 330022,China

To segment the skin color area faster,this paper puts forward a method to look for the best segmentation threshold point with integral image and particle swarm optimization based on the basic 2D Ostu method.The method uses two-dimensional gaussian skin model in the YCbCr color space with a color compensation picture to gain the skin probability graph, and then confirms the particle swarm optimization’s objective function by the 2D Ostu algorithm,and calculates the function’s value with the integral image.The method can get the best threshold point effectively and can shorten the calculation at the same time.Experiments show that the method can segment the skin color area effectively and quickly.

skin segmentation;gaussian skin model;Ostu algorithm;integral image;particle swarm optimization

A

TP391.4

10.3778/j.issn.1002-8331.1211-0298

ZHU Zhiliang,LIU Fuguo,TAO Xiangyang,et al.Skin segmentation based on integral image and particle swarm optimization.Computer Engineering and Applications,2014,50(21):171-174.

江西省光电子与通信重点实验室开放基金(No.2011001);江西师范大学博士启动基金(No.4029)。

朱志亮(1988—),男,在读硕士,研究方向为图像信息处理与模式识别;刘富国(1983—),男,在读硕士,研究方向为信息光学;陶向阳(1965—),男,博士,教授,研究方向为激光传输与控制技术;刘晓山(1978—),男,博士,讲师,研究方向为图像信息处理与模式识别。E-mail:ld_zzl@126.com

2012-11-26

2013-01-10

1002-8331(2014)21-0171-04

CNKI出版日期:2013-01-29,http://www.cnki.net/kcms/detail/11.2127.TP.20130129.1543.016.html

猜你喜欢
肤色阈值粒子
Conversation in a house
人的肤色为什么不同
为什么人有不同的肤色?
小波阈值去噪在深小孔钻削声发射信号处理中的应用
基于自适应阈值和连通域的隧道裂缝提取
基于粒子群优化的桥式起重机模糊PID控制
基于粒子群优化极点配置的空燃比输出反馈控制
比值遥感蚀变信息提取及阈值确定(插图)
室内表面平均氡析出率阈值探讨
肤色检测和Hu矩在安全帽识别中的应用