优胜从选择开始,我们是您最好的选择!—— 中州期刊联盟(新乡市博翰文化传媒有限公司)
0373-5939925
2851259250@qq.com
我要检测 我要投稿 合法期刊查询
您的位置:网站首页 > 优秀论文 > 其他论文 > 正文

基于级联特征和图卷积的三维手部姿态估计算法

作者:林依林 林珊玲 林志贤来源:《液晶与显示》日期:2022-08-10人气:984

姿态估计是计算机视觉中的热门研究领域,是对人体姿态的位置估计。姿态估计一般可以分为单人姿态估计(如Open Pose1)、多人姿态估计(如AlphaPose2)、人体姿态跟踪、三维人体姿态估计。在姿态估计的研究中,基于手部的姿态估计研究备受青睐。在人所有的姿态中,手势占据了90%,是最主要的人机交互姿态。未来的生活场景朝着越来越智能化的方向发展,智能家居、自动驾驶、智慧医疗及第一视角沉浸式交互等应用场景,都离不开手势交互的身影。

近年来,随着深度学习的发展,针对手部的三维姿态估计研究突飞猛进。Cai等人3提出了一种弱监督网络,使用深度正则化器,将从彩色图像估计的三维手势转换成深度图,将三维坐标估计损失转化为深度图损失,有效地解决了三维关键点标记获取困难这一问题。Ge等人4将手部表面网格估计加入到网络中,将彩色图像估计的二维手部的热度图通过图形卷积网络估计手表面网格,再通过手表面网格回归三维手势。该方法识别精度较高,但是手表面网格真实标记缺乏,制作合成数据也较为困难,数据获取代价较大。对于RGB图像的三维手部姿态估计任务,手部独有的严重的自遮挡性和自相似性以及复杂的背景处理,在缺少深度信息的任务里并不容易。无约束的自然场景往往包含复杂的背景和多变的光照条件,要准确地从第一视角RGB 图像中检测出指尖的位置依然是一个具有挑战性的问题。本文在Minimal-Hand5的基础上结合图卷积神经网络6来解决这种天然的遮挡问题,通过级联的卷积网络从粗到细优化关键点位置从而解决不自然的骨架估计。

2 网络结构

2.1 整体网络框架

在姿态估计中,常见的手部模型有21关键点、16关键点、36关键点。本文采用Open Pose1提出的标准手部21关键点模型。其中编号为0的关键点是手腕,其余每根手指分别有4个关键点:指关节、近端指关节、远端指关节、指尖。本文所有对二维和三维的关键点估计都是建立在该手部模型之上。

用深度学习的方法进行手部姿态估计,一般是分阶段进行的。本文提出的网络框架按照处理目的分为4个部分:手部的识别、手部二维关键点的检测、手部三维关键点的检测、 手部三维关键点的精细化调整。

手部的识别采用轻量级网络回归手部边框(Bounding Box)作为后续主体网络的预处理操作,使得后续关键点的定位更加准确,同时处理后图片像素的减少也使得后续计算量减小。手部二维和三维关键点的检测通过搭建卷积神经网络提取图像特征,依据区域或者特征的重要程度对权重进行调配,引导级联特征提取模块获取更加丰富的基础提取特征,监督网络主动输出越来越精确的热度置信图。手部三维关键点的精细化调整是将三维关键点粗结果基于图卷积神经网络算法进行优化后处理,拟合出更加精确的手部三维关键点坐标。

2.2 基于YOLOv3的手部识别预处理网络

常见的手部预处理方法分为基于数字图像处理方法和基于深度学习方法两大类。前者一般采取分割算法得到手部掩模定位手部区域,例如将RGB图像转化为灰度图像再转换成二值图像并选取二值图像的前景部分作为手势提取区域7

本文采取基于深度学习方法的手部预处理网络,如图1所示。在进入主体网络流程前,先采用基于YOLOv38的预处理网络用于将输入图片中的手部和混杂的背景剥离。YOLIOv3相比其他深度学习检测网络的优势在于引入Darknet-53作为骨干网络,采用K-means聚类法5回归出9种大小不同的先验框,并且根据金字塔特征图思想,小尺寸的先验框用于耦合大尺寸的特征图,大尺寸的先验框用于耦合小尺寸的特征图,可以很好地整合不同尺度的感受野的特征,识别输入图片中不同占比的手部。我们将自然场景下的图片输入预处理网络,通过调整Darknet-53网络内卷积核大小可以控制输出的特征图大小,因此对任意尺寸的输入数据经过这个预处理网络都可以输出固定2562563尺寸的、剥离背景单独手部的手部边框图片传输给接下来的网络。

图1  网络流程图

Fig.1  Network flow chart


2.3 基于级联特征提取的手部关键点检测网络

图1所示,二维特征提取模块使用经典的ResNet509网络,输入2562563的RGB图像输出3232256的二维特征图。相比于直接回归关节点坐标,基于热度图的方法具有渐变连续可微分的特点,可以提高坐标估计的精细程度10,因此我们在二维和三维检测模块融合多特征热度图。

二维检测模块是一个两层的全连接卷积层。输入3232256的二维特征图,输出二维热度图(Heat Maps)。二维热度图包含21个手部关键点的关节预测置信图,通过二维高斯函数编码每个像素点被每个关键点覆盖的置信度,其公式如式(1)所示:



(1)

其中l代表第l个关键点,σ为函数的宽度参数,(xy)代表该点像素坐标,(uv)是中心点坐标,即该关键点二维真值(Ground truth)坐标。

三维检测模块从多热度图和特征图回归三维手部姿态。如图1所示,将二维特征图和二维热度图(2D Heat Maps)进行层级串联,得到二维联合特征图,对二维联合特征图进行卷积操作,得到三维偏移热度图(3D Delta Maps)。三维偏移热度图是子节点相对于根节点的三维方向向量,可以很好地反应父子节点之间的位置关系,将三维偏移热度图作为中间热度图为三维检测模块预测结果添加运动学约束,使网络架构嵌入类似手部结构的物理限制。将二维联合特征图和三维偏移热度图进行层级串联和卷积层操作,分别从XYZ坐标轴表示的图中选择置信度最大的点所对应的值为坐标轴的数值,对XYZ轴都执行以上操作,将得到的值保存为三维坐标点11,就得到了三维位置热度图(3D Location Maps)。三维位置热度图和二维热度图一样,反映了每个像素被每个手部关键点的三维坐标覆盖的预测置信度。特征提取网络具体级联结构如图2所示,为了能更好地预测三维位置偏移量,我们先预测一个二维热度图,将其作为三维热度图的一个条件来提升对三维位置预测的准确性。之后我们再将二维热度图和三维偏移图作为共同条件和特征结合在一起去预测最后的三维位置,通过这样多层级联的条件来得到更加准确鲁棒的位置信息。

图2  级联特征提取网络结构

Fig.2  Cascade feature extraction network structure


2.4 基于GCN特征增强的手部骨架回归网络

对于手部骨架而言,它本身是一个天然的图结构。因此我们很自然地想到基于图卷积神经网络(Graph Convolutional Network, GCN)方法来获取它内部的隐式关系12。GCN的计算过程与信号处理过程相同,先将卷积核和图数据通过傅里叶变换转换到频域空间,再对频域空间的系数进行数值运算,最后进行逆傅里叶变换得到卷积后的结果。

利用上述模块生成热图后,采用积分回归方法13将热图表示转化为坐标表示,作为GCN特征增加网络的初始输入姿态。对热度图的初始化姿态进行softed-argmax操作,将热图传播到Softmax层中,该层将热度图像素值标准化为似然值(0~1)之后,再对似然图层进行积分运算求和操作,从而估算关节位置:



(2)

其中,表示第k个关节的位置估计,A表示似然区域,表示p点上的似然值。因此,每个热图矩阵都包含生成初始姿势的信息。

热图模块和坐标转换相互耦合,使得GCN特征增强网络可以获得更准确的初始化姿态,有助于在进行校正之前获得更精确的局部上下文理解。此外,由于尺寸的限制,基于热图的表示在一定程度上导致了关键点的量化误差,转化为坐标后可以解决这个问题。

由于手部姿态估计涉及的节点数量较多,我们使用切比雪夫多项式进行逼近。当有n个节点时,得到GCN层与层之间传播公式如式(3)所示:



(3)

其中, 是单位矩阵,A是代表各个节点之间位置关系的n×n维的邻接矩阵(Adjacency matrix),的度矩阵(Degree matrix)。X是输入层的特征,Z是输出层的特征,m是特征向量的维度,W是网络需要学习的权重,d是输出向量的维度。

考虑到特征图之间感受野的由粗到细,我们在模块中设计了一种从粗到精的学习过程,用于增强局部特征学习,纠正部分遮挡的手部关键点的坐标。由于基于坐标的模块缺少图像的上下文信息,我们为每个关节位置挖掘了相关的图像特征,并融合到模块中。如图1所示,通过双线性插值采点,将从图像特征中挖掘出的初始关键点坐标(xy)上的节点特征输入到渐进图卷积层中来改善姿态估计结果。渐进GCN特征增强模块网络结构如图3所示,对抽取的每个图卷积的节点特征,我们用3个密集连接的GCN模块来抽取特征,并通过层级1、2的预测在每个层级中进行监督,在最后一层输出预测的三维手部关键点坐标。该机制建立了渐进的GCN架构,并通过逐步融合多尺度图像特征来优化关键点输出。

图3  渐进GCN特征增强网络结构

Fig.3  Progressive GCN feature enhancement network structure


2.5 损失函数

整体网络是基于端到端的学习,通过多任务学习的策略使得网络结果更好地收敛。损失函数的定义如式(4)所示:



(4)

其中为二维热度图损失函数,表示为,这里为热度图的真值,为网络估计的热度图;为三维偏移热度图损失函数,表示为=,这里作为掩模,为热度图的真值,为网络估计的热度图,⊙表示的是逐像素积。同理,三维位置热度图损失函数=是图卷积神经网络的损失函数,其定义如式(5)所示:



(5)

其中Ω为目标点集,对于我们的手部重建的目标关键点其个数为21个;j表示的是第j层图卷积网络的输出结果。通过这种多层级的三维骨架估计监督可以让网络表现出更好的结果。M是一维度的向量表示关键点掩模,如果关键点存在标注数据,,否则为0。

3 实验结果

3.1 实验指标

对于手部的骨架姿态估计而言,其本质是一个回归问题,回归问题的指标很难通过上述二分类的指标来进行度量。为了验证模型的优越性,这里使用3D 平均准确性(Percentage of Correct Keypoint,PCK)和2D 的关节点相识性(Object keypoint similarity,OKS)进行评价。3D PCK的计算公式如式(6)所示:



(6)

其中i表示关节点的编号,表示第i个关节点的预测值和表达的欧氏距离。d为人体骨架的尺度因子,T为关键点的阈值。在本次实验中d为手掌中心岛中指末端的欧式距离,T的阈值设为0.1。

同理2D OKS的度量公式如式(7)所示:



(7)

其中s通常指人体骨架的尺度因子,本次实验设置为手部最小外接框的面积的根;是一个归一化因子,与关键点标注的难易有关,这主要是根据数据集的标注分布决定的;表达的是某些关键点i是否存在标答(数据集中该关键点是否标注了真值)。

对于3D的PCK值,由于需要设定一定的阈值,因此在数值结果受到了阈值T的影响。在机器学习中通常使用一种度量方式来计算这类数字的分数,我们称之为曲线下面积值的平均(Area Under Curve,AUC)。AUC曲线的计算公式如式(8)所示:



(8)

这里我们设设为20~50 mm,中间取10个间隔。

3.2 实验数据集

本文在以下5个数据集上展开模型的训练和测试,多维度验证我们设计的人体手部姿态估计器的性能。

CMU Hand Keypoints Detection Dataset14是由卡内基梅隆大学发布的手部骨架估计的数据集。Rendered Handpose Dataset(RHD)15是由弗莱堡大学在2017发布的手部姿态渲染数据集。Dexter+Object16是2016年由德国的马普所发布的手部重建和手部对象跟踪的数据集。Ego Dexter datasets17是由MPI于2017年发布于ICCV2017的数据集。GANeratedDataset18是由MPI在CVPR2018年推出的数据集,该数据集主要是由GAN生产的合成数据集。

实验所用数据的分布如表1所示,记录了数据集所含有的标注及被本次实验用作训练集和测试集的数据量。此外,原始的Dexter16数据集有1 912训练集和846验证集,但是考虑到更加充分的验证算法,我们将1 912个训练集也作为本次实验的测试集。

表1  实验所用数据分布
Tab.1  Distribution of data used in the experiment

手部2D标注手部3D标注训练集测试集
CMU14-16 720-
RHD1541 2582 728
Dexter+Object16-3 145
EgoDexter17--3 190
GANeratedDataset18-331 499-
合计--389 4779 063

3.3 结果与分析

实验过程中的数值曲线如图4所示,其中图4(a)是训练过程中的损失曲线,lossH是二维热度图损失值,lossD是三维偏移热度图的损失值,lossL是在经过渐进GCN模块后的三维关键点损失值。从图4(a)可以看出,输出的粗结果在经过多热度图耦合的三维关键点检测器和渐进的GCN模块的精细化调整后可以收敛出更低的损失值。图4(b)、(c)、(d)分别表示在RHD15、DO16、ED17测试集下每个训练周期下的AUC值。

图4  网络训练时的损失函数曲线和在验证集下的AUC精度曲线

Fig.4  Loss function curves during network training and AUC accuracy curves under the validation set


本次实验主要和Xiong Zhang等人提出的Mesh2HAND19]‍、Donglai Xiang等人提出的Mon-Cap20、Adnane Boukhayma等人提出的3D pose in the wild21以及Y X Zhou等人提出的Minimal-hand5进行对比。

定量的实验结果与上述4种方法比较对照如表2所示,其中20 mm和30 mm分别指当阈值取相应值时的PCK值,AUC是当阈值取20~50 mm时的PCK曲线面积值。由表2可见,我们所改进的方法在3D骨架回归任务上的结果在各个数据集上的AUC曲线都优于其他方法。具体来说,我们所提出的方法相较于Minimal-hand5在DO数据集上AUC大约高了0.8%,在ED17数据集上比Minimal-hand5 AUC大约高了0.7%。对于RHD15数据集,我们所设计的方法比Mesh2Hand19 AUC高了大约3%。就单纯的PCK值而言,我们所提出的方法更加接近于真实值,在阈值设为20 mm处,我们提出的方法在DO16数据集上比最好的方法高了0.9%,在RHD15数据集上比最好的方法高了0.8%。虽然在ED17数据集上略低于最好的方法,但是在阈值30 mm处,我们提出的方法远高于最好的方法(相较于Minimal-hand5高了大约3.7%)。

表2  本文方法与其他方法实验结果对比
Tab.2  Comparison of experimental results between this method and other methods

方法

数据

Dexter+Object16EgoDexter17RHD15
20 mm30 mmAUC20 mm30 mmAUC20 mm30 mmAUC
Mesh2HAND190.7320.8560.8250.7170.7440.7460.8000.9150.901
Mon-Cap200.7950.9330.9120.7320.8110.7790.8160.9230.911
Adane210.6530.8190.7630.6360.7010.6740.7980.9020.887
Minimal-hand50.8210.9530.9230.8380.9170.9140.7990.8830.856
本文方法0.8300.9670.931 30.8210.9540.921 30.8240.9610.934 9

本次实验的操作系统为Ubantu18.04,CPU核为i5-6500,GPU的配置为GTX-2080 11 GB。在图像分辨率为256256的情况下,对算法处理时间和所需功耗进行分析。如表3所示,算法所需的推理时间为52 ms,算法所需的每秒浮点计算量(FLOPs)为9.3108次。结合算法对照实验分析可知,我们提出的算法在处理时间上和模型复杂度上处于较优水平,不仅推理时间和计算量近似于Minimal-hand5,而且姿态估计精度在多个数据集上都超过了Minimal-hand5的效果。

表3  推理速度与浮点计算量比较
Tab.3  Comparison of the time of inference and FLOPs

推理时间/ms计算量(FLOPs)
Mesh2Hand191 17311.3E10
Mon-Cap205647.9E9
Adanet216428.5E9
Minimal-hand5498E8
本文方法529.3E8

该结果表明在不影响算法速度的情况下,我们提出的算法在效率上得到了较大的提升,识别推理的帧率(Frames Per Second,FPS)达到了19.23,因此该算法可以使用在视频流的实时手部骨架检测中。与此同时,较小的计算量满足了对模型低功耗、轻量化的需求。

我们选择在上述定量分析中4个对照方法中精度指标表现最好的Minimal-hand5作为定性分析对象。定性的可视化结果如图5所示(在RHD15测试集上的检测结果)。从图中高亮部分的细节可以看出,本文算法在测试集上的结果明显优于Minimal-hand5算法。在引入渐进GCN模块后,手部骨架耦合了图结构的约束,使得其在一些自遮挡比较严重的场景下,也能够检测出合理的结果。

图5  可视化实验结果对比

Fig.5  Comparison of visualization experimental results


在自然场景下,涉及手物交互时骨架回归结果如图6所示。由于人手在抓取物体过程中出现了大面积的遮挡,导致骨架回归结果在尺度的还原上有些许偏差。除了部分关键点遮挡因素外,我们分析误差的产生还有以下原因:由于当前手部3D训练数据集真实数据不足,因此参与实验的训练数据大多是CG合成的虚拟3D数据集,或者是通过实验室设备所收集的特定场景下标定好的真实数据集,并且单目RGB相机在投影时失去了深度信息。因此将该算法用于自然场景下时,存在着较大的状态空间误差(Domain Gap),从而导致了些许计算误差。此外,最终输出的3D坐标的回归在一定程度上依赖于初始化的3D坐标位置,在初始坐标位置偏差较大时,会导致系统估计的姿态坐标产生回归误差。

图6  自然场景下的可视化结果

Fig.6  Visualization results in the wild


尽管如此,本文模型在精度指标上和大致的形体姿态上还是表现得足够精准,总体上算法可以在自然场景下给出合理的估计结果,这体现了我们算法整体的鲁棒性。

4 结论

本文所提出的三维手部姿态估计算法通过结合人体关节结构之间的基本约束信息以及级联神经网络和渐进图卷积神经网络挖掘出的特征图中包含的被遮挡关键点的相关数据,能够精确地调整被遮挡关键点的位置,对于人体手部骨架的检测有较高的正确率。我们在3个公开数据集上验证了网络性能,与现有的4种算法进行实验比对,本文算法在30 mm阈值下的PCK精度表现非常出色,最低精度达到95.4%,高出次优算法3.7%精度值。并且在3个测试集上的AUC曲线指标均达到最高,平均AUC精度达到92.9%。经过与其他方法的定量、定性类比,可以看出本文算法在三维关键点预测精度上比现有的方法有明显提高,并且可视化实验结果表明,本文算法在图像细节的捕捉上也具有优势。此外,本文方法推理的帧率达到了19.23,可以满足实时视频流检测的需求。模型所需FOLPs为9.3108次,复杂度较低,满足对模型轻量化的要求。综上,本文基于多任务学习的方法提出了一种端到端的训练方式,加速了网络的收敛,减少了特征的过拟合,使得网络在三维手部姿态估计任务上准确性和鲁棒性相比于现有技术有较为显著的改进。


关键字:优秀论文

网络客服QQ: 沈编辑

投诉建议:0373-5939925    投诉建议QQ:

招聘合作:2851259250@qq.com (如您是期刊主编、文章高手,可通过邮件合作)

地址:河南省新乡市金穗大道东段266号中州期刊联盟 ICP备案号:豫ICP备2020036848

【免责声明】:中州期刊联盟所提供的信息资源如有侵权、违规,请及时告知。

版权所有:中州期刊联盟(新乡市博翰文化传媒有限公司)

关注”中州期刊联盟”公众号
了解论文写作全系列课程

核心期刊为何难发?

论文发表总嫌贵?

职院单位发核心?

扫描关注公众号

论文发表不再有疑惑

论文写作全系列课程

扫码了解更多

轻松写核心期刊论文

在线留言