一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于改进Transformer的黑暗场景三维人体姿态估计算法的制作方法

2021-10-24 05:11:00 来源:中国专利 TAG:姿态 估计 人体 算法 场景

一种基于改进transformer的黑暗场景三维人体姿态估计算法
技术领域
1.本发明涉及深度学习、计算机视觉、三维人体姿态估计。尤其涉及一种基于改进transformer的黑暗场景三维人体姿态估计算法。


背景技术:

2.人体姿态估计是在计算机视觉领域的基础研究,也是一个热点研究。在医学领域、虚拟现实(vr)、人机交互等领域有着广泛的应用。目前,三维人体姿态估计方法主要有两类:基于传统方法的人体姿态估计和基于深度学习的人体姿态估计。
3.基于传统方法的人体姿态估计是通过建立人体的模型来描述和推测人体姿态,通过算法来提取姿态特征。例如,《random

forest

based human pose estimationusing a multi

scale and cascade approach》一文采用随机森林来判断前景中每个像素点属于身体的哪个部位,并使用随机回归森林来判断人体的所有关节点。《a data

driven approach for real

time full body pose reconstruction from a depth camera》一文使用数据驱动的模板匹配算法来进行姿态估计,再由算法对姿态进行精确调整。尽管传统方法处理速度快,但由于自身模型的限制,存在着精度不足等问题。而且传统方法容易受光照、遮挡等因素影响,鲁棒性不高。
4.基于深度学习的三维人体姿态估计主要是通过深度卷积网络提取图像特征,然后再通过特征图得到关节点的位置。例如,《human pose estimation from mono

cular images with deep convolutional neural network》一文通过训练网络,直接从图像中回归计算三维人体关节位置。《a simple yet effective baseline for 3d human pose estimation》一文以2d人体姿态估计为基础,首先获得2d人体姿态结果,然后通过简单的神经网络将2d姿态回归到3d人体姿态。基于深度学习的三维人体姿态估计相较于传统方法精度有较大的提升,但是特定场景下,如黑暗场景下依旧存在着准确率低,鲁棒性差等问题。


技术实现要素:

5.本发明的目的是为了解决在黑暗场景条件下三维人体姿态估计准确率较低、鲁棒性较差的问题,提出一种基于改进transformer的黑暗场景三维人体姿态估计算法。
6.本发明采用的技术方案为:一种基于改进transformer的黑暗场景三维人体姿态估计算法,包括如下步骤:
7.s1、通过摄像头以一定帧率拍摄黑暗场景下的人体姿态,制作黑暗场景下人体姿态数据集,并进行数据增强;
8.所述数据增强方式包括:随机旋转、随机缩放和随机饱和度调整;所述随即旋转即将图片随机旋转

45度~ 45度,随机缩放为将图片随机缩放为原图的 0.7~1.2倍,随机饱和度调整的实施方法为首先设定一个阈值t(本发明中t=0.5),接着在(0,1)内随机选取一个数a,如果,则饱和度调整的比例为a,如果,则在 (

a,a)内随机选取一个数b,饱和度调整
本发明的m=17,ρ
i
为模型预测的第i关节点的三维坐标,表示第i个关节点三维坐标的真实值;另一部分是人身体对称部分骨骼长度差:人体对称部分骨骼差含义是人体右手腕和右手肘的长度与人体左手腕与左手肘的长度相同,即二者理想差值应该为0,其中u
c
表示左边第c个骨骼长度,表示右边第c个骨骼长度。c∈[1,6],本发明损失函数表达式如下:
[0023]
l=λ1×
l
p
λ2×
l
g
[0024]
其中,λ1和λ2,为各自系数,本发明中λ1=2,λ2=1;
[0025]
s37、以上改进为基础,搭建改进transformer模型。模型超参数设置:选择amsgrad优化器,共训练80个epoch,学习率采用指数衰减策略(每一轮都衰减,衰减因子为0.95),初始学习率为0.001。
[0026]
s4、将训练好的模型部署到移动端设备例如jetson tx2上,完成黑暗场景下三维人体姿态估计。
[0027]
有益效果:本发明首先基于时域空洞卷积模型提出可切换时域空洞卷积网络,通过可切换时域空洞卷积对时域空洞卷积进行改进,使得模型能够根据输入特征自适应决定学习相邻特征信息还是长范围特征信息。接着,提出姿态图卷积对 transformer的自注意力机制进行改进,提升transformer提取局部特征的能力。最后,提出三种人体关节点的连接关系,提升姿态图卷积聚合人体关节点特征的能力。本发明在黑暗场景下具有准确率较高和实用性较好等优点。
附图说明
[0028]
图1为本发明实施例的可切换时域空洞网络结构图;
[0029]
图2为改进自注意力机制图;
[0030]
图3为本发明实施例的姿态图卷积中节点连接关系图。
具体实施方式
[0031]
下面将结合附图和具体实施方式对本发明作进一步说明。
[0032]
本发明提出一种基于改进transformer的黑暗场景下的三维人体姿态估计算法,包括以下步骤:
[0033]
步骤1:摄像头拍摄黑暗场景中的人体姿态。
[0034]
本发明中通过摄像机获取黑暗场景下的人体姿态图,由于拍摄到的图片存在噪声,需要进行数据处理,对拍摄到的图片进行数据增强。本发明数据增强方法包括:随即旋转、随机缩放、随机饱和度调整等。随即旋转即将图片随机旋转

45 度~ 45度。随机缩放为将图片随机缩放为原图的0.7~1.2倍。随机饱和度调整的实施方法为首先设定一个阈值t(本法发明中t=0.5),接着在(0,1)内随机选取一个数a,如果a≥t,则饱和度调整的比例为a,如果a≤t,则在(

a,a)内随机选取一个数b,饱和度调整的比例为b 1。
[0035]
步骤2:训练二维人体姿态估计模型,并对增强后的图片进行二维人体姿态估计:
[0036]
本发明实施例选择级联金字塔网络(cpn)进行二维人体姿态估计。由于cpn 进行人体姿态估计时采用自顶向下策略,需要提供人体边界框,本发明使用maskr

cnn进行人体边界框检测,其中mask r

cnn使用resnet101作为backbone。本发明的cpn选择resnet50作为backbone,输入图片大小为384
×
288。本发明首先在coco数据集上对cpn进行预训练,由于coco数据集部分关节点和 human3.6m中不同,本发明在human3.6m数据集上对在coco数据集上预训练的二维关节点进行微调,具体来说重新初始化网络最后一层,使得人体关节点热图(heatmap)回归到human3.6m数据集所对应的二维关节点。二维人体姿态估计使用human3.6m中提供的二维坐标作为数据集,共迭代100000次,优化器选择adam,单批次训练样本数量(batch

size)为16,学习率使用逐步衰减的策略,即初始学习率为0.0005,每20000轮衰减一次,衰减率为0.1。
[0037]
训练好级联金字塔网络模型后,将步骤1中数据增强后的图片输入到级联金字塔网络中进行二维人体姿态估计,得到二维人体关节点坐标。
[0038]
步骤3:搭建并训练改进transformer模型,将二维关节点坐标组成特征序列输入改进transformer模型中进行三维人体姿态估计。
[0039]
本发明实施例中通过可切换时域空洞网络、姿态图卷积对transformer模型进行改进,提升transformer提取局部特征的能力。
[0040]
图1展示本发明实施例的可切换时域空洞网络结构图。具体来说,输入可切换时域空洞网络的特征序列大小为(243,34),输入特征序列首先经过一个卷积核大小为3、空洞率为1、输出通道数为544的1d卷积,接着特征经过b个具有残差结构的block。每一个block首先经过一个卷积核大小为3、空洞率为3
c
(c ∈[1,b])的1维可切换时域空洞卷积,之后特征序列经过一个卷积核大小为1,空洞率为1的1d卷积。每一个卷积后面都有一组1维的批量归一化层、relu 激活函数以及dropout层。为了匹配每一个block的输出和输入特征序列的尺寸,使得输入和输出特征序列能够相加,本发明使用切片操作改变特征序列尺寸。每一个block相较于前一个block空洞率呈指数级增长,这使得后一个block感受野更大。最后一个block输出特征大小为(1,544)。本发明级联金字塔网络输出特征序列经过填充操作后共有n 242帧图像,通过滑动窗口的方式每次从n 242 帧图像中抽取243帧图像作为可切换时域空洞网络的输入,最终在整个时域上可切换时域空洞网络输出特征序列大小为(n,544)。可切换时域空洞网络利用一个姿态的过去信息和未来的信息去提取243帧图像中间位置的姿态特征。
[0041]
图1中同时展示了本发明实施例中提出的可切换时域空洞卷积。与时域空洞卷积只能学习长范围特征信息相比,可切换时域空洞卷积能够根据输入特征序列自适应决定选择学习相邻特征信息还是长范围的特征信息。这样的特点可以更好对输入特征序列进行特征提取,因为对于某个阶段,相邻的时域信息相较于长范围的时域信息可能更有利于关节点的三维坐标建模。
[0042]
如图1所示。输入可切换时域空洞卷积的特征序列大小为(h,544),其中h 表示h帧图像,544表示通道数,输入特征序列首先分别经过卷积核大小为3、步长为1、空洞率为3c的时域空洞卷积、卷积核大小为s,空洞率为1的标准卷积以及自注意力。经过自注意力的特征序列大小为h
×
h,之后经过平均池化特征大小变为(h,1),再经过卷积核大小为1的1d卷积和softmax得到转换因子 (switchable factor)m。m与经过卷积核大小为3的时域空洞卷积
进行特征提取后的特征序列相乘得到特征序列k2,而(1

m)与卷积核大小为s的标准卷积进行特征提取得到的特征序列相乘得到特征序列k1。由于此时k1与k2特征序列尺寸不同,为了使得k1和k2特征尺寸相同,本发明对特征序列k1使用和可切换时域空洞网络中相同的切片操作。
[0043]
通过可切换时域空洞网络,模型能够有效地捕捉与自身相关联的特征信息。 transformer中通过自注意力机制提取全局特征,但是自注意力机制对于局部特征的提取能力较差,局部特征提取的能力对于人体姿态的三维建模有着十分重要的作用。基于这一点本发明通过提出姿态图卷积对transformer中的自注意力机制进行改进,提高transformer提取局部特征的能力。
[0044]
如图2所示中改进自注意力机制图所示,q(query)、k(key)、v(value)表示图自注意力机制的三个输入,与自注意力机制不同的是本发明的图自注意力机制中的q先经过姿态图卷积聚合特征序列中关节点的局部特征信息,然后与k进行矩阵相乘,再经过softmax得到权重矩阵,最后和v相乘得到图自注意力机制的输出。从图2中可以看出,本发明通过姿态图卷积将聚合到的局部特征q 和原始输入k进行相乘,不仅可以学习到整个时域上特征的关联性,同时也突出每个特征的局部特征。
[0045]
图3展示本发明实施例中姿态图卷积聚合人体关节点特征时关节点的连接关系图。人体关节点间不同的连接关系对人体关节点三维坐标的建模有着不同的影响,为了充分利用关节点的连接关系,本发明基于人体骨架图提出三种关节点关系:人体关节点邻接关系、人体关节点对称关系、人体关节点运动关联关系。
[0046]
图3中以1号节点为中心点,2号、3号、4号节点为其邻居节点。2号节点表示相邻关节点、3号节点为对称关节点、4号节点表示运动时关联的关节点,本发明使用这三种关节点关系改进gcn中的连接矩阵a,而传统gcn对人体关节点进行建模时只考虑相邻节点。相邻节点中,连接关系只有中心节点以及其相邻的节点,如图3中的1号关节点与2号关节点。相邻连接关系能够基本的建模出人体的整体形状。人体对称连接是指正常的人体处于张开时人体是一种对称状态,如图3中1号关节点与3号关节点。人体的对称关系可以辅助相邻连接关系,更能凸显出人体的特征。运动连接关系如图3中1号关节点与4号关节点的连接,1号关节点表示人体的右手肘部,4号节点表示人的左膝盖,当人在运动时人的左膝盖在走动时会带动右肘部进行运动,表明这两个关节点具有运动关联性(右膝盖是等价的,本发明选择左膝盖)。由于对人体进行三维坐标建模时,人体会处于一种运动的状态,增加这种连接关系能够更好地表示运动情况下人体关节点的连接关系。本发明中运动性连接共有四类:左手腕连接右脚踝、左手肘连接右膝盖、右手腕连接左脚踝、右手肘连接左膝盖。基于提出的三种连接关系,姿态图卷积能够充分地聚合某一个关节点局部特征的作用。
[0047]
本发明实施例中模型损失由两个部分组成,一个部分是三维坐标差,另一部分是人身体对称部分骨骼长度差。本发明三维坐标差其中m 表示人体关节点总数,本发明的m=17,ρ
i
为模型预测的第i关节点的三维坐标,表示第i个关节点三维坐标的真实值。人体对称部分骨骼长度差人体对称部分骨骼差含义是人
体右手腕和右手肘的长度与人体左手腕与左手肘的长度应该基本相同,即二者理想差值应该为0。其中u
c
表示左边第c个骨骼长度,表示右边第c个骨骼长度。c∈[1,6],6个对称部分分别为脖子和左右肩部的骨骼长度差、左右肩部和左右手肘、左右手肘和左右手腕、脊柱和左右臀部的骨骼长度差、左右臀部和左右膝盖的骨骼长度差、左右膝盖和左右脚踝长度差。本发明损失函数表达式如公式(1)所示。
[0048]
l=λ1×
l
p
λ2×
l
g
ꢀꢀꢀ
(1) 其中,λ1和λ2,为各自系数,本发明中λ1=2,λ2=1。
[0049]
搭建好改进transformer模型后,本发明将模型在human3.6m数据集上进行训练。优化器选择amsgrad,共训练80个epoch,学习率采用指数衰减策略(每一轮都衰减,衰减因子为0.95),初始学习率为0.001,本发明三维人体姿态估计单批次样本训练数量为791。
[0050]
模型训练好后,将得到的二维坐标组成一个特征序列,利用改进transformer 进行三维人体姿态估计,得到人体关节点的三维人体坐标。
[0051]
步骤4:将模型部署到移动端设备
[0052]
将训练好的transformer模型部署到移动端设备,完成黑暗场景下的三维人体姿态估计,本发明的移动端设备选择jetson tx2,使用jetpack4.4刷机。本发明的深度学习框架为paddlepaddle2.0,部署软件为paddlelite。最终可以实现场景下的三维人体姿态估计。
[0053]
以上所述仅是本发明的优先选择的实施方式,应当指出,对于本技术领域的人员,在不脱离不发明的技术原理前提,在速度和准确度上还可以做出很多提升,这些改变和提升也应该视作本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜