基于深度学习多特征融合的手势分割识别算法
2022-05-18张晓俊李长勇
张晓俊,李长勇
(新疆大学 机械工程学院,新疆 乌鲁木齐 830047)
随着科技水平的提高,机器视觉的手势识别已成为自然交互的一个重点研究方向,并且在意图感知、辅助驾驶、辅助教学、医学、人机交互、电子游戏等领域应用广泛[1-3]。手势检测主要分为手势分割和识别2个部分,手势分割的精度影响手势识别的准确度。目前手势识别研究中常用的手势分割方法是利用YCbCr模型[4-5]和高斯模型[6-7]等进行手势的分割和检测,但是YCbCr模型在实际应用中容易受背景类肤色的物体影响,高斯模型也容易受环境变化和个体差异的影响。在深度学习方法方面,睢丙东等[8]改进YOLOv3网络,提升了手势检测精度,5种手势的平均识别精度为90.38%。谢铮桂[9]和蔡娟等[10]将采集到的多种手势图像数据集预处理后送入卷积神经网络中训练,实验结果显示识别精度均为96%。Flores等[11]对手势图像进行预处理后运用卷积神经网络训练,简化训练模型,手势识别精度高达96%。上述方法虽然在手势识别领域的研究中取得一定成果,可以识别出简单的手势,但实际环境中手势分割容易受到背景中类肤色物体或个体差异的影响,且没有考虑手势识别的实用性。在实际交互过程中每种手势有不同的姿态角度,但上述方法均未考虑手势不同姿态,导致识别精度较低,具有一定的局限性。
针对上述问题,本文中提出基于深度学习多特征融合的手势分割识别算法(简称本文算法),针对个体差异、手势大小、手势角度、背景类肤色物体等的影响导致对手势分割纯度低的问题,提出一种融合肤色聚类特征自适应方法,对手势进行分割;采用最新的YOLOv4网络模型对其处理后的多种手势特征图像进行特征提取和训练,实验验证其识别效率和鲁棒性。
1 手势图像分割
在人机自然交互过程中,背景对手势识别的影响较大,在手势图像背景中存在类肤色物体或手势角度的不同都会对手势识别精度有一定影响。手势图像采集包含肤色背景手势图像、相同手势不同姿态角度的图像以及简单不包含肤色背景的手势图像。本文中主要研究含有肤色背景和不同角度的手势识别,如图1所示。
1.1 HSV颜色空间和椭圆肤色分割方法
HSV颜色空间在目标检测方面运用广泛,可以弥补复杂环境下对物体特征的识别度[12-13]。虽然HSV颜色空间[12]中色调分量的肤色聚类特性较好,在复杂的环境下可以对肤色的提取提供更可靠的信息,YCbCr颜色空间[14]中蓝色色度Cb、红色色度Cr分量也在肤色方面具有较完整的聚类效果;但是,在单一的HSV颜色空间或YCbCr颜色空间对肤色进行分割时容易受到背景肤色物体、亮度、手势角度变化等因素的影响,因此本文中提出一种融合肤色模型结合最大类间方差的自适应提取方法,弥补手势分割时由背景肤色物体和手势角度变化导致手势提取纯度较低的不足。
运用HSV颜色空间和椭圆肤色模型在不同肤色背景、不同角度手势图像中提取手势,结果如图2所示。
由实验结果可以看出,在对手势不同角度分割过程中手势会有部分缺失,背景中的肤色物体会同时被提取出来。在HSV颜色空间分割的结果中,图2(a)背景右上方较多的肤色物体被提取出来,但手部指尖部分有一定的缺失,图2(b)中的手势分割较为完整,但存在大量的肤色背景。运用椭圆肤色模型分割的结果,图2(c)中手势较为完整,然而背景的肤色没有完全过滤,并且手势角度的变化导致手势部位的一些区域被作为背景,图2(d)中手势部分缺失较多。
1.2 融合肤色的手势分割方法
HSV颜色空间和椭圆肤色模型基本可以分割出手势区域,但是背景中存在肤色物体和手势角度变化时都会影响手势的分割。HSV颜色空间对手势进行分割时主要是依据色度分量单一通道进行前景与背景的分割,信息较为单一,导致提取手势过程受环境因素影响严重。为了更完整地分割手势,克服背景肤色和手势角度变换对手势特征提取的影响,本文中基于HSV颜色空间和椭圆肤色模型,对模型进行融合变换,利用更多的手势肤色信息结合最大类间方差法,形成一种融合肤色的手势分割方法,有效去除背景肤色,解决手势角度变化导致手势提取不完整的问题,以便更准确地分割手势。图3所示为融合肤色的手势分割模型示意图。
图3 融合肤色的手势分割模型示意图
根据数据统计,HSV、YCbCr颜色空间在色调、蓝色色度和红色色度3个分量上的肤色聚类较好。摄像头采集到的手势图像为RGB图像,然后从RGB图像中获取上述肤色聚类较好的3个分量的信息。从RGB图像中获取色调的数值,即
V=max{R,G,B},
(1)
式中V为RGB颜色空间中R、G、B分量中较大的一个分量。
根据以下判断,获取色度H分量的值:
如果
V=max{R,G,B},
(2)
那么H=0;
如果
R=max{R,G,B},
(3)
那么
(4)
如果
G=max{R,G,B},
(5)
那么
(6)
如果
B=max{R,G,B},
(7)
那么
(8)
计算YCbCr颜色空间中的蓝色色度Cb分量和红色色度Cr分量的数值。为了方便后续计算,引入中间变量Q,即
Q=B-(0.229R+0.587G+0.114B),
(9)
将Q的数值代入公式,分别得到Cb分量和Cr分量,即
Cb=0.564Q+128,
(10)
Cr=0.713Q+128。
(11)
得到色调H、蓝色色度Cb和红色色度Cr分量后,根据3个分量信息遍历图像所有像素点,判断其与肤色范围,结合最大类间方差法,得到最优分割阈值,输出手势图像。
计算图像的平均灰度
u=a0x0+a1x1,
(12)
式中:a0为前景像素点数所占比例;x0为前景像素点平均值;a1为背景像素点数所占比例;x1为背景像素点平均值。
遍历灰度级需要用方差T来判断前景和背景最优的阈值,即
T=a0a1(x0-x1)2。
(13)
综合上述多分量信息融合的方法进行肤色分割,结果如图4所示。由图可以看出,融合肤色的手势分割方法可以较好地过滤掉肤色背景,同时在手势角度变化时也可以较好地保留手势部分,能够保留完整的手势信息。
综上所述,融合肤色的手势分割方法可以在肤色背景下和手势角度变化时有效地分割出手势,优于单一的椭圆肤色模型和HSV颜色空间。
1.3 融合肤色的手势分割识别流程
由于单一的手势分割模型不能很好地克服肤色背景的影响,在手势特征提取过程中还会受到手势角度变化的影响,因此本文中运用融合肤色的手势分割方法提取手势图像中的手势特征,减小背景肤色和手势角度变化对特征提取的影响,提高手势提取的纯度,引入神经网络中进行训练,可以进一步提升手势识别精度。手势分割识别流程如图5所示。
图5 手势分割识别流程图
2 基于深度学习的手势识别
Redmon等[15]提出一种基于回归方法的YOLO识别算法,此后,经过改进的新的YOLOv4算法[16-17]依靠更深层次的卷积神经网络进行特征提取,全连接层进行分类和预测,检测精度显著提升。该算法采用空间金字塔池化(SPP)模块以及路径聚合网络PANet来增加训练中的感受区。为了使分类检测结果更加精确,采用学习率余弦退火衰减等方法优化网络[16-17]。深度学习YOLOv4算法网络结构如图6所示。
图6 深度学习YOLOv4算法网络结构图
为了避免在数据集训练过程中梯度弥散,其YOLOv4网络中的Darknet-53网络结构将神经网络分为多个连续的节,每个节的网络通过残差方式训练,使整体损失率达到最小。在手势识别过程中,通过融合肤色的分割方法将特征图像提取出来,输入神经网络中进行训练,以减少原图训练的复杂程度,提高训练效率。Darknet-53网络提取手势特征图像,在手势特征细粒度的表征能力方面优于一般的方向梯度直方图(HOG)、几何等特征提取方法。YOLOv4网络的预测层分为3个尺度(52×52、26×26和13×13)对手势进行预测,3个尺度的综合预测增强了手势检测精度,同时网络中的融合输入(Concat)层连接提升了收敛性。
3 实验结果与分析
验证实验中电脑配置如下:Intel i5-8500处理器,主频为 3.0 GHz,运行内存为12 GB,GTX1080Ti显卡。软件在Windows 10环境下运行。
为了验证手势识别方法可靠性,在有肤色的复杂背景下采集多种手势图像,且对每种手势的不同角度进行采集,建立手势数据集,其中采集的自定义手势有10种,共有3 000个手势图像样本。
由于手势特征提取过程受环境和角度的影响较为严重,因此运用融合肤色的方法进行手势图像特征提取,可以有效避免手势图像中背景肤色物体影响,且能保证手势轮廓提取的光滑度,从而提高手势特征图的纯度,减少因背景肤色及手势角度变化引起的手势识别不准确的问题。此外,将处理得到的手势特征图输入深度学习网络中进行训练,既可以提高训练效率,又可以减小原始图像数据集的训练规模。
采用融合肤色方法处理后的手势特征图像直接进行训练,并且运用数据增强的方法将数据集图像样本个数增加到6 000,训练次数为10 000。训练过程中迭代次数与损失函数关系如图7所示。由图可以看出,训练次数在8 000以后损失率基本达到收敛,通过对手势识别模型的验证,手势识别精度达到99%,平均识别精度为98.8%。
图7 手势模型损失率曲线
为了进一步验证本文算法的性能,分别采用单目标多盒检测(single shot multibox dectort,SSD)模型[18]、YOLOv3算法[19]进行手势识别对比,结果如表1所示。从表中可知,不同算法对手势识别的效果差异较大,基于深度学习SSD模型的平均识别率为82.6%,且在识别的时效性表现方面较差。YOLOv3算法的识别精度较高,但是手势特征提取不够充分,在识别速度和精度上都与本文算法存在一定差距。本文算法通过对手势图像进行预处理得到手势特征图像作为网络的输入样本,不仅提高了特征图像提取的纯度,而且减少了手势周围噪声的影响,减小了训练规模,缩短了训练时间,利用更深层次的深度学习网络对手势特征提取更加充分和精确。此外,本文算法充分考虑手势在实际识别过程中的不同角度问题,使提取的手势信息更加细化,具有更高的鲁棒性。
表1 不同手势识别算法的比较
4 结语
手势的多样性、相同手势的不同角度以及手势的背景信息等都会影响手势识别的精度。利用融合肤色的手势识别方法对手势进行检测,实验结果验证了该方法在肤色背景复杂情况下对不同角度的手势能够有效分割出手势部分,进一步提高了手势特征图的纯度,减小了噪声对手势特征提取的影响,从而减小训练规模,加快训练速度。该方法结合深层次的深度学习网络算法提取手势特征,增强手势细节特征提取的精度,提高了手势识别的准确度,平均识别精度达到98.8%,具有较强的鲁棒性。