APP下载

深度图像中的3D手势姿态估计方法综述

2021-05-24王丽萍邱飞岳章国道

小型微型计算机系统 2021年6期
关键词:手部手势姿态

王丽萍,汪 成,邱飞岳,2,章国道

1(浙江工业大学 计算机科学与技术学院,杭州310023)2(浙江工业大学 教育科学与技术学院,杭州 310023)

E-mail:690589058@qq.com

1 引 言

手势姿态估计是指从输入的图像或者视频中精确定位手部关节点位置,并根据关节点之间的位置关系去推断出相应的手势姿态.近年来,随着深度学习技术的发展,卷积神经网络(Convolution Neural Networks,CNN)[1]推动了计算机视觉领域的快速发展,作为计算机视觉领域的一个重要分支,手势姿态估计技术引起了研究者广泛关注.

随着深度学习技术的快速发展和图像采集硬件设备的提升,基于传统机器学习的手势姿态估计模型逐渐被基于深度学习的估计模型所取代,国内外众多研究机构相继开展了针对该领域的学习研究,有效推动了手势姿态估计技术的发展.手势姿态估计大赛“Hands 2017”[2]和“Hands2019”[3]吸引了国内外众多研究者们参与,综合分析该项赛事参与者提出的解决方案,虽然不同的方法在计算性能和手势姿态估计精度上各有差异,但所有参赛者都是使用深度学习技术来解决手势姿态估计问题,基于深度学习的手势姿态估计已经成为该领域主流发展趋势.

除此之外,潜在的市场需求也是促进手势姿态技术快速发展的原因之一.手势姿态估计可广泛应用于虚拟现实和增强现实中,手势作为虚拟现实技术中最重要的交互方式之一,可以为用户带来更好的沉浸式体验;手势姿态估计还可以应用于手势识别、机器人抓取、智能手机手势交互、智能穿戴等场景.由此可见,手势姿态估计技术将给人类的生活方式带来极大的改变,手势姿态估计技术已成为计算机视觉领域中重点研究课题,对手势姿态估计的进一步研究具有非常重要的意义.

手势姿态估计技术发展至今已取得大量研究成果,有关手势姿态估计的研究文献也相继由国内外研究者提出.Erol等人[4]第一次对手势姿态估计做了详细的综述,对2007年之前的手势姿态估计方法进行了分析比较,涉及到手势的建模、面临的问题挑战、各方法的优缺点,并且对未来的研究方向进行了展望,但该文献所比较的33种方法都是使用传统机器学习方法实现手势姿态估计,其中只有4种方法使用了深度图像来作为数据源,且没有讲述数据集、评价标准、深度图像、深度学习等现如今手势姿态估计主流研究话题;Supancic等人[5]以相同的评价指标对13种手势姿态估计方法进行了详细的对比,强调了数据集的重要性并创建了一个新的数据集;Emad[6]对2016年前基于深度图像的手势姿态估计方法做了综述,该文献也指出具有标记的数据集对基于深度学习的手势姿态估计的重要性;从2016年-2020年,手势姿态估计技术日新月异,基于深度学习的手势姿态估计方法相继被提出,Li等人[7]对手势姿态估计图像采集设备、方法模型、数据集的创建与标记以及评价指标进行综述,重点指出了不同的图像采集设备之间的差异对手势姿态估计结果的影响.除了以上4篇文献,文献[8-12]也对手势姿态估计的某一方面进行了总结概要,如文献[8]重点讲述了手势姿态估计数据集创建及标记方法,作者提出半自动标记方法,并创建出了新的手势姿态估计数据集;文献[9]提出了3项手势姿态估计挑战任务;文献[10]对2017年之前的数据集进行了评估对比,指出了以往数据集的不足之处,创建了数据量大、标记精度高、手势更为丰富的数据集“Bighand 2.2M”;文献[11]对2017手势姿态估计大赛排名前11的方法进行的综述比较,指出了2017年前高水准的手势姿态估计技术研究现状,并对未来手势姿态估计的发展做出了展望.

以上所提到的文献是迄今为止手势姿态估计领域较为全面的研究综述,但这些文献存在一些共同的不足:1)没有讲述手势姿态估计发展历程;2)对手势姿态估计方法分类不详细;3)对手势姿态估计种类说明不够明确;4)没有涉及最新提出的新方法,如基于点云数据和体素数据方法.针对以上存在的问题,本文在查阅了大量手势姿态估计相关文献基础上,对手势姿态估计方法与研究现状进行了分类、梳理和总结后得出此文,旨在提供一份更为全面、详细的手势姿态估计研究综述.

本文结构如下:

本文第2节介绍相关工作,包括手势姿态估计发展历程、手势姿态估计任务、手势建模、手势姿态估计分类和方法类型;第3节介绍手势姿态估计常用数据集、数据集标记方式和手势姿态估计方法评价指标;第4节对基于深度图像的手势姿态估计方法进行详细分类与总结;第5节总结本文内容并展望了手势姿态估计未来的发展趋势.

2 相关工作

2.1 手势姿态估计发展历程

手势姿态估计技术的发展经历了3个时期:基于辅助设备的手势姿态估计、基于传统机器学习的手势姿态估计和基于深度学习的手势姿态估计,如图1所示.

图1 手势姿态估计发展历程图Fig.1 Development history of hand pose estimation

1)基于辅助设备的手势姿态估计.该阶段也称为非视觉手势姿态估计时期,利用硬件传感器设备直接获取手部关节点位置信息.其中较为经典解决方案为Dewaele等人[13]提出的数据手套方法,使用者穿戴上装有传感器设备的数据手套,通过手套中的传感器直接获取手部关节点的坐标位置,然后根据关节点的空间位置,做出相应的手势姿态估计;Wang等人[14]使用颜色手套来进行手势姿态估计,使用者穿戴上特制颜色手套来捕获手部关节的运动信息,利用最近颜色相邻法找出颜色手套中每种颜色所在的位置,从而定位手部关节肢体坐标位置.基于辅助设备的手势姿态估计具有一定优点,如具有良好的鲁棒性和稳定性,且不会受到光照、背景、遮挡物等环境因素影响,但昂贵的设备价格、繁琐的操作步骤、频繁的维护校准过程、不自然的处理方式导致基于辅助设备的手势姿态估计技术在实际应用中并没有得到很好地发展[15].

2)基于传统机器学习的手势姿态估计[16-20].该阶段也称为基于计算机视觉的手势姿态估计时期,利用手部图像解决手势姿态估计问题.在深度学习技术出现之前,研究者主要使用传统机器学习进行手势姿态估计相关的工作,在这一阶段传统机器学习主要关注对图像的特征提取,包括颜色、纹理、方向、轮廓等.经典的特征提取算子有主成分分析(Principal Component Analysis,PCA)、局部二值模式(Local Binary Patterns,LBP)、线性判别分析(Linear Discriminant Analysis,LDA)、基于尺度不变的特征(Scale Invariant Feature Transform,SIFT)和方向梯度直方图(Histogram of Oriented Gradient,HOG)等.获得了稳定的手部特征后,再使用传统的机器学习算法进行分类和回归,常用的方法有决策树、随机森林和支持向量机等.

3)基于深度学习的手势姿态估计.随着深度学习技术的发展,卷积神经网络大大颠覆了传统的计算机视觉领域,基于深度学习的手势姿态估计方法应运而生.文献[21]以深度图像作为输入数据源,通过卷积神经网络预测输出手部关节点的三维坐标;文献[22]利用深度图的二维和三维特性,提出了一种简单有效的3D手势姿态估计,将姿态参数分解为关节点二维热图、三维热图和三维方向矢量场,通过卷积神经网络进行多任务的端到端训练,以像素局部投票机制进行3D手势姿态估计;文献[23]将体素化后的3D数据作为3DCNN网络的输入,预测输出生成的体素模型中每个体素网格是关节点的可能性;文献[24]首次提出使用点云数据来解决手势姿态估计问题,该方法首先利用深度相机参数将深度图像转化为点云数据,再将标准化的点云数据输入到点云特征提取神经网络[25,26]提取手部点云数据特征,进而回归出手部关节点位置坐标.将深度学习技术引入到手势姿态估计任务中,无论是在预测精度上,还是在处理速度上,基于深度学习手势姿态估计方法都比传统手势姿态估计方法具有明显的优势,基于深度神经网络的手势姿态估计已然成为了主流研究趋势.

2.2 手势建模

手势姿态估计的任务是从给定的手部图像中提取出一组预定义的手部关节点位置,目标关节点的选择一般是通过参考真实手部关节点而设定的.根据建模方式的不同,关节点的个数往往也不同,常见的手部模型关节点个数为14、16、21等.在手势姿态估计领域,手部模型关节点的个数并没有一个统一的标准,在大多数手势姿态估计相关的论文和手势姿态估计常用数据集中,往往采用21关节点的手部模型[4,27,28],如图2所示.

图2 21关节点手部模型图Fig.2 21 joints hand model

2.3 手势姿态估计分类

本小节我们将对目前基于深度学习的手势姿态估计种类进行说明.从不同的角度以不同的分类策略,可将手势姿态估计分为以下几种类型:

2.3.1 2D/3D手势姿态估计

根据输出关节点所处空间的维度,可将手势姿态估计分为2D手势姿态估计和3D手势姿态估计.

2D手势姿态估计指的是在2D图像平面上显示关节点位置,关节点的坐标空间为平面(x,y),如图3所示;3D手势姿态估计指的是在3D空间里显示关节点位置,关节点的坐标空间为(x,y,z),如图4所示.

图3 2D手势姿态估计图Fig.3 2D hand pose estimation图4 3D手势姿态估计图Fig.4 3D hand pose estimation

在手势姿态估计的领域中,相较于2D手势姿态估计,针对3D手势姿态估计的研究数量更多,造成这一现象的主要原因为2D手势姿态估计的应用范围小,基于2D手势姿态估计的实际应用价值不大[7],而3D手势姿态估计可以广泛应用于虚拟现实、增强现实、人机交互、机器人等领域,吸引了众多大型公司、研究机构和研究人员致力于3D手势姿态估计的研究[29,30].

由此可见,基于深度图像的3D手势姿态估计已经成为手势姿态估计领域主流研究趋势,本文也是围绕深度图像、深度学习、3D手势姿态估计这3个方面进行总结叙述.

2.3.2 RGB/Depth/RGB-D

根据输入数据类型的不同,可将手势姿态估计分为:基于RGB图像的手势姿态估计、基于深度图像的手势姿态估计、基于RGB-D(RGB图像+Depthmap)图像的手势姿态估计;其中,根据深度图像不同展现形式,将基于深度图像的手势姿态估计进一步划分为:基于简单2D深度图像、基于3D体素数据、基于3D点云数据,如图5所示.

图5 手势姿态估计方法分类图Fig.5 Classification of hand pose estimation methods

2.4 方法类型

文献[4]根据不同的建模途径和策略,将手势姿态估计方法划分为模型驱动方法(生成式方法)[31-34],和数据驱动方法(判别式方法).研究者结合了模型驱动和数据驱动两种方法的特点,提出混合式方法[35-41];在本小节我们将对这3种手势姿态估计方法类型进行简要概述.

2.4.1 模型驱动

模型驱动方法需要大量的手势模型作为手势姿态估计的基础.该方法实现的过程为:首先,创建大量符合运动学原理即合理的手势模型,根据输入的深度图像,选择一个最匹配当前深度图像的手势模型,提出一个度量模板模型与输入模型的差异的代价函数,通过最小化代价函数,找到最接近的手势模型.

2.4.2 数据驱动

数据驱动方法需要大量的手势图像数据作为手势姿态估计的基础.数据驱动方法所使用的图像数据可以是RGB图像、深度图像或者是RGB-D图像中的任意一种或者多种类型图像相结合.以深度图像为例,基于数据驱动的手势姿态估计方法可以通过投喂特定标记的手势数据来训练,建立从观察值到有标记手势离散集之间的直接映射.在这个过程中,根据手势关节点结果值计算方式的不同,可以将基于数据驱动的手势姿态估计方法进一步分为基于检测和基于回归的方法.

2.4.3 混合驱动

模型驱动和数据驱动各有优势,模型驱动是基于固定手势模型,手势姿态识别率高;数据驱动基于神经网络,不需要固定手势模型,且对不确定手势和遮挡手势的鲁棒性高.研究者们结合了两种方法的特点,提出混合式方法解决手势姿态估计问题.常见的混合式手势姿态估计方式有两种:1)先使用模型驱动预估一个手势结果,若预估失败或者预估的结果与手势模型相差较大,则使用数据驱动进行手势姿态估计,在这种方法中,数据驱动只是作为一种备选方案当且仅在模型驱动失败的情况下使用;2)先使用数据驱动预测出一个初始的手势姿势结果,再使用模型驱动对预测的初始手势结果进行优化.

3 数据集和评价指标

数据集对有监督深度学习任务十分重要,对手势姿态估计而言,规模大、标记精度高、适用性强的手势姿态数据集不仅能提供准确的性能测试和方法评估,还能推进手势姿态估计研究领域的发展.目前常见3D手势姿态估计数据集有:BigHand2.2M[10],NYU[42],Dexter 1[43],MSRA14[44],ICVL[45],MSRA15[46],HandNet[47],MSRC[48],等,其中ICVL、NYU和MSRA15是使用最为广泛的手势姿态估计数据集,常用手势姿态估计数据集相关信息如表1所示.

表1 手势姿态估计数据集Table 1 Hand pose estimation datasets

3.1 数据集标记方法

Yuan等人[10]指出创建大规模精准数据集的关键因素是快速、准确的标记方式.常用手势姿态数据集标记方式有四种:手动标记、半自动标记、自动标记和合成数据标记.手动标记方法因其耗时耗力且存在标记错误情况,导致使用人工手动标记的手势数据集规模小,不适合用于基于大规模数据驱动的手势姿态估计方法;半自动标记方法有两种形式,一种是先使用人工手动标记2D关节信息,再使用算法自动推断3D关节信息;另一种是先使用算法自动推断出3D关节信息,再使用人工手动对标记的3D关节信息进行修正,与全手动标记方法相比,半自动标记方法具有高效性,适用于创建数据规模大的数据集.

合成数据标记方法指的是使用图形图像应用程序,先基于先验手势模型生成仿真手势图像数据,同时自动标记3D关节信息;与手动标记和半自动标记方法相比,合成数据标记方法无需手工介入,有效提高了数据标记效率,适合于大规模数据集的创建;但不足的是,合成的仿真数据无法全面有效地反映真实手势姿态,合成手势数据集中存在手势扭曲、反关节、关节丢失等不符合运动学规律的手势情形,导致丢失真实手势特征.自动标记方法指的在采集手部图像时,使用外部传感器设备对手势关节进行标记.文献[49]的ASTAR数据集使用带有传感器数据手套对手部关节进行标记;BigHand2.2M数据集采用具有6D磁传感器的图像采集标记系统进行自动标记.

3.2 评价指标

3D手势姿态估计方法的评价指标主要包括:

1)平均误差:在测试集图像中,所有预测关节点的平均误差距离;以21个手势关节点模型为例,会生成21个单关节点平均误差评测值,对21个单关节点平均误差求均值,得到整个测试集的平均误差.

2)良好帧占比率:在一个测试图像帧中,若最差关节点的误差值在设定的阈值范围内,则认为该测试帧为良好帧,测试集中所有的良好帧之和占测试集总帧数的比例,称为良好帧占比率.

其中,第1个评价指标反映的是单个关节点预测精准度,平均误差越小,则说明关节定位精准度越高;第2个评价指标反映的是整个测试集测试结果的好坏,在一定的阈值范围内,单个关节的错误定位将造成其他关节点定位无效,该评价指标可以更加严格反映手势姿态估计方法的好坏.

4 基于深度图像手势姿态估计方法

深度图像具有良好的空间纹理信息,其深度值仅与手部表面到相机的实际距离相关,对手部阴影、光照、遮挡等影响因素具有较高的鲁棒性.基于深度学习和深度图像的手势姿态估计方法属于数据驱动,通过训练大量的数据来学习一个能表示从输入的深度图像到手部关节点坐标位置的映射关系,并依据映射关系预测出每个关节点的概率热图或者直接回归出手部关节点的二维或者三维坐标.

在本节中,将深度图像在不同数据形式下的3D手势姿态估计方法分为:

1)直接将深度图像作为简单2D图像,使用2D CNNs进行3D手势姿态估计.

2)将深度图像转换成3D体素数据,使用3D CNNs进行3D手势姿态估计.

3)将深度图像转换成3D点云数据,使用点云特征提取网络提取手部点云数据特征,从而实现手部关节点定位.

4.1 基于简单2D深度图像

早期C.Xu等人[50]提出使用随机森林传统机器学习方法直接从手部深度图像中回归出手势关节角度,随着深度学习技术的提出,卷积神经网络在计算机视觉任务中取得了巨大成就,与传统机器学习方法相比具有较大的优势.

表2详细列举了基于简单2D深度图像手势姿态估计代表性算法相关信息.其中,受文献[51]启发,Tompson[42]首次提出将卷积神经网络应用于手势姿态估计任务中,他们使用卷积神经网络生成能代表深度图像中手部关节二维概率分布的热图,先从每幅热图中分别定位出每个关节点的2D平面位置,再使用基于模型的逆运动学原理从预估的2D平面关节和其对应的深度值估计出关节点三维空间位置.由于手势复杂多样和手指之间具有高相似性,导致了从热图中预估出的2D关节点与真实关节点位置之间可能存在偏差,且当手部存在遮挡时,深度值并不能很好地表示关节点在三维空间中的深度信息.针对文献[42]中所存在的问题,Ge等人[52]提出将手部深度图像投影到多个视图上,并从多个视图的热图中恢复出手部关节点的三维空间位置,他们使用多视图CNNs同时为手部深度图像前视图、侧视图和俯视图生成热图,从而更精准地定位手关节的三维空间位置.

表2 基于简单2D深度图手势姿态估计代表性算法对比Table 2 Comparison of representative algorithms for hand pose estimation based on 2D depth map

Oberweger等人[21]使用卷积神经网络直接输出手部关节点三维空间位置,他们认为网络结构对3D手势姿态估结果很重要,使用了4种不同CNN架构同时预测所有的关节点位置,通过实验对比得出多尺寸方法对手部关节点位置回归效果更好,同时他们在网络中加入3D手势姿态先验信息预测手部关节点位置,并使用了基于CNN架构的关节点优化网络对每一个预测的关键点进行更加精准的位置输出;除此之外,为了进一步提升3D手势姿态估计的准确性,他们在文献[21]基础上提出使用迭代优化的方法多次修正手部关节点位置,对DeepPrior[53]进行改进,提出DeepPrior++[54]方法,通过平移、旋转、缩放等方法增强手势姿态估计训练集数据,以获得更多的可利用信息,并在手势特征提取网络中加入了残差模块以进一步提升了3D手势姿态估计精度.

Guo等人[55]提出基于区域集成的卷积神经网络架构REN,REN将卷积层的特征图分成多个局部空间块,并在全连接层将局部特征整合在一起,与之前基于2D热图、逆运动学约束和反馈回路的手势姿态估计方法相比,REN基于单一网络的方法直接检测出手部关节的三维位置,极大提高了手势姿态估计的性能.然而,REN使用统一的网格来提取局部特征区域,对所有特征都进行同等的处理,这并不能充分获得特征图的空间信息和具有高度代表性的手势特性.针对该问题,Chen等人[56]提出Pose-REN网络进一步提高手势姿态估计性能,他们基于REN网络预测的手势姿态,将预测的初始手部姿态和卷积神经网络特征图结合,以提取更优、更具代表性的手部姿态估计特征,然后根据手部关节拓扑结构,利用树状的全连接对提取的特征区域进行层次集成,Pose-REN网络直接回归手势姿态的精准估计,并使用迭代级联方法得到最终的手势姿态.

Wan等人[22]提出一种密集的逐像素估计的方法,该方法使用了沙漏网络Hourglass Network[57]生成关节点2D热图和3D热图以及三维单位矢量场,并由此推断出三维手部关节的位置;他们在文献[58]提出自监督方法,从深度图像中估计3D手势姿态,与以往基于数据驱动的手势姿态估计方法不同的是,他们使用41个球体近似表示手部表面,使用自动标记的合成手势数据训练神经网络模型,用无标记的真实手势数据对模型进行了微调,并在网络中采用多视图监督方法以减轻手部自遮挡对手势姿态估计精度的影响.

4.2 基于3D体素数据

2D CNN提取的深度图像特征由于缺乏3D空间信息,不适合直接进行3D手势姿态估计.将深度图像的3D体素表示作为3D CNN的输入,从输入的3D体素数据中提取关节点特征,可以更好地捕获手的3D空间结构并准确地回归手部关节点3D手势姿态[60].基于3D体素数据手势姿态估计流程如图6所示.

图6 基于体素数据手势姿态估计流程图Fig.6 Workflow of hand pose estimation based on voxel data

表3详细列举了基于3D体素数据手势姿态估计代表性算法相关信息,其中,Ge 等人在文献[61]中首次提出使用3D CNNs解决3D手势姿态估计问题,他们先使用D-TSDF[62]将局部手部图像转换成3D体素数据表现形式,设计了一个具有3个三维卷积层、3个三维全连接层的3D卷积神经网络架构,用于提取手部体素数据三维特征,并基于提取的三维特征回归出最终手部关节点三维空间位置;在文献[52]基础上,Ge等人[63]提出利用完整手部表面作为从深度图像中计算手势姿态的中间监督,进一步提升了3D手势姿态估计精度.

Moon等人[23]指出直接使用深度图像作为2D CNN的输入进行3D手势姿态估计存在两个严重缺点:缺点1是2D深度图像存在透视失真的情况,缺点2是深度图和3D坐标之间的高度非线性映射,这种高度非线性映射会直接影响到手部关节点位置的精准回归.为解决这些问题,他们提出将从深度图像中进行3D手势姿态估计的问题,转化为体素到体素的预测,首先将手部深度图像转化为3D体素形式,然后将体素网格作为V2V-PoseNet特征提取网络的输入,并计算每个体素网格是手部关节的概率,实现了精准的3D手势姿态估计.

表3 基于3D体素数据手势姿态估计代表性算法对比Table 3 Comparison of representative algorithms for hand pose estimation based on 3D voxel data

4.3 基于3D点云数据

点云数据表示的是分布于目标表面的一系列三维坐标点,与深度图像相比,点云数据可以更好地表示出真实手势姿态;由于点云数据具有无序性和稀疏性,无法直接作为神经网络的输入,因此,在PointNet[25,26]提出之前,研究者通常将采集到的点云数据转换成特定视角下的深度图像,或者是转换成体素数据的形式,以便于更好地定义权重共享的卷积操作[64,65],基于3D点云数据手势姿态估计流程如图7所示.

图7 基于点云数据手势姿态估计流程图Fig.7 Workflow of hand pose estimation based on point cloud

表4详细列举了基于3D点云数据手势姿态估计代表性算法相关信息,其中,Ge等人[24]首次提出使用PointNet解决3D手势姿态估计问题,使用基于PointNet网络架构,实现了从3D点云直接预测手势关节点位置.他们首先从深度图像中分割出手,将局部手势深度图像转换成一组3D点云,最后将经过下采样和归一化的3D点云数据输入到PointNet网络结构中,进行点云特征提取从而实现3D手势姿态估计;受文献[22]启发,他们在PointNet基础上提出使用两层堆叠分层式PointNet网络体系结构[66]作为特征提取层,输出手部3D点云数据上的热图和单位矢量场,热图表示3D点到目标关节点的接近度,矢量场则表示3D点到目标关节点的方向,从网络输出的热图和单位矢量场中推断出手部关节点的逐点偏移,用于对3D手部关节点位置进行投票,从而提高了3D手势姿态估计精度.

Li等人[67]指出基于3D体素形式的手势姿态估计方法需要使用大量的存储空间用于表示输入数据和输出数据,且空间效率低下;基于3D点云PointNet结构的手势姿态估计方法需要繁琐的预处理步骤,如点云表面归一化处理和K最邻近下采样.为了解决这些问题,他们提出使用PEL[68,69]置换等值层作为基本元素,结合残差网络[70]构造用于3D手势姿态估计任务的深度网络模型.网络以1024个手部点云数据作为输入,结合全局最大值逐点提取特征,此外,他们还提出使用点对点投票机制计算手势姿态,从而消除了使用最大池化层提取全局特征的可能性,避免了信息的丢失.

表4 基于3D点云数据手势姿态估计代表性算法对比Table 4 Comparison of representative algorithms for hand pose estimation based on point cloud

Chen等人[71]指出无论是基于普通深度图像2D CNNs方法,还是基于3D体素数据3D CNNS方法,亦或是基于3D点云特征提取方法,都需要使用大规模训练集才能保证手势姿态估计结果的准确性,然而对大规模手势姿态数据集进行标记是一个既费时又费力的过程,且人工标记过程中无法避免误差情况的出现,半自动标记方法也无法确保从手工标记2D关节推断出3D关节位置的精确度,合成标记手势数据不是真实手势数据,无法确保手势姿态的准确性.为了解决这些问题,在文献[72]启发下,他们提出在训练阶段采用半监督方式的点云自动编码器机制直接从3D点云中回归出3D手势姿态.利用手势特征编码器(HFE)从手势点云中提取多级特征,然后通过手势估计器(HPE)将特征融合从而回归出3D手势姿态;此外,他们设计了一个手型特征解码器(HFD),用于从编码后的特征中恢复输入点云,由于HFE和HFD可以在没有3D手势标记的情况下进行训练,因此他们提出的方法可以在训练阶段充分利用未标记数据集进行训练,获取更多手势特征,从而有效解决了手势姿态数据集标记问题.

Dou等人[73]认为PointNet系列手势姿态估计方法关键因素是如何获得有效的点云采样点,他们改善点云采样策略,提出使用3D坐标和归一化点云的表面法线作为网络的输入回归出粗略关节点位置,并将这些回归出的手部关节作为采样点使用级联PointNet进一步细化手部关节点位置.

文献[74,75]提出一种新的点云数据处理KPConv核点卷积模型,KPConv卷积核权重取决于核点决定的欧式空间,这使得KPConv比固定网格卷积更具灵活性,能够更有效分割局部手势点云区域;同时,KPConv核点卷积对于点云密度的变化鲁棒性更强,能够避免PointNet中由于不同区域点云密度差异造成的特征丢失,因此,KPConv核点卷积点云处理模型可有效应用于手势姿态估计任务中,是基于点云数据手势姿态估计下一个值得研究方向.

5 总结与展望

3D手势姿态估计是计算机视觉领域的一个重要分支,可以应用在多个方面,如人机交互、虚拟现实、增强现实、手语理解、智能机器人等,与人们的生活息息相关.从基于传感器辅助到传统机器学习方法,再到现如今广泛使用的深度学习方法,3D手势姿态估计技术取得了极大发展.本文在已有分类基础上,对数据驱动方法中基于深度图像的3D手势姿态估计经典的方法进行了较为细致的分类、梳理与总结.根据数据类型的不同,将基于深度学习的手势姿态估计方法分为基于普通2D深度图像方法和基于3D数据手势姿态估计方法;其中根据3D数据的不同展现形式,进一步将基于3D数据的手势姿态估计方法分为基于3D体素数据手势姿态估计和基于3D点云数据手势姿态估计,对每类方法的代表性算法进行了研究、分析,并概括总结了每类方法的特点.

在现有研究成果的基础上,我们总结手势姿态估计的重点问题和发展趋势,认为未来手势姿态估计应着重面向准确性、可移植性和实用性方面展开研究:

1)准确性

手势姿态估计准确性的影响因素主要有两个,一个是训练集质量,另一个是所使用的方法.现阶段主流方法都是基于深度学习,不同的神经网络模型都存在各自的优势与不足,这些方法模型都是基于大量图像数据在神经网络中训练而来,训练集质量的好坏会直接影响手势姿态估计准确性,而现有的数据集中,手势图像往往存在分辨率低、手部遮挡、视角不一致、手势复杂和标记错误等现象,限制了手势姿态估计准确性进一步提高.因此,如何获得高质量、高精度标记的手势训练集是未来的一个重要研究方向.

2)可移植性

一方面,在现有的基于深度学习手势姿态估计方法中,绝大部分都依赖高性能计算机硬件设备来维持其高效性,这导致手势姿态估计技术无法很好地移植到移动设备如手机中,阻碍了手势姿态估计技术的进一步发展;另一方面,现有的手势姿态估计方法都是基于特定的图像采集设备,且所使用的方法模型参数与深度相机硬件参数有关,这导致一种手势姿态估计方法只能适用于特定参数的深度相机,无法很好地移植到其他类型的深度相机中,如何有效移植也是未来手势姿态估计亟需解决的问题.

3)实用性

目前,大部分手势姿态估计方法为了精准分割局部手势图像,均在理想条件下只对单手进行姿态估计,默认手部图像背景单一且无遮挡等因素影响.而在现实生活中环境复杂多变且双手协同操作的情形居多,如双手交互和手物交互,这导致在复杂环境中对存在双手交互或者手物交互的人手分割难度加大;此外,由于深度相机图像采集距离限制,无法很好地应用于室外远距离手势姿态估计,单目RGB相机在户外能很好地捕捉手部图像,但由于RGB图像缺少深度信息无法很好地进行高效、准确的3D手势姿态估计.因此,在复杂环境下实现双手交互或者手物交互,是3D手势姿态估计未来发展的趋势.

猜你喜欢

手部手势姿态
高通联手Ultraleap 为XR2提供手部交互解决方案
挑战!神秘手势
厨房料理小妙招——山药去皮手不痒的窍门
胜利的手势
另一种姿态
以文青的姿态回归主流——对《后悔无期》的两重解读
认手势说数字
阅读是最美的姿态