一种基于注意力机制的多分支2D人体姿态估计方法与流程
未命名
10-08
阅读:95
评论:0

一种基于注意力机制的多分支2d人体姿态估计方法
技术领域
1.本发明涉及计算机视觉方向中的基于深度学习的人体姿态估计领域,特别涉及一种基于注意力机制和多分支结构的2d人体姿态估计方法。
背景技术:
2.随着元宇宙数字人概念的兴起,虚拟主播、虚拟偶像、ai换脸等技术受到广大网友的青睐,其背后的技术更是多元且综合的,涉及动作识别、动作捕捉、三维重建、3d渲染等,2d人体姿态估计(2d human pose estimation,简称2d hpe)作为这些任务的前提受到广大计算机视觉研究者的喜爱,迅速成为当今研究的热点。2d人体姿态估计的主要任务是通过摄像机或其他传感器,自动检测和估计预先定义的人体骨骼点,再按照顺序连接得到人体骨架。2d人体姿态估计在众多领域有着重要意义,它可以提高人机交互效率、提高虚拟现实体验等,在自动驾驶、运动分析、康复训练等领域有着非常广泛的应用价值。
3.目前国内外人体姿态估计有两种主流的方式:自上而下(top-down)和自底向上(bottom-up)。自上而下的方式首先进行目标检测,然后对每个检测到的人进行单人姿势估计。自底向上的方式又可以分为两种。基于热力图的方法和基于回归的方法。基于热力图的方法首先检测所有关键点,再分组属于同一个人的关键点,之后按顺序连接得到人体骨架。基于回归的方法直接回归每个人的中心点和各个关键点相对于中心点的偏移量,再结合中心点和偏移量得到人体骨架。但现有的方式都受困于姿态估计任务本身和复杂的外界环境,比如姿态的多样性、部位遮挡和变形、尺度变换等问题,为此,许多研究者提出各式各样的方法来提高姿态估计的准确性,如adaptivepose提出一种两阶段的回归偏移量的方法,由中心点到人体部位相关点再到每一个关键点。pinet将人体边界框分成三个部分并分别估计每个部分,使得其对身体部位遮挡更加鲁棒。fami-pose提出一个分层对齐框架,利用相邻帧的信息有效缓解快速运动场景中姿态估计不准确的问题。也有许多研究者尝试利用精细的transformer来解决姿态估计问题,如mhformer、poseformer、mixste等。
4.发明专利(申请号:202211045347.9)公开了一种轻量级的2d人体姿态估计网络,将hrnet模型的第1个阶段的卷积块替换为shufflenetv2中的轻量特征提取头,将hrnet模型的第3个阶段和第4个阶段的卷积均替换为轻量动态卷积模块,在hrnet模型的第4个阶段的末尾增加动态空间关节点优化模块。这种方法将工作集中在用轻量级的模块替换原hrnet结构和对关键点的后处理上,虽然能显著降低模型参数量,加快运算速度,但没有从根本上解决姿态估计任务本身的瓶颈,即特征提取的不够纯粹。
5.发明目的
6.本发明旨在提供一种基于注意力机制的多分支2d人体姿态估计方法解决传统2d人体姿态估计模型提取的特征不具有代表性、鲁棒性差等缺点,并采用通道-空间注意力模块、自适应卷积以及多分支结构,在不增加太多计算量和内存消耗的情况下迫使模型忽略无关的背景信息,专注于提取目标人物关键点周围的特征,同时使模型更好的适应不同尺寸的目标人物以及野外场景,提高模型的鲁棒性。
7.本发明出发点在于用于回归人体关键点偏移量的特征应该集中在目标人物关键点周围,为了实现这一目标,本发明从网络结构方面做了三方面的努力,分别是通道和空间注意力模块、自适应卷积和多分支结构,从而迫使模型忽略无关的背景信息,专注于提取目标人物关键点周围的特征,同时,增强模型对不同尺寸人物以及复杂场景的鲁棒性,并将提取的特征用于关键点的回归,实现精准的2d人体姿态估计。
8.本发明的目的至少通过如下技术方案之一实现。
9.一种基于注意力机制的多分支2d人体姿态估计方法,包括以下步骤:
10.s1、构建2d人体姿态估计网络,包括经过改造的骨干网络hrnet、卷积层和多分支结构;
11.2d人体姿态估计网络中,图片输入经过改造的骨干网络hrnet得到图片特征,图片特征一方面输入卷积层,预测k个关键点热力图和一个中心点的热力图,图片特征另一方面按通道维度划分成k份,送入多分支结构,在多分支结构中,每个分支应用自适应卷积单独回归某一种类型的关键点,得到偏移量,偏移量为每个人体实例的关键点和中心点的差值,中心点为每个人体实例所有可见关键点的平均值;
12.s2、选取训练数据集,对2d人体姿态估计网络进行训练;
13.s3、输入图片至训练完成的2d人体姿态估计网络,得到热力图和偏移量,根据热力图和偏移量推理得到人体骨架。
14.进一步地,步骤s1中,所述改造的骨干网络hrnet由将通道-空间注意力模块嵌入骨干网络hrnet中得到;
15.所述通道-空间注意力模块具体如下:
16.为了使得网络更加关注目标人物关键点所在区域,忽略背景噪声,在骨干网络hrnet中嵌入通道-空间注意力模块;通道-空间注意力模块由通道注意力模块和空间注意力模块串行执行,对输入的特征图进行优化,为后续热力图的预测以及偏移量的回归提供更多更有效的特征;
17.通道注意力模块可以帮助模型自动学习通道之间的相关性和重要性,从而迫使模型更加关注目标人物关键点所在的通道;通道注意力模块中,输入特征图沿空间维度分别进行最大池化和平均池化得到两个1
×1×
c维的向量,之后这两个向量同时经过一个共享的mlp后再相加,再经过激活函数sigmod得到一个1
×1×
c维的向量,这个向量就是通道注意力,每个通道上的值代表每个通道的权重,背景通道的权重较小,目标人物关键点所在通道的权重较大,输出特征图由通道注意力与输入特征图相乘得到,经过通道注意力模块的处理,可达到抑制背景通道噪声,突出目标人物关键点所在通道的目的;
18.空间注意力模块可以帮助模型自动学习空间之间的相关性和重要性,从而迫使模型关注目标人物关键点所在的区域;空间注意力模块中,输入特征图沿通道维度分别进行最大池化和平均池化得到两个h
×w×
1维的向量,之后将这两个向量拼接在一起,再经过卷积和激活函数sigmod得到一个h
×w×
1维的向量,这个向量就是空间注意力,每个像素上的值代表每个像素的权重,背景空间的权重较小,目标人物关键点所在空间的权重较大,输出特征图由空间注意力与输入特征图相乘得到,经过空间注意力模块的处理,可达到抑制背景空间噪声,突出目标人物关键点所在空间的目的。
19.进一步地,步骤s1中,关键点的数量k为预先定义的。
20.进一步地,步骤s1中,自适应卷积具体如下:
21.自适应卷积不同于传统的卷积,在传统卷积操作中,卷积核的每一个位置只能与输入特征图的一个固定位置进行卷积运算,传统卷积公式如式1-1所示,(以3
×
3的卷积核为例):
[0022][0023]
其中,out(q0)代表输出特征图的q0位置,in(q0+qn)代表输入特征图的(q0+qn)位置,r代表感受野大小r={(1,1),(1,0),(1,-1),(-1,1),(-1,0),(-1,-1),(0,1),(0,0),(0,-1)},qn是对r中所列位置的枚举。
[0024]
自适应卷积允许卷积核的每个位置在一定范围内进行位置偏移,可以根据特征图的内容自适应地调整卷积核的形状和大小,而不是集中在传统卷积核大小的正方形中,从而可以更好地适应输入图片中的目标人物尺寸的变化;
[0025]
对于输入特征图,先经过卷积得到位置偏移,位置偏移是2n维的,2代表x和y轴,n代表通道个数,之后,在原先激活像素的基础上加上位置偏移得到目前激活的像素,再进行卷积操作,得到输出特征图;用于生成位置偏移的卷积核和用于生成输出特征图的卷积核一样,是可学习,可更新的;自适应卷积公式如式1-2所示:
[0026][0027]
其中,δqn指输入特征图经过卷积得到的位置偏移。
[0028]
进一步地,步骤s1中,多分支结构具体如下:
[0029]
多分支结构为每种类型的关键点单独设计了一个分支,每个分支的参数不共享,每个分支只关注某一类型的关键点,从而进行
‘
一对一’的特征提取以及回归偏移量过程;
[0030]
若某数据集中每个人包括n个关键点,则针对该数据集,在训练时,就将经过骨干网络得到的特征图按通道维度划分为n份,每份分别送入每个分支,每个分支都进行相同的操作,先经过自适应卷积优化特征图,再经过传统卷积得到偏移量。
[0031]
多分支结构的设计使得模型能够同时利用多个关键点的信息,提高姿势估计的准确性和鲁棒性,同时,每个分支都包含独立的网络结构,参数不共享,从而使得模型可以并行处理不同类型的关键点信息,加快了模型的推理速度。
[0032]
进一步地,步骤s2的具体步骤如下:
[0033]
s2.1、选取训练数据集为ms-coco和crowdpose,并构造真实值;
[0034]
s2.2、选择数据增强策略、优化器、输入图像大小以及学习率;
[0035]
s2.3、构造损失函数;
[0036]
s2.4、训练2d人体姿态估计网络,将2d人体姿态估计网络预测得到的k个关键点热力图、一个中心点的热力图以及偏移量,和对应的真实值计算损失,并不断更新2d人体姿态估计网络的参数,直至达到设定的迭代次数,得到训练完成的2d人体姿态估计网络。
[0037]
进一步地,步骤s2.1中,在深度学习中,真实值的构建对于模型的训练和性能至关重要。对于姿态估计任务,需要构建每个目标人物的关键点热力图真实值、中心点热力图真实值以及偏移量真实值,真实值的构建包括关键点热力图真实值h
*
、中心点热力图真实值c
*
以及偏移量真实值
[0038]
对于关键点热力图真实值h
*
,需要将目标人物pn的所有可见关键点p
nk
作为高斯分
布的中心,使用高斯函数为每个关键点周围高斯半径以内的像素点分配一个热度值,构建出一个与原始图像相同大小的关键点热力图,其中每个像素上的值表示该像素是真实关键点的置信度;
[0039]
中心点热力图真实值c
*
的构建方法与关键点热力图真实值h
*
的类似,以目标人物pn的所有可见关键点p
nk
的平均值为中心点,以该中心点为高斯分布的中心,使用高斯函数为每个中心点周围高斯半径以内的像素点分配一个热度值,构建出一个与原始图像相同大小的中心点热力图,其中每个像素上的值表示该像素是真实中心点的置信度;热力图构建示意图如图7所示。
[0040]
偏移量真实值的构建方法为每个目标人物pn的所有可见关键点p
nk
与中心点的差,即
[0041]
进一步地,步骤s2.2中,选择数据增强策略、优化器、输入图像大小以及学习率,具体如下:
[0042]
数据增强是深度学习中常用的一种技术,旨在增加数据集的多样性,提高模型的泛化能力。采用多种数据增强策略,包括随机旋转([-30
°
,30
°
])、随机缩放([0.75,1.5])、随机平移([-40,40])和随机翻转;
[0043]
随机旋转可以增加数据集中物体的不同角度的视角,随机缩放可以使物体出现在不同大小的尺度上,随机平移可以模拟不同位置的物体,而随机翻转可以增加数据集中物体的不同方向;
[0044]
优化器方面,使用自适应矩估计(adam)优化器,这种优化器能够自适应地调整学习率,更好地控制模型的收敛速度和效果;
[0045]
输入图像方面,将原始图像裁剪为512
×
512大小作为输入,这种输入大小可以在一定程度上平衡模型的效果和计算量;
[0046]
学习率方面,对于ms-coco数据集,将初始学习率设定为10-3
,并在第90和120个epoch中分别降至10-4
和10-5
,训练过程总计140个epoch。对于crowdpose数据集将基础学习率被设定为10-3
,并在第200和260个epoch中分别降至10-4
和10-5
,训练过程总计300个epoch。
[0047]
进一步地,步骤s2.3中,损失函数包括两部分,热力图预测损失和偏移量回归损失。
[0048]
进一步地,热力图预测损失使用l2 loss对热力图的预测进行约束,其计算公式如式1-3所示:
[0049][0050]
其中,是f-范数;h和h
*
分别表示预测到的关键点热力图和关键点热力图真实值;c和c
*
分别表示预测到的中心点热力图和中心点热力图真实值;
[0051]
偏移量回归损失使用归一化的smooth l1 loss对偏移量的回归进行约束,其计算公式如式1-4所示:
[0052]
[0053]
其中,n是真实值姿态的位置的集合,oi和分别代表预测的偏移量和偏移量真实值。
[0054]
进一步地,整体的损失函数是偏移量回归损失和热力图预测损失之和,其计算公式如式1-5所示:
[0055]
loss=loss
offset
+loss
heatmap
(1-5)。
[0056]
与现有技术相比,本发明具有如下显著优点:
[0057]
本发明在不增加太多计算量和内存消耗的情况下迫使模型忽略无关的背景信息,专注于提取目标人物关键点周围的特征,同时能更好的适应不同尺寸的目标人物以及野外场景,提高模型的鲁棒性,并在coco val2017和crowdpose test数据集上取得了比以往方法更优的结果,在coco val2017上取得了68.5的ap,比发表在cvpr2021的dekr多出了0.5的增益,比发表在eccv2018的personlab(601的输入尺寸)多出了14.4的增益,比发表在eccv2018的personlab(1401的输入尺寸)多出了14.4的增益,在crowdpose test上取得了66.8的ap,比发表在cvpr2021的dekr多出了1.1的增益,比提交在arxiv2022的adaptivepose++多出了0.8的增益,除此之后,本发明还在日常生活中拍摄的照片上进行测试,实验结果表明本发明提出的2d人体姿态估计方法对于照片中常见的噪声和干扰具有较好的抵抗能力,能够有效地识别和处理这些干扰因素,在不同的场景和任务中发挥出优秀的性能。
附图说明
[0058]
图1为本发明实施例中2d人体姿态估计网络的模型结构示意图;
[0059]
图2为本发明实施例中通道-空间注意力模块结构示意图;
[0060]
图3为本发明实施例中通道注意力模块结构示意图;
[0061]
图4为本发明实施例中空间注意力模块结构示意图;
[0062]
图5为本发明实施例中自适应卷积的结构示意图;
[0063]
图6为本发明实施例中多分支结构的示意图;
[0064]
图7为本发明实施例中的热力图构建图。
具体实施方式
[0065]
下面结合本发明的附图和实施例对技术方案进行详细的描述。
[0066]
实施例:
[0067]
一种基于注意力机制的多分支2d人体姿态估计方法,包括以下步骤:
[0068]
s1、构建2d人体姿态估计网络,包括经过改造的骨干网络hrnet、卷积层和多分支结构;
[0069]
2d人体姿态估计网络中,图片输入经过改造的骨干网络hrnet得到图片特征,图片特征一方面输入卷积层,预测k个关键点热力图和一个中心点的热力图,图片特征另一方面按通道维度划分成k份,送入多分支结构,在多分支结构中,每个分支应用自适应卷积单独回归某一种类型的关键点,得到偏移量,偏移量为每个人体实例的关键点和中心点的差值,中心点为每个人体实例所有可见关键点的平均值;
[0070]
所述改造的骨干网络hrnet由将通道-空间注意力模块嵌入骨干网络hrnet中得
到;
[0071]
如图2所示,通道-空间注意力模块具体如下:
[0072]
为了使得网络更加关注目标人物关键点所在区域,忽略背景噪声,在骨干网络hrnet中嵌入通道-空间注意力模块;通道-空间注意力模块由通道注意力模块和空间注意力模块串行执行,对输入的特征图进行优化,为后续热力图的预测以及偏移量的回归提供更多更有效的特征;
[0073]
如图3所示,通道注意力模块可以帮助模型自动学习通道之间的相关性和重要性,从而迫使模型更加关注目标人物关键点所在的通道;通道注意力模块中,输入特征图沿空间维度分别进行最大池化和平均池化得到两个1
×1×
c维的向量,之后这两个向量同时经过一个共享的mlp后再相加,再经过激活函数sigmod得到一个1
×1×
c维的向量,这个向量就是通道注意力,每个通道上的值代表每个通道的权重,背景通道的权重较小,目标人物关键点所在通道的权重较大,输出特征图由通道注意力与输入特征图相乘得到,经过通道注意力模块的处理,可达到抑制背景通道噪声,突出目标人物关键点所在通道的目的;
[0074]
如图4所示,空间注意力模块可以帮助模型自动学习空间之间的相关性和重要性,从而迫使模型关注目标人物关键点所在的区域;空间注意力模块中,输入特征图沿通道维度分别进行最大池化和平均池化得到两个h
×w×
1维的向量,之后将这两个向量拼接在一起,再经过卷积和激活函数sigmod得到一个h
×w×
1维的向量,这个向量就是空间注意力,每个像素上的值代表每个像素的权重,背景空间的权重较小,目标人物关键点所在空间的权重较大,输出特征图由空间注意力与输入特征图相乘得到,经过空间注意力模块的处理,可达到抑制背景空间噪声,突出目标人物关键点所在空间的目的。
[0075]
关键点的数量k为预先定义的。
[0076]
如图5所示,自适应卷积具体如下:
[0077]
自适应卷积不同于传统的卷积,在传统卷积操作中,卷积核的每一个位置只能与输入特征图的一个固定位置进行卷积运算,传统卷积公式如式1-1所示,(以3
×
3的卷积核为例):
[0078][0079]
其中,out(q0)代表输出特征图的q0位置,in(q0+qn)代表输入特征图的(q0+qn)位置,r代表感受野大小r={(1,1),(1,0),(1,-1),(-1,1),(-1,0),(-1,-1),(0,1),(0,0),(0,-1)},qn是对r中所列位置的枚举。
[0080]
自适应卷积允许卷积核的每个位置在一定范围内进行位置偏移,可以根据特征图的内容自适应地调整卷积核的形状和大小,而不是集中在传统卷积核大小的正方形中,从而可以更好地适应输入图片中的目标人物尺寸的变化;
[0081]
对于输入特征图,先经过卷积得到位置偏移,位置偏移是2n维的,2代表x和y轴,n代表通道个数,之后,在原先激活像素的基础上加上位置偏移得到目前激活的像素,再进行卷积操作,得到输出特征图;用于生成位置偏移的卷积核和用于生成输出特征图的卷积核一样,是可学习,可更新的;自适应卷积流程图如图5所示,自适应卷积公式如式1-2所示(以3
×
3的卷积核为例):
[0082]
[0083]
其中,δqn指输入特征图经过卷积得到的位置偏移。
[0084]
多分支结构具体如下:
[0085]
多分支结构为每种类型的关键点单独设计了一个分支,每个分支的参数不共享,每个分支只关注某一类型的关键点,从而进行
‘
一对一’的特征提取以及回归偏移量过程;
[0086]
若某数据集中每个人包括n个关键点,则针对该数据集,在训练时,就将经过骨干网络得到的特征图按通道维度划分为n份,每份分别送入每个分支,每个分支都进行相同的操作,先经过自适应卷积优化特征图,再经过传统卷积得到偏移量。
[0087]
多分支结构的设计使得模型能够同时利用多个关键点的信息,提高姿势估计的准确性和鲁棒性,同时,每个分支都包含独立的网络结构,参数不共享,从而使得模型可以并行处理不同类型的关键点信息,加快了模型的推理速度。多分支结构示意图如图6所示,由于篇幅限制,本实施例中,只展示了3个分支。
[0088]
s2、选取训练数据集,对2d人体姿态估计网络进行训练,具体步骤如下:
[0089]
s2.1、选取训练数据集为ms-coco和crowdpose,并构造真实值;
[0090]
在深度学习中,真实值的构建对于模型的训练和性能至关重要。对于姿态估计任务,需要构建每个目标人物的关键点热力图真实值、中心点热力图真实值以及偏移量真实值,真实值的构建包括关键点热力图真实值h
*
、中心点热力图真实值c
*
以及偏移量真实值
[0091]
对于关键点热力图真实值h
*
,需要将目标人物pn的所有可见关键点p
nk
作为高斯分布的中心,使用高斯函数为每个关键点周围高斯半径以内的像素点分配一个热度值,构建出一个与原始图像相同大小的关键点热力图,其中每个像素上的值表示该像素是真实关键点的置信度;
[0092]
中心点热力图真实值c
*
的构建方法与关键点热力图真实值h
*
的类似,以目标人物pn的所有可见关键点p
nk
的平均值为中心点,以该中心点为高斯分布的中心,使用高斯函数为每个中心点周围高斯半径以内的像素点分配一个热度值,构建出一个与原始图像相同大小的中心点热力图,其中每个像素上的值表示该像素是真实中心点的置信度;热力图构建示意图如图7所示。
[0093]
偏移量真实值的构建方法为每个目标人物pn的所有可见关键点p
nk
与中心点的差,即
[0094]
s2.2、选择数据增强策略、优化器、输入图像大小以及学习率,具体如下:
[0095]
在一个实施例中,数据增强是深度学习中常用的一种技术,旨在增加数据集的多样性,提高模型的泛化能力。采用多种数据增强策略,包括随机旋转([-30
°
,30
°
])、随机缩放([0.75,1.5])、随机平移([-40,40])和随机翻转;
[0096]
在一个实施例中,随机旋转可以增加数据集中物体的不同角度的视角,随机缩放可以使物体出现在不同大小的尺度上,随机平移可以模拟不同位置的物体,而随机翻转可以增加数据集中物体的不同方向;
[0097]
在一个实施例中,优化器方面,使用自适应矩估计(adam)优化器,这种优化器能够自适应地调整学习率,更好地控制模型的收敛速度和效果;
[0098]
在一个实施例中,输入图像方面,将原始图像裁剪为512
×
512大小作为输入,这种输入大小可以在一定程度上平衡模型的效果和计算量;
[0099]
在一个实施例中,学习率方面,对于ms-coco数据集,将初始学习率设定为10-3
,并在第90和120个epoch中分别降至10-4
和10-5
,训练过程总计140个epoch。对于crowdpose数据集将基础学习率被设定为10-3
,并在第200和260个epoch中分别降至10-4
和10-5
,训练过程总计300个epoch。
[0100]
s2.3、构造损失函数;损失函数包括两部分,热力图预测损失和偏移量回归损失;
[0101]
热力图预测损失使用l2 loss对热力图的预测进行约束,其计算公式如式1-3所示:
[0102][0103]
其中,是f-范数;h和h
*
分别表示预测到的关键点热力图和关键点热力图真实值;c和c
*
分别表示预测到的中心点热力图和中心点热力图真实值;
[0104]
偏移量回归损失使用归一化的smooth l1 loss对偏移量的回归进行约束,其计算公式如式1-4所示:
[0105][0106]
其中,n是真实值姿态的位置的集合,oi和分别代表预测的偏移量和偏移量真实值;
[0107]
整体的损失函数是偏移量回归损失和热力图预测损失之和,其计算公式如式1-5所示:
[0108]
loss=loss
offset
+loss
heatmap
(1-5)。
[0109]
s2.4、训练2d人体姿态估计网络,将2d人体姿态估计网络预测得到的k个关键点热力图、一个中心点的热力图以及偏移量,和对应的真实值计算损失,并不断更新2d人体姿态估计网络的参数,直至达到设定的迭代次数,得到训练完成的2d人体姿态估计网络。
[0110]
s3、输入图片至训练完成的2d人体姿态估计网络,得到热力图和偏移量,根据热力图和偏移量推理得到人体骨架。
[0111]
在一个实施例中,在coco val2017上的测试结果记录在表1-1中,表1-1显示了本发明和其他方法的比较,如person lab,dekr。本发明采用hrnet-w32为骨干网络,在单尺度测试的情况下,取得了68.5的ap,各项指标均明显优于其他模型规模相似的方法,在公平的比较条件下,比person lab(601的输入尺寸)多出了14.4的增益,比person lab(1401的输入尺寸)多出了2.0的增益,比dekr多出了0.5的增益。
[0112]
表1-1在coco val2017上与其他方法的对比情况
[0113][0114]
在另一个实施例中,在crowdpose test上的测试结果记录在表1-2中,表1-2显示了本发明和其他方法的比较,如hrhrnet、dekr和adaptivepose++。本发明采用hrnet-w32为骨干网络,在单尺度测试的情况下,取得了66.8的ap,各项指标均明显优于其他模型规模相似的方法,在公平的比较条件下,比hrhrnet多出了0.9的增益,比dekr多出了1.1的增益,比adaptivepose++多出了0.8的增益。
[0115]
表1-2在crowdpose test上与其他方法的对比情况
[0116]
技术特征:
1.一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,包括以下步骤:s1、构建2d人体姿态估计网络,包括经过改造的骨干网络hrnet、卷积层和多分支结构;2d人体姿态估计网络中,图片输入经过改造的骨干网络hrnet得到图片特征,图片特征一方面输入卷积层,预测k个关键点热力图和一个中心点的热力图,图片特征另一方面按通道维度划分成k份,送入多分支结构,在多分支结构中,每个分支应用自适应卷积单独回归某一种类型的关键点,得到偏移量,偏移量为每个人体实例的关键点和中心点的差值,中心点为每个人体实例所有可见关键点的平均值;s2、选取训练数据集,对2d人体姿态估计网络进行训练;s3、输入图片至训练完成的2d人体姿态估计网络,得到热力图和偏移量,根据热力图和偏移量推理得到人体骨架。2.根据权利要求1所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s1中,所述改造的骨干网络hrnet由将通道-空间注意力模块嵌入骨干网络hrnet中得到;所述通道-空间注意力模块具体如下:为了使得网络更加关注目标人物关键点所在区域,忽略背景噪声,在骨干网络hrnet中嵌入通道-空间注意力模块;通道-空间注意力模块由通道注意力模块和空间注意力模块串行执行,对输入的特征图进行优化,为后续热力图的预测以及偏移量的回归提供更多更有效的特征;通道注意力模块中,输入特征图沿空间维度分别进行最大池化和平均池化得到两个1
×1×
c维的向量,之后这两个向量同时经过一个共享的mlp后再相加,再经过激活函数sigmod得到一个1
×1×
c维的向量,这个向量就是通道注意力,每个通道上的值代表每个通道的权重,输出特征图由通道注意力与输入特征图相乘得到;空间注意力模块中,输入特征图沿通道维度分别进行最大池化和平均池化得到两个h
×
w
×
1维的向量,之后将这两个向量拼接在一起,再经过卷积和激活函数sigmod得到一个h
×
w
×
1维的向量,这个向量就是空间注意力,每个像素上的值代表每个像素的权重,输出特征图由空间注意力与输入特征图相乘得到。3.根据权利要求1所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s1中,关键点的数量k为预先定义的。4.根据权利要求1所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s1中,自适应卷积具体如下:对于输入特征图,先经过卷积得到位置偏移,位置偏移是2n维的,2代表x和y轴,n代表通道个数,之后,在原先激活像素的基础上加上位置偏移得到目前激活的像素,再进行卷积操作,得到输出特征图;用于生成位置偏移的卷积核和用于生成输出特征图的卷积核一样,是可学习,可更新的;自适应卷积公式如式1-2所示:其中,out(q0)代表输出特征图的q0位置,in(q0+q
n
+δq
n
)代表输入特征图的(q0+q
n
+δq
n
)位置,δq
n
指输入特征图经过卷积得到的位置偏移,r代表感受野大小r={(1,1),(1,0),(1,-1),(-1,1),(-1,0),(-1,-1),(0,1),(0,0),(0,-1)},q
n
是对r中所列位置的枚举。
5.根据权利要求1所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s1中,多分支结构具体如下:多分支结构为每种类型的关键点单独设计了一个分支,每个分支的参数不共享,每个分支只关注某一类型的关键点,从而进行
‘
一对一’的特征提取以及回归偏移量过程;若某数据集中每个人包括n个关键点,则针对该数据集,在训练时,就将经过骨干网络得到的特征图按通道维度划分为n份,每份分别送入每个分支,每个分支都进行相同的操作,先经过自适应卷积优化特征图,再经过传统卷积得到偏移量。6.根据权利要求1所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s2的具体步骤如下:s2.1、选取训练数据集为ms-coco和crowdpose,并构造真实值;s2.2、选择数据增强策略、优化器、输入图像大小以及学习率;s2.3、构造损失函数;s2.4、训练2d人体姿态估计网络,将2d人体姿态估计网络预测得到的k个关键点热力图、一个中心点的热力图以及偏移量,和对应的真实值计算损失,并不断更新2d人体姿态估计网络的参数,直至达到设定的迭代次数,得到训练完成的2d人体姿态估计网络。7.根据权利要求6所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s2.1中,对于姿态估计任务,需要构建每个目标人物的关键点热力图真实值、中心点热力图真实值以及偏移量真实值,真实值的构建包括关键点热力图真实值h
*
、中心点热力图真实值c
*
以及偏移量真实值对于关键点热力图真实值h
*
,需要将目标人物p
n
的所有可见关键点p
nk
作为高斯分布的中心,使用高斯函数为每个关键点周围高斯半径以内的像素点分配一个热度值,构建出一个与原始图像相同大小的关键点热力图,其中每个像素上的值表示该像素是真实关键点的置信度;中心点热力图真实值c
*
的构建方法与关键点热力图真实值h
*
的类似,以目标人物p
n
的所有可见关键点p
nk
的平均值为中心点,以该中心点为高斯分布的中心,使用高斯函数为每个中心点周围高斯半径以内的像素点分配一个热度值,构建出一个与原始图像相同大小的中心点热力图,其中每个像素上的值表示该像素是真实中心点的置信度;偏移量真实值的构建方法为每个目标人物p
n
的所有可见关键点p
nk
与中心点的差,即8.根据权利要求6所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s2.2中,选择数据增强策略、优化器、输入图像大小以及学习率,具体如下:数据增强策略方面,采用多种数据增强策略,包括随机旋转、随机缩放、随机平移和随机翻转;优化器方面,使用自适应矩估计(adam)优化器;输入图像方面,将原始图像裁剪为512
×
512大小作为输入;学习率方面,对于ms-coco数据集,将初始学习率设定为10-3
,并在第90和120个epoch中
分别降至10-4
和10-5
,训练过程总计140个epoch;对于crowdpose数据集将基础学习率被设定为10-3
,并在第200和260个epoch中分别降至10-4
和10-5
,训练过程总计300个epoch。9.根据权利要求6所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,步骤s2.3中,损失函数包括两部分,热力图预测损失和偏移量回归损失。10.根据权利要求9所述的一种基于注意力机制的多分支2d人体姿态估计方法,其特征在于,热力图预测损失使用l2 loss对热力图的预测进行约束,其计算公式如式1-3所示:其中,是f-范数;h和h
*
分别表示预测得到的关键点热力图和关键点热力图真实值;c和c
*
分别表示预测到的中心点热力图和中心点热力图真实值;偏移量回归损失使用归一化的smooth l1 loss对偏移量的回归进行约束,其计算公式如式1-4所示:其中,n是真实值姿态的位置的集合,o
i
和分别代表预测得到的偏移量和偏移量真实值;整体的损失函数是偏移量回归损失和热力图预测损失之和,其计算公式如式1-5所示:loss=loss
offset
+loss
heatmap
(1-5)。
技术总结
本发明公开了一种基于注意力机制的多分支2D人体姿态估计方法。所述方法包括以下步骤:构建2D人体姿态估计网络,包括经过改造的骨干网络HRnet、卷积层和多分支结构;选取训练数据集,对2D人体姿态估计网络进行训练;输入图片至训练完成的2D人体姿态估计网络,得到热力图和偏移量,根据热力图和偏移量推理得到人体骨架。本发明能够显著提升未见过场景的泛化能力,在不同的场景和任务中发挥出优秀的性能。能。能。
技术研发人员:刘琦 郭靖丰 林锦濠
受保护的技术使用者:人工智能与数字经济广东省实验室(广州)
技术研发日:2023.06.06
技术公布日:2023/10/6
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/