APP下载

一种面向移动端的快速手势分割优化方法

2019-06-06张美玉项小雨侯向辉简琤峰

小型微型计算机系统 2019年6期
关键词:高斯分布变化率手部

张美玉,项小雨,侯向辉,简琤峰

(浙江工业大学 计算机学院 数字媒体技术研究所,杭州 310023)

1 引 言

手势分割作为移动端手势识别的第一步,是至关重要的一个环节.精准的手势分割可以为后续的手势识别工作打下坚实的基础,避免不必要的计算,极大地提高识别效率[1,2].但面向移动端的手势分割研究存在以下难点:1)移动设备的资源有限;2)复杂背景和光照对手势分割的效果极易产生干扰;3)慢速移动的手部易被误判为背景.

背景差分法是目前常用于检测运动物体的分割方法.现有的背景差分法主要有多帧背景差分法和混合高斯背景模型法.何志辉等通过三帧差分去除目标区域,构建背景模型,并计算邻域像素方差以进行目标分割[3].Singha等在原图和灰度图上同时进行三帧差分计算,再使用特征跟踪器来跟踪手部[4].但是这些方法更适用于静态背景,对动态背景的适应能力较弱,易产生检测目标误判等情况.而混合高斯背景建模方法采用多个高斯分布来表示每个像素,可以有效地对多峰分布的背景进行建模,对背景的自适应性高[5].Katsarakis等通过在空间上控制学习率的变化来加速虚影消除[6],但这导致每一帧的平均学习率都提高了,影响分割算法的效率.Azzam等结合RGB和像素不确定性提出全局混合高斯模型,该方法可以适应光照的快速变化[7],Huang等在传统的运动目标检测算法中加入像素的时间信息,优化背景模型,减少前景误判[8].但是这些方法由于需要对每个像素进行时间空间的多方位处理[9,10],对系统的计算资源有很高的要求.

同时,肤色作为手部最大的特性,不会因手部的大小、形态、方向改变而变化,因此肤色检测在手部检测中具有通用性.简琤峰等结合梯度和色彩信息结构化输出形式,构建结构化随机森林进行手部检测,但是该方法在选择特征算子上需要较多时间和计算资源[11].Lopez等结合灰度、RGB和YCbCr色彩空间,基于颜色分量加权的方式进行手势分割,排除光照干扰[12,13].陈佳洲等提取肤色信息,计算超像素显著值,生成像素显著图,完成图像分割[14].但是只采用肤色提取手势的方法,极易受到背景中类肤色物体的影响.因此,结合背景消减法和肤色检测,在不影响算法性能的前提下,减小计算量,提高检测效率,对移动端手势分割研究至关重要.

基于上述思路,本文提出一种面向移动端的快速优化手势分割方法.首先根据场景变化率实现对背景模型的自适应更新,以加强背景模型对环境变化的适应性;其次通过HSV和YCbCr色彩空间构建肤色模型,精确提取肤色区域,排除非肤色运动物体的干扰;再利用局部区域定位,预测手部运动,减少冗余计算量,同时防止将慢速移动的手部误判为背景.

2 改进的手势分割方法

2.1 背景模型建立

图像中每一个像素点的颜色值可作为一个随机过程,并假设该点的像素概率服从高斯分布.令xt表示为像素点x在t时刻的像素样本,则单个采样点服从混合高斯概率密度分布函数:

(1)

其中k为分布的总数,一般取值为3~5,k值越大,则表示系统越能适应复杂场景,但是计算量也将大幅增加.基于移动端有限的计算和存储资源,本文将k值定为3,在不影响算法效果的前提下,简化高斯分布个数.

(2)

其中β(xt,μi,t,τi,t)为t时刻第i个高斯分布,μi,t为其均值,τi,t为其协方差矩阵,wi,t为t时刻第i个高斯分布的权重.

以第一帧图像数据初始化背景模型,然后将得到的每个新像素xt按照公式(3)同前k个高斯分布模型进行比较,若同该高斯分布的均值偏差在2.5σ内,则表示新像素与该高斯分布匹配度达到了90%以上,可按照公式(4)来更新权重等值,以此更新背景模型.其中α表示为学习速率,即反映了依据当前图像建立背景模型的速率.若无法匹配,则为该像素建立新的高斯分布.

|xt-μi,t-1|≤2.5σi,t-1

(3)

wi,t=(1-α)wi,t-1+α

(4)

传统的混合高斯背景建模,在背景环境受到大幅改变时,会将应为背景的部分误认为前景,并作为运动物体提取出来,从而产生虚影,影响背景模型建立的准确性和前景提取的效果.此时提高学习速率α,可以加速虚影的消除.而单纯提高学习速率,会使短时间内没有发生位移的运动物体,被归为背景来处理,从而失去物体运动的连续性.因此学习速率的变化需要考虑两个因素:当前帧的灰度变化率和肤色变化率.

在计算肤色变化率时,选取了HSV色彩空间上的H(色相)分量.在HSV色彩空间中,H分量代表图像的色彩信息,受光照变化的影响相对缓慢,通常可用H分量来表示肤色信息.这样就可以通过控制单值较快的获取肤色变化率,减少计算量.

本文提出了一种通过场景变化率自适应改变α的方法.图像灰度均值变化率Rt越大,则表示在t时刻的帧图像场景变化越大,而图像肤色变化率St越小,则表示前景运动物体,即手部并未有大幅变动.由此可推断,帧图像的灰度均值变化率和肤色变化率的比率越大,场景变化率越大.因此,场景变化率γt可由公式(5)得出,其中Ht表示为t时刻图像在HSV色彩空间中H分量的均值,ht为t时刻图像的灰度均值:

(5)

场景变化率增加,表示背景环境有大幅改变,因此需要提高学习速率.由公式(5)可得出学习速率α的公式,其中αinit为初始学习速率:

α=αinit(1+γt)/2

(6)

最后将当前帧和当前建立的背景模型进行差异对比,可得到一个二进制图像,该二进制图像即为消除背景后获取的前景对象.同时,前景区域中会提取到轻微晃动的物体.如图1(b)所示,该实验结果将晃动的人脸提取到前景中.为了排除干扰,只在前景中保留最大连通图,即只保留手部信息.图1(c)展示了改进后的前景提取效果.

图1 前景提取效果Fig.1 Result of foreground extraction

2.2 肤色模型建立

基于色彩空间的肤色模型可以有效的从简单背景中分割出手部.较常见的肤色模型色彩空间有HSV和YCbCr.

在HSV色彩空间中,肤色通常只集中在H分量上的某一个区域.YCbCr则是将亮度分离在Y分量,Cb(蓝色色度)和Cr(红色色度)分量对于亮度的变化相对不敏感.为了保证肤色分割的准确性,我们使用YCbCr和HSV组合色彩空间来分离肤色区域和非肤色区域.

通过实验,发现肤色在CbCr空间的分布呈良好的聚类特性,如图2所示.

图2 肤色在CbCr空间上的聚类分布Fig.2 Clustering distribution of skin color in CbCr space

因此,可以将(Cb,Cr)中肤色聚类的分布,看作二维高斯概率分布,其概率分布函数为:

F(Cb,Cr)=C([Cb,Cr]-M)([Cb,Cr]-M)T

(7)

其中M为CbCr肤色均值,C为CbCr肤色方差.

而肤色在H分量上,集中在一个区域内,因此其概率函数如公式(8)所示,其中M′为H分量上的肤色均值.

K(H)=M′-1(H-M′)

(8)

可由公式(7)和公式(8)计算肤色概率,图3展示了测试图像的肤色概率图.其中 X轴和Y轴分别表示像素在X坐标和Y坐标上的位置,Z轴表示该像素属于手部的概率.

图3 手部概率分布图Fig.3 Hand probability distribution map

根据背景模型提取的前景,无法排除非手部的运动物体和手部运动造成的阴影.因此,再建立肤色模型提取肤色区域,便可以准确提取运动的手部.

通过建立背景模型提取前景和建立肤色模型提取肤色物体,我们得到了两个二进制图像,Bt和Ct.对得到这两个图像执行AND操作,可以获得一个新的二进制图像Rt,即具有肤色信息的前景手部区域.

Rt=Bt∩Ct

(9)

对此二进制图像进行形态学处理,完成手势的初始分割,初始分割结果如图4所示.

图4 手势初始分割结果Fig.4 Initial segmentation result of gesture

2.3 局部区域分割

若要对每一帧进行建模计算,则会增加移动端的计算负担,影响算法效率.同时,当手部移动缓慢时,易被误判定为背景.

在完成初步的手势分割之后,就可以定位手势的初始轮廓.为了避免冗余的计算和误判慢速移动的手部,本文通过手势初始轮廓预测其运动,确定局部区域,然后将检测范围缩小到局部区域.

根据得到的手势初始轮廓,选取一个最小的矩形窗口把该轮廓完全覆盖.该矩形窗口的中心点便可作为它的位置标记.若当前帧的位置标记和上一帧的位置标记差值d在很小的范围内,则可以判定手部位置基本没有改变,预测下一帧的手势位置也不会有较大变化,由此可由上述两个矩形窗口确定局部区域,如图5所示.以当前获取的位置标记作为局部区域的中心,选取最小的矩形窗口来包裹前一帧的窗口和当前帧的窗口.该矩形窗口就是局部区域.

确定局部区域后,将对局部区域外的图像继续进行背景更新,同时停止区域内的背景模型更新.若两帧的位置标记差值较大,无法确定局部区域,则仍对整个图像进行背景模型更新.由于停止了局部区域的背景更新,当手部位移不明显时,也不会被融入背景.

图5 局部区域确定Fig.5 Local region

3 实验结果及分析

3.1 实验数据与评价指标

为了验证本文手势分割方法的性能,选取了四组不同类型的测试数据集,分别为Dexter、FG-Net、SKIG三组公开数据集和自采集现实场景视频数据.Dexter数据集的背景为较复杂的静态背景,FG-Net的视频数据中手部颜色与背景近似,SKIG数据集的背景为动态背景,而现实场景数据,可以更好体现本文方法的实际应用价值.

在对目标检测算法进行评估时,往往使用以下指标对算法性能进行定量评价:精确率(Precision)和召回率(Recall)[15].其中精确率计算的是正确检测的样本占实际检测到的比率;召回率计算的是正确检测到的样本占应被检测到的比率.

3.2 实验对比

对四组实验数据进行对比实验,其提取效果如图6所示.

图6 检测结果对比Fig.6 Comparison of experimental results

图6(a)为视频原始图像,图6(b)为混合高斯模型的检测结果,图6(c)为本文改进方法的检测结果.

由图6可以看出,当物体在短时间静止后,手部轮廓中的一部分将会慢慢转化为背景,进而形成空洞,使手势目标轮廓不明确,这在第三组数据实验中表现得尤其明显.而改进方法结合了局部区域检测,当手势移动范围较小时,停止对局部区域背景模型的更新,防止手势转化为背景,分割得到的手势轮廓完整清晰.

本方法还可以有效排除非肤色运动物体的干扰,例如第二组实验中的影子,第三组和第四组实验中的衣袖.同时通过只保留最大连通图的方式,去除因脸部晃动对手势分割的影响,如图6中的第四组实验所示.

表1 基于评价指标的对比
Table 1 Algorithm comparison based on evaluation indicators

视频名称Recall(%)Precision(%)PrimaryImprovedPrimaryImprovedSKIG70.8095.9332.1298.69Dexter90.2894.7484.4293.51FG-Net28.7697.7878.0897.68Self64.1797.4390.8497.32

基于评价指标的对比实验结果如表1所示.由该表可以看出,改进方法在四组实验中均取得了较高的精确率和召回率,表明其手势分割结果精确,对后续手势识别的干扰度较低.表2列出了针对四组实验数据,两种方法的平均处理速度.

表2 平均处理速度对比
Table 2 Comparison on average processing speed

视频名称分辨率平均处理速度(fps)PrimaryImprovedSKIG800∗6001.9423.76Dexter320∗24015.74117.06FG-Net768∗5762.3625.79Self640∗4804.0336.21

实验数据分析说明本文方法能有效排除了非肤色运动物体的影响,对于复杂环境中的手势分割有很强的适应性,并且提高了效率,减少了移动端的计算负担.

4 结 论

针对移动端有限的计算量,以自适应学习速率优化背景模型的更新方式,以组合色彩空间构建肤色模型和以局部区域的方式加速分割,实现了对手势分割方法的改进.实验证明,改进后的方法对于复杂背景的适应性更强,可以更有效的进行手势分割.

猜你喜欢

高斯分布变化率手部
手部皮肤软组织缺损修复的皮瓣选择
尺动脉腕上皮支逆行岛状皮瓣修复手部皮肤软组织缺损
封闭负压吸引技术联合游离股前外侧穿支皮瓣修复手部大面积软组织缺损
青海省近60年气温变化特征分析
例谈中考题中的变化率问题
在航集装箱船舶摇摆姿态的概率模型
不同分布特性随机噪声的FPGA实现
改进的自适应高斯混合模型运动目标检测算法
改进RRT在汽车避障局部路径规划中的应用
护岸框架减速效果研究