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

基于动态轻量高分辨率网络的人体姿态估计方法

2022-04-13 23:43:18 来源:中国专利 TAG:


1.本发明涉及深度学习、计算机视觉技术领域,具体是涉及基于动态轻量高分辨率网络的人体姿态估计方法。


背景技术:

2.人体姿态估计,即对图像或视频中重要的人体关节或部位的位置进行检测,是许多计算机视觉技术领域下游应用(如行为识别、人机交互、视频监控等)的前置任务。在人体姿态估计的应用中,特别是在有限的计算资源与设备条件下进行实时应用时,我们不仅要追求更高的检测精度,而且更要保证其具有较高的计算效率。现阶段大多数关于人体姿态估计的方法研究都采用了卷积神经网络来进行人体关键点特征信息的提取与检测,此类卷积神经网络可被称为人体姿态估计网络。而为了对人体关键点进行像素层面上的精确检测,在上述的人体姿态估计网络中,具有高分辨率表示的特征图是不可或缺的。高分辨率网络得益于其独特的并行多分辨率网络分支结构,能够提取包含多尺度信息的高分辨率特征图,其相较于其他卷积神经网络所提取的特征图,具有更丰富、更全面的特征表示。然而,尽管利用高分辨率网络进行人体关键点检测能够达到很高的精度,同时也会伴随着巨大的计算开销。通过对网络的宽度和深度进行缩减可以得到轻量化的高分辨率网络,从而减小计算开销,但是这样的方法亦会使其检测精度大幅下降。
3.除了网络整体主干结构的设计之外,网络模块的设计同时也是影响卷积神经网络性能的决定性环节。网络模块指的是把卷积、上下采样等一系列以某种固定序列反复出现在网络中的操作集成到一起得到的一种模块化结构,通常作为卷积神经网络主干结构设计的基本组件。现阶段针对高分辨率网络的网络模块设计都是静态的,即其中包含的操作类型和数量都与其输入数据无关。网络模块中各种操作在不同输入数据上的计算效率有高有低,并受到数据的分辨率大小、特征通道数量等因素影响,然而高分辨率网络中包含着众多不同尺度下的特征数据,因此静态的网络模块并不能很好地利用其并行多分辨率网络分支结构的多尺度特点,难以使其达到最优化的计算效率。
4.另外,传统的人体姿态估计网络都只是通过单一重复的卷积运算操作来提取图像中的人体关键点特征,由于受到卷积感受野大小的限制,这样提取出的特征图只利用了图像的局部像素信息,而忽略了远距离像素间的上下文关系。这种网络只能学习到图像局部区域中人体部位的像素分布模式,因为缺乏全局信息的辅助,而无法很好地把握所有人体部位之间的空间上下文关系,造成图像特征提取的偏差。增大卷积层所使用的卷积核的尺寸可以扩大其在图像上每一次运算的感受野范围,从而捕捉到更多的图像空间上下文信息,但一味地增大卷积核尺寸会致使网络的计算复杂度逐步上升,不利于网络的轻量化设计。因此,要想设计更轻量的高分辨率网络,并使其具有更可靠的性能,需采用更加高效的方式来增强其捕捉空间上下文信息的能力。


技术实现要素:

5.针对传统人体姿态估计网络存在的上述问题,本发明设计了一种动态轻量高分辨率网络(dynamic lightweight high-resolution network,dite-hrnet),首先对高分辨率网络的宽度和深度进行缩减得到一个轻量级高分辨率网络,然后设计一种新型的动态金字塔卷积以及一种高效的自适应上下文信息建模方法,并将它们嵌入到为高分辨率网络特别设计的两种动态上下文模块中,以增强网络提取多尺度人体关键点特征和捕捉空间上下文信息的能力,使网络具有更高的计算效率。
6.本发明所述的基于动态轻量高分辨率网络的人体姿态估计方法,所述方法的步骤为:步骤1、获取人体姿态估计数据集,包括训练集和测试集,并对其进行数据预处理;步骤2、构建新型人体姿态估计网络dite-hrnet,所述新型人体姿态估计网络dite-hrnet由1个高分辨率主干网络和3个不同分辨率的分支网络组成,主干网络和3个分支网络分别包含不同超参数配置的动态上下文模块和多尺度融合模块;所述新型人体姿态估计网络dite-hrnet包含4个阶段,在第2、3、4阶段开始时,将3个分支网络逐一添加至主干网络,形成多分支并行的网络结构,相邻阶段之间经由过渡卷积模块使每个新添加的分支网络的输出具有前一个分支网络或主干网络1/2倍的分辨率和2倍的通道数量;所述动态上下文模块为动态多尺度上下文模块或动态全局上下文模块,网络的第1阶段包含1个步长为2的3
×
3卷积层和1个动态全局上下文模块;网络的第2、3、4个阶段中的主干网络和分支网络由跨分辨率单元堆叠构成,每个单元包含2个动态多尺度上下文模块和1个多尺度融合模块;主干网络全程保持高分辨率的特征输出,并通过多尺度融合模块将该高分辨率特征输出与来自所有分支网络的多种尺度下的特征输出进行重复跨分支融合来生成网络的最终输出;步骤3、使用步骤1中得到的训练集数据,对所述新型人体姿态估计网络dite-hrnet进行训练;步骤4、使用步骤3训练得到的人体姿态估计网络模型在步骤1中得到的测试集数据上进行测试。
7.进一步的,所述动态多尺度上下文模块和动态全局上下文模块均先使用通道分割操作将所有输入通道平均分成数量相等的2组,从而在模块内部形成2个分支,并在这2个分支上分别执行不同的操作,然后把2个分支的输出在通道维度上重新拼接,最后使用通道混洗来在具有不同特征表示的2组通道之间进行信息交换。
8.进一步的,在所述动态全局上下文模块中,其中一个分支上依次执行1个步长为2的3
×
3动态深度卷积、1个全局上下文建模操作和1个1
×
1动态卷积,而另一个分支上则依次执行1个3
×
3动态深度卷积、1个全局上下文建模操作、1个1
×
1动态卷积和1个步长为2的3
×
3动态深度卷积。
9.进一步的,在所述动态多尺度上下文模块中,其中一个分支上依次执行1个密集上下文建模操作、1个动态金字塔卷积和1个全局上下文建模操作,而另一个分支上不执行任何操作。
10.进一步的,所述动态金字塔卷积的实施步骤为:a)使用通道分割操作来将所有输入特征通道平均分成数量相等的g组;
b)为每组通道都分配n个不同卷积核,其中每个卷积核的权重参数都是随机生成的,不同组的卷积核大小不同,g组通道一共有g
×
n个卷积核;c)根据各组通道的不同输入特征来为同一组通道上的n个卷积核计算注意力权重,g组通道一共有g组注意力权重;d)利用所述注意力权重对同一组通道上的n个卷积核的权重参数进行加权融合,g组通道一共有g组加权融合后的卷积核权重参数;e)使用加权融合后的g组卷积核权重参数在其各自组的通道上分别进行具有不同卷积核大小的卷积操作,g组通道一共有g组不同尺度的卷积特征输出;f)把g组卷积特征输出在通道维度上重新拼接起来;d)使用通道混洗操作来在具有不同尺度特征表示的g组通道之间进行信息交换。
11.进一步的,所述注意力权重的计算步骤为:先将输入特征经过全局平均池化,得到一个特征向量,将此向量经过一个全连接层映射为一个n维向量,此维数即对应所述为每组通道分配的卷积核数目n,再将此n维向量依次经过一个relu激活层、一个全连接层和一个sigmoid激活层,最终得到注意力权重。
12.进一步的,所述密集上下文建模操作的步骤为:在第n阶段,通过自适应上下文池化操作,来自所有n个分支的输入特征都被下采样至当前阶段中的最低特征分辨率hn×
wn;然后把所有下采样后的特征拼接到一起,再对这所有特征同时进行上下文重排操作;最后,再把经过重排的上下文特征全部上采样至其各自原有的分辨率,分发回到其各自所属的分支网络上,分别地进行上下文加权操作,自此实现密集上下文建模;在高分辨率网络的第k分支上,经过自适应上下文池化操作后的得到的新特征可以表示为:其中,acpool()()表示自适应上下文池化操作,hn和wn分别表示当前阶段最低特征分辨率的高和宽,xk表示第k分支上的原始特征;对来自所有分支的池化后的特征进行特征拼接和上下文重排操作后,得到的新特征可以表示为:其中,shift()表示上下文重排操作,cat()表示特征拼接操作;经过重排的上下文特征分发回到其各自所属的分支网络上,并与原始特征进行上下文加权操作,得到最终的输出特征,第k分支上的输出特征yk可以表示为:其中,weight()表示上下文加权操作,upsample()表示上采样操作。
13.进一步的,所述全局上下文建模操作的步骤为:先通过自适应上下文池化操作将当前分支网络上的特征下采样至分辨率为1
×
1,然后依次进行上下文重排和上下文加权操
train数据集上只采用256
×
256的模型输入图片尺寸;步骤4、将训练得到的不同版本的dite-hrnet网络模型分别在对应的coco val2017、coco test-dev2017和mpii val数据集上进行测试;对于coco2017和mpii数据集,本实施例分别采用使用oks指标(具体包含ap、ap50、ap75、apm、apl、ar等多种精度指标)和pckh指标来对测试精度进行评估,另外还对模型的参数量指标(# params)、计算量指标(flops)进行计算,以验证本发明模型的轻量性和高效性。
18.如图1所示,所述dite-hrnet共包含4个阶段,分别由1个高分辨率的主干网络和3个高分辨率到低分辨率的分支网络组成,这3个分支网络分别在第2、3、4阶段开始时被逐一添加到主干网络上,形成多分支并行的网络结构。与前一个分支网络相比,每个新添加的分支网络的输出具有其1/2倍的分辨率和2倍的通道数量,这些变化是由相邻阶段之间的过渡卷积模块实现的。过渡卷积模块中包含一系列的3
×
3深度可分离卷积,当需要对特征进行下采样时设其步长为2,而当需要维持原有特征分辨率时则设步长为1;主干网络全程保持高分辨率的特征输出,并通过多尺度融合模块将该高分辨率特征输出与来自所有分支网络的多种尺度下的特征输出进行重复跨分支融合来生成网络的最终输出;多分辨率特征的融合由多尺度融合模块实现,即先通过下采样和上采样操作来使来自其他所有分支网络的特征都与当前分支网络上的特征具有相同的分辨率和通道数,再将所有特征进行按元素相加,即实现了当前分支网络上的特征与其他所有分支网络上特征的融合。将该多尺度融合模块应用到所有分支网络上,则能实现所有网络分支上多分辨率特征之间的反复融合。
19.如图2所示,网络包含两种动态上下文模块,一种是动态多尺度上下文(dynamic muti-scale context,dmc)模块,如图2中的(a)所示,另一种动态全局上下文(dynamic global context,dgc)模块,如图2中的(b)所示;这两种模块都是先使用了通道分割操作来将所有输入通道平均分成数量相等的2组,从而在模块内部形成2个分支,并在这2个分支上分别执行不同的操作,然后把2个分支的输出在通道维度上重新拼接起来,最后使用通道混洗操作来在具有不同特征表示的2组通道之间进行信息交换。这样的结构既降低了模块本身的参数量和计算量,又带来了更多样化、更丰富的特征表示。以上两种模块之间的主要区别就是在2个分支上所进行的操作不同。在dmc模块中,其中一个分支上依次执行1个密集上下文建模(densecontext modeling,dcm)操作、1个动态金字塔卷积和1个全局上下文建模(global context modeling,gcm)操作,而另一个分支上则不执行任何操作。在dgc模块中,其中一个分支上依次执行1个步长为2的3
×
3动态深度卷积、1个gcm操作和1个1
×
1动态卷积,而另一个分支上则依次执行1个3
×
3动态深度卷积、1个gcm操作、1个1
×
1动态卷积和1个步长为2的3
×
3动态深度卷积。其中,dcm和gcm都是本发明设计的一种自适应上下文建模方法的实例化操作。
20.所述新型人体姿态估计网络dite-hrnet的具体结构与参数如下:网络的第1阶段包含1个步长为2的3
×
3卷积层和1个dgc模块,使得分辨率降低到网络起始输入分辨率的1/4倍,通道数由3增加到32;网络的第2、3、4个阶段中的主干网络和分支网络主要由一种跨分辨率单元堆叠构成,该单元包含2个dmc模块和1个多尺度融合模块;网络的第2阶段,经由过渡卷积模块,主干网络上分辨率不变,通道数增加到40,新添加的分支网络上分辨率降低到网络起始输入分辨率的1/8倍,通道数增加到80;网络的第3阶段,经由过渡卷积模块,新添加的分支网络上分辨率降低到网络起始输入分辨率的1/16倍,
通道数增加到160,其他部分网络分辨率与通道数不变;网络的第4阶段,经由过渡卷积模块,新添加的分支网络上分辨率降低到网络起始输入分辨率的1/32倍,通道数增加到320,其他部分网络分辨率与通道数不变。
21.本实施例公开的基于动态轻量高分辨率网络的人体姿态估计方法中,动态卷积、动态深度卷积和动态金字塔卷积的区别与联系在于:动态卷积是一种能够根据不同输入特征动态生成合适的卷积核权重参数的新型卷积,其每个卷积核的权重参数都同时融合了多个随机生成的卷积核的权重参数,且利用注意力机制来自动学习特征,为这些随机生成的卷积核权重参数动态地分配注意力权重,所有参与融合的卷积核权重参数在先各自与其相应的注意力权重相乘后再共同相加得到新生成的卷积核权重参数。其中,n个随机生成的卷积核的注意力权重计算流程为:先将输入特征经过全局平均池化,得到一个特征向量,将此向量经过一个全连接层映射为一个n维向量,再将此n维向量依次经过一个relu激活层、一个全连接层和一个sigmoid激活层,最终得到注意力权重。参与融合的卷积核的数量n作为一个可供调节的超参数,以对每个动态卷积进行计算效率的优化。
22.动态深度卷积与动态卷积的关系基本类似于深度卷积与标准卷积的关系,即动态深度卷积是动态卷积在每个卷积核都只负责一个特征通道时的一种特例,其输出通道数与输入通道数保持一致。
23.而动态金字塔卷积是对动态深度卷积的进一步应用改进,其将具有不同卷积核大小的多个动态深度卷积合并到一个单独的卷积层中,使一次卷积的输出同时包含多个尺度下的特征表示,且在合并过程中不会增加网络的宽度,其输出通道数与输入通道数保持一致。动态金字塔卷积的具体实现流程为:先使用通道分割操作来将所有输入通道平均分成数量相等的g组,并在这g组通道上分别执行具有不同卷积核大小的g个动态深度卷积,然后把g组通道的输出在通道维度上重新拼接起来,最后使用通道混洗操作来在具有不同尺度特征表示的g组通道之间进行信息交换。其中,若,则第i组通道上的动态深度卷积的卷积核大小即为。因此,我们可以通过分别调节g和n这两个超参数来对每个动态金字塔卷积进行计算效率的优化。在分辨率较高的分支网络上,较低的g和较高的n能使动态金字塔卷积更为高效;而在分辨率较低的分支网络上,较高的g和较低的n则更具性价比。例如,可在主干网络和3个分支网络上,分别设置g为1、1、2、4,分别设置n为 4、4、2、1。动态深度卷积其实可以看作是动态金字塔卷积在g等于1时的一种特例。图3展示了动态金字塔卷积在g、n都等于4时的结构。
24.如图5所示,本实施例采用了自适应上下文建模方法,其可以被抽象为以下三个步骤:(a) 自适应上下文池化,如图4所示,先通过一个1
×
1卷积和一个softmax激活层来生成一个掩码,再将该掩码与输入特征进行矩阵相乘,便获得一个经过下采样后的空间上下文特征;(b) 上下文重排,依次通过一个1
×
1卷积、一个relu激活层、一个1
×
1卷积和一个sigmoid激活层来按照空间相关性对上下文特征进行重新排列;(c) 上下文加权,使用上下文特征对输入特征进行加权,一般采用二者按元素相乘的方式。
25.如图5所示,本实施例公开的基于动态轻量高分辨率网络的人体姿态估计方法中,一种自适应上下文建模方法的两种应用实例操作如下:
(1)密集上下文建模(densecontext modeling,dcm)操作:dcm是一种把高分辨率网络同一阶段中的所有分支网络的特征聚集到一起来进行自适应上下文建模的操作。在第n阶段,通过自适应上下文池化操作,来自所有n个分支的输入特征都被下采样至当前阶段中的最低特征分辨率hn×
wn(即第n分支网络上特征的分辨率)。然后把所有下采样后的特征拼接到一起,再对这所有特征同时进行上下文重排操作。最后,再把经过重排的上下文特征全部上采样至其各自原有的分辨率,分发回到其各自所属的分支网络上,分别地进行上下文加权操作,自此实现密集上下文建模。
26.在高分辨率网络的第k分支上,经过自适应上下文池化操作后的得到的新特征可以表示为:其中,acpool()()表示自适应上下文池化操作,hn和wn分别表示当前阶段最低特征分辨率(即为池化的目标分辨率)的高和宽,xk表示第k分支上的原始特征;对来自所有分支的池化后的特征进行特征拼接和上下文重排操作后,得到的新特征可以表示为:其中,shift()表示上下文重排操作,cat()表示特征拼接操作;经过重排的上下文特征分发回到其各自所属的分支网络上,并与原始特征进行上下文加权操作,得到最终的输出特征,第k分支上的输出特征yk可以表示为:其中,weight()表示上下文加权操作,upsample()表示上采样操作。
27.(2)全局上下文建模(global context modeling,gcm)操作:gcm则是一种在高分辨率网络的单个分支网络上独立地进行自适应上下文建模的操作。即是先通过自适应上下文池化操作将当前分支网络上的特征下采样至分辨率为1
×
1,然后依次进行上下文重排和上下文加权操作。第k分支上的最终输出特征yk可以表示为:。
28.为了验证方法的有效性,本发明在coco2017和mpii这两个广泛使用的人体姿态估计公开数据集上都进行了多组对比实验和消融实验,比较了本发明的方法与一些经典或先进的方法的性能优劣,并分析了本发明的各项技术细节对于整体方法效果的影响。
29.实验环境:本发明的所有实验均在安装有linux操作系统的计算机上进行,每台机器配备8张英伟达gtx 3090显卡。软件环境包括anaconda、python、pytorch、mmcv、mmpose等。
30.实验结果:(1)定量分析
表1 是在coco val2017数据集上的对比实验结果表1中:加粗代表该项指标的最优结果(精度指标只在轻量级网络之间作对比),下
划线代表在全部同为参数量指标(# params)或计算量指标(flops)最低的若干个模型中最高的精度指标结果。
31.如表1所示,在coco val2017数据集上进行测试,本发明设计的dite-hrnet-30模型以较低的参数量(#params)和计算量(flops),各项测试精度指标都超过了其他主流的轻量级网络,同时还超过了8-stage hourglass、cpn、simplebaseline等经典的大型人体姿态估计网络。与lite-hrnet-18、lite-hrnet-30相比较,本发明设计的dite-hrnet-18、dite-hrnet-30具有同样大小的参数量和计算量,却具有更高的测试精度,证明了本发明对网络结构进行技术改进的有效性。
32.表2 是在coco test-dev2017数据集上的对比实验结果其中,加粗代表该项指标的最优结果(精度指标只在轻量级网络之间作对比),下划线代表在全部同为参数量指标(#params)或计算量指标(flops)最低的若干个模型中最高的精度指标结果。
33.如表2所示,在coco test-dev2017数据集上进行测试,本发明提出的dite-hrnet-30模型以较低的参数量(#params)和计算量(flops),各项测试精度指标也都超过了其他主流的轻量级网络。与lite-hrnet-18、lite-hrnet-30相比较,本发明提出的dite-hrnet-18、dite-hrnet-30还是在具有同样大小的参数量和计算量的同时具有更高的测试精度,证明了本发明提出的模型具有更高的计算效率。
34.表3是在mpii val数据集上的对比实验结果
其中,表3中加粗代表该项指标的最优结果,下划线代表该项指标的第二优结果。
35.如表3所示,在mpii val数据集上的测试结果表明,与其他主流的轻量级网络相比较,本发明提出的dite-hrnet-30模型取得了最高的测试精度指标pckh@0.5值,同时又具有较低的参数量(#params)和计算量(flops)。本发明提出的小版本dite-hrnet模型(dite-hrnet-18)取得了与大版本lite-hrnet模型(lite-hrnet-30)相同的pckh@0.5值,而却仅有其一半的计算量,证明了本发明提出的模型的高效率优势。
36.(2)消融实验表4 是在coco val2017数据集上对dite-hrnet-18中超参数g和n不同配置的实验结果其中[ , , , ]内的每一个元素代表超参数g或n分别在第1、2、3、4分支(分别具有最高至最低的特征图分辨率)上的取值,带星号*的结果代表本实施例为模型选择的一组最佳超参数配置的结果,计算量指标(flops)以模型输入图片尺寸256
×
192为标准计算得到。
[0037]
如表4所示,通过对采用不同的超参数g和n配置的dite-hrnet-18模型在coco val2017数据集上进行实验测试发现,在高分辨网络的高分辨率分支上采用较高的n,而在低分辨率分支上采用较高的g,具有更高的性价比,能够更好地利用高分辨率网络的多尺度分支结构,在基本不增加计算成本的情况下最大限度地提升模型测试精度map值。其他表格中的实验结果都是在g为[1, 1, 2, 4]、n为[4, 4, 2, 1]的超参数配置下得到的。
[0038]
表5 是在coco val2017、mpii val数据集上对各项改进的消融实验结果其中,两个数据集上的计算量指标(flops)分别以模型输入图片尺寸256
×
192和256
×
256为标准计算得到,acm表示自适应上下文建模方法,dsc表示动态金字塔卷积。
[0039]
如表5所示,通过对dite-hrnet-18在coco val2017、mpii val数据集上分别进行各项网络结构改进的消融实验,证明了本发明提出的自适应上下文建模方法、动态金字塔卷积以及在网络模块结构设计上进行的其他改进的有效性,在几乎不增加参数量(#params)和计算量(flops)的前提下,有效地提升了模型的测试精度(map、pckh@0.5)。
[0040]
以上所述仅为本发明的优选方案,并非作为对本发明的进一步限定,凡是利用本发明说明书及附图内容所作的各种等效变化均在本发明的保护范围之内。
再多了解一些

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

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

相关文献