CN113221626B - 一种基于Non-local高分辨率网络的人体姿态估计方法 - Google Patents

一种基于Non-local高分辨率网络的人体姿态估计方法 Download PDF

Info

Publication number
CN113221626B
CN113221626B CN202110241318.9A CN202110241318A CN113221626B CN 113221626 B CN113221626 B CN 113221626B CN 202110241318 A CN202110241318 A CN 202110241318A CN 113221626 B CN113221626 B CN 113221626B
Authority
CN
China
Prior art keywords
convolution
resolution
branch
channel number
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110241318.9A
Other languages
English (en)
Other versions
CN113221626A (zh
Inventor
何宁
孙琪翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Union University
Original Assignee
Beijing Union University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Union University filed Critical Beijing Union University
Priority to CN202110241318.9A priority Critical patent/CN113221626B/zh
Publication of CN113221626A publication Critical patent/CN113221626A/zh
Application granted granted Critical
Publication of CN113221626B publication Critical patent/CN113221626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/30Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种基于Non‑local高分辨率网络的人体姿态估计方法,本方法新设计了非局部网络模块,残差连接允许将任意一个新的非局部网络模块***到任何网络中,而不破坏原有的网络结构,即本文算法可以使用高分辨率网络的初始预训练权重。通过非局部的操作可以保持输入的参数大小,非局部网络模块是可以改变输入值的,并且非局部网络的输入端和输出端,参数是相同的。在高分辨率网络的第4阶段,分辨率最小的模块上增加非局部模块,设定通道数为256,在这个阶段加入非局部模块的原因是因为这个阶段可以得到分辨率最低的特征,越小的分辨率包含有强语义信息的低层特征,在小分辨率特征的模块上增加非局部模块,突出主要特征,从而获得更好的实验结果。

Description

一种基于Non-local高分辨率网络的人体姿态估计方法
技术领域
本发明属于图像处理技术领域,具体涉及一种基于非局部高分辨率网络的人体姿态估计方法,可用于人体姿态估计、人体骨架提取时应用。
背景技术
人体姿态估计(Human Pose Estimation)是在给定的图像或视频中对人体的关键部位或者主要关节进行检测,最终输出人体全部或局部肢体相关参数(各个关节点的相对位置关系)的过程,例如人体轮廓、头部的位置与朝向、人体关节的位置和部位类别等。基于计算机视觉技术的人体行为识别在人类生活的众多领域得到广泛的应用,如视频监控、运动检索、人机交互、智能家居以及医疗保健等任务。人体姿态估计是计算机视觉中的基础问题。
从实现姿态估计的角度考虑主要有两种方法:自上而下方法和自下而上方法。自上而下的方法依赖检测器来检测人体实例,每个人都有一个边界框,然后将问题减少到单个人的姿态估计。Fang等人提出一个局部的多人人姿态估计(Regional Multi-personPose Estimation,RMPE)框架来减轻错误的检测结果对单人姿态估计带来的影响。Chen Y等人提出Cascaded Pyramid Network(CPN)方法,该方法在特征金字塔网络(FeaturePyramid Network)的基础上结合RefineNet来进一步优化难预测的关键点。类似的,Huang等人提出一个Coarse-Fine网络,利用多尺度监督并融合粗细特征来得到最终的预测结果。Xiao等人提出一个非常简单但是非常有效的网络来进行多人姿态估计和跟踪。自上而下方法在进行人体姿态估计时,会把大小不同的检测框统一到一个尺度进行学习,因此对尺度不敏感,对小尺度的人也相对容易预测;然而对于目标检测要求较高,如果检测有误差,后面很难恢复;另外运行时计算量与图片中的人数成正比,人越多,计算量越大。
自下而上的方法,首先要找到图片中的所有关键点,比如所有头部,左手,膝盖等。然后把这些关键点组装成一个个人。在引入深度学习后,Pishchulin等人提出DeepCut把分配问题建模成全连接图(Fully Connected Graph)中的整数线性规划(Integer LinearProgram,ILP)问题,之后很多工作围绕解决ILP问题展开,Iqbal等人提出可以局部地求解ILP问题,不过还是没有很好地解决这个问题。Insafutdinov等人提出DeeperCut用更深的ResNet来估计关键点,并使用依赖图像的成对的项和一个增量优化策略来提高推测效率。Levinkov等人提出了两种局部搜索算法可以单调收敛到局部最优,为ILP问题提供了一个可行的解决方案。Varadarajan等人结合人体内在的结构信息,提出一个贪婪的分配算法来降低ILP问题的复杂度。CaoZ等人提出的OpenPose把关键点之间的关系建模成关节引力场(Part Affinity Fields,PAFs),来帮助更好更快地分配关键点,其不论是准确率还是速度相较之前的方法都有了巨大的提升,第一次使多人姿态估计的速度可以达到实时的级别。接下来一些工作致力于同时学习关键点位置和怎么分配关键点,以免除复杂的分配后处理。Newell A等人提出Associative Embedding可以在预测关键点的同时预测一个标记热图(Tag Heatmap),用来帮助进行关键点组别分配。Nie等人提出的Generative PartitionNetwork利用从重心嵌入空间得到的全局信息进行局部判断,提高了推测的准确率和效率。Papandreou等人提出的PersonLab同时学习关键点和其相对位移,用来直接聚集同一个人的关键点。自下而上的方法,不受别的任务,即目标检测的误差影响;计算量与图像中有多少人无关,因此效率提升较大;然而对尺度较为敏感,对小尺度的人比较难预测。
上述深度学习的算法都是基于卷积神经网络,而现阶段针对图像的卷积运算都是在空间上进行局部卷积操作。例如,在常用的3×3卷积中,卷积滤波器有9个像素,目标像素的值仅参照自身和周围的8个像素来计算。这意味着卷积只能利用局部信息来计算目标像素,这就会因为看不到全局信息而造成一些偏差。通常为了缓解这个问题,会使用更大的卷积滤波器或有更多卷积层的深度网络。虽然带来了改善,但是也导致了计算效率低,优化困难的问题。针对以上问题,本文提出了一种基于非局部神经网络改进的人体姿态估计方法,能够从主干网络的层面解决这个问题,首先设计非局部神经网络模块,然后将该模块与目前最优人体姿态估计骨干网络高分辨率网络进行融合,最后本文设计了3种NLHR网络结构,在MPII(MPII Human Pose Dataset)和COCO人体关键点数据集上验证了相关算法的有效性。
发明内容
针对上述传统卷积神经网络存在的问题和缺点,提出一种利用非局部网络模块的NLHR网络结构,并设计一种新型网络结构NLHR(Non-localHigh-Resolution)网络,该网络结构可以在保持相对较小的参数量的情况下,大幅提高人体姿态估计的准确率。一种基于Non-local高分辨率网络的人体姿态估计方法,其特征在于包括如下步骤:
步骤1,获取图像,通过函数直接获取本地图像,要去RGB图像。
步骤2,利用的YOLOv3网络检测人体,获得人体包围框boundingbox(bbox)。
步骤3,将人体检测框的高度或宽度扩展到固定的长宽比:高:宽=4:3,然后将人体检测框从图像中裁切出来,并重新调整到固定大小256×192。
步骤4,人体骨架提取,将步骤3中的放入NLHR网络,运行语句:pythontools/train.py--cfgexperiments/coco/hrnet/w32_256x192_adam_lr1e-3.yaml。将人体骨架提取出来。有17个关键点。在这里本发明的主要贡献就是设计了新型网络NLHR网络,网络参数及流程如下:
网络的起始部分为两层步长为2,卷积核为3×3的卷积,使得分辨率降低到输入时的1/4,通道数变为64,之后是网络的主体结构,网络主体包含4个阶段、4个并行卷积分支。分辨率分别为1/4、1/8、1/16、1/32。
第1阶段包含4个Bottleneck残差单元,第1个残差单元经过三层卷积使通道数由64增加到256,然后经过3个通道数为256的Bottleneck残差单元。接下来进入transition1模块,在该模块分为两支,一支通过步长为1,卷积核为3×3的卷积,分辨率保持输入时的1/4,通道数变为32,记为x0。另外一支通过步长为2,卷积核为3×3的卷积,分辨率降为输入时的1/8,通道数变为64,记为x1
第2阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock。接着进入融合阶段,x0分为两支一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64。x1也为两支一支保持不变,另外一支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32。然后通道数相同的两两融合,成为新的x0和x1。接下来进入transition2模块,在该模块x0保持不变,x1分为两支,一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128,记为x2
第3阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock,x2进入通道数为128的4个连续的Basicblock。接着进入融合阶段,x0分为3支,第1支保持不变;第2支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128。x1分为3支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支保持不变;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128。x2分为3支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支保持不变。然后通道数相同的互相融合,成为新的x0,x1和x2。接下来进入transition3阶段,在该阶段x0和x1保持不变,x2分为两支,一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256,记为x3
第4阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock,x2进入通道数为128的4个连续的Basicblock,x3进入通道数为256的4个连续的Basicblock,然后经过非局部网络模块,经过该网络模块后输入与输出大小保持不变。接着进入融合阶段,x0分为4支,第1支保持不变;第2支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256。x1分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支保持不变;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256。x2分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支保持不变;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256。x3分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/32,通道数变为128;第4支保持不变。然后通道数相同的互相融合,成为新的x0,x1,x2和x3。接下来x0保持不变;x1通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;x2通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;x3通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32。然后4者相互融合。
接下来就是最后一层了,融合后的特征通过一个步长为1,卷积核为1×1的卷积,输出与数据集关键点数目对应的通道数。综上,对应的网络结构参数表可以参见表1,表1中,方括号内为模块结构,与之相乘的数字是残差单元的个数,最后一个数字为模块的个数。
表1高分辨率网络结构参数
非局部网络模块:
本质上高分辨率网络和传统网络一样都是使用计算机视觉任务的标准方法:CNN(Convolution Neural Networks)卷积神经网络。卷积神经网络是有局限性的,例如在5×5卷积中,卷积滤波器有25个像素,目标像素的值参照自身和周围的24个像素来计算。这就意味着卷积只能利用局部信息来计算目标像素,这就会因为看不到全局信息而造成误差。当然有很多方法可以缓解这个问题,比如使用更大的卷积滤波器或者更多卷积层的深度网络。但是这些方法往往会带来较大参数量,而结果的改善很有限。为了能解决的这个问题,本文算法引入非局部均值的概念。
非局部均值是由Buades等人提出的一种经典的滤波算法,本质上是一种新型的图像去噪技术,该方法充分利用了图像中的冗余信息,在去噪的同时能最大程度的保持图像的细节特征,其核心思想是当前像素的估计值由图像中与它具有相似邻域结构的像素加权平均得到。即在计算每个像素位置输出的时候,不再只和邻域计算,而是和图像中所有位置都计算相关性,然后将相关性作为一个权重,表示其他位置和当前待计算位置的相似度。非局部均值的定义如下:给定离散噪声图像v={v(i)|i∈I},对于像素i,估计值NL[v](i)被计算为图像中所有像素的加权平均值,如公式(1)所示:
其中权重族{w(i,j)}j取决于像素i和j之间的相似性,并且满足0≤w(i,j)≤1和∑jw(i,j)=1两个像素i和j之间的相似性取决于强度灰级向量v(Ni)和v(Nj)的相似性,其中Nk表示以像素k为中心固定大小的正方形邻域。该相似度定义为加权欧几里得激励的递减函数其中a>0是高斯和的标准偏差。
为了将非局部均值的概念和深度学习结合起来,要先介绍统计学和机器学习中的重要概念方差和协方差。它们是为随机变量定义的概念,方差描述的是单个随机变量与其均值之间的偏差;而协方差描述的是两个随机变量之间的相似性,如果两个随机变量的分布相似,它们的协方差很大。否则,它们的协方差很小。如果将特征图中的每个像素作为一个随机变量,计算所有像素之间的配对协方差,就可以根据每个预测像素在图像中与其他像素之间的相似性来增强或减弱每个预测像素的值。
为了实现对每个像素的全局参考,Wang等人结合上述非局部均值的特点,提出了一个泛化、简单、可直接嵌入到当前网络的非局部网络模块,可以捕获图像中的大范围依赖,首先给出非局部网络模块的具体公式:
其中i是一个输出位置(在空间,时间或时空)的索引,其响应将被计算。j是枚举所有可能位置的索引。x是输入信号(图像、序列、视频;通常是它们的特征),y是与x大小相同的输出信号。二元函数f计算i和所有j之间的关联系数(表示关系,例如近似度)。一元函数g计算输入信号在j位置的表示,响应由因子C(x)归一化。与卷积操作不同的是非局部运算要考虑所有位置因子而卷积操作卷积运算在局部邻域将输入的权重累加。
函数g使用的是一个线性嵌入函数g(xj)=Wgxj,其中Wg是一个可学习的权重矩阵,在实验中用1×1的卷积层实现。非局部网络模块结构如图非局网络模块所示
在高分辨率网络的第4阶段,分辨率最小的模块上增加非局部模块,设定通道数为256,在这个阶段加入非局部模块的原因是因为这个阶段可以得到分辨率最低的特征,越小的分辨率包含有强语义信息的低层特征,在小分辨率特征的模块上增加非局部模块,可以突出主要特征,从而可以获得更好的实验结果。具体结构如NLHRv3网络图所示。
步骤4,将经过上述网络得到的关键点热图和真值热图结果间的均方误差,其中P代表关键点,l代表关键点位置信息,y′p代表预测的关键点p的热图信息,yp表示真实的关键点的热图信息。如式(1)所示:
步骤5,生成包含有对应热图和关键点信息的json文件。
步骤6,运行语句:python visualization/plot_coco.Py--predictionoutput/coco/pose_hrnet/w32_256x192_adam_Ir1e-3/results/keypoints_val2017_results_0.json--save-path visualization/results/
步骤7,得到人体骨架图,并和原始图像重合显示如结果图所示。
与现有技术相比,本发明具有如下优点:
1、本发明设计了非局部网络模块,具体定义为公式(4):
zi=Wzyi+xi (4)
其中yi由公式(3)给出,“+xi”表示残差连接[9],当Wz的初始化是0时,残差连接允许将任意一个新的非局部网络模块***到任何网络中,而不破坏原有的网络结构,即本文算法可以使用高分辨率网络的初始预训练权重。通过公式(2)可以知道非局部的操作可以保持输入的参数大小,非局部网络模块是可以改变输入值的,并且非局部网络的输入端和输出端,参数是相同的。
2、本发明设计并验证了NLHR网络,在高分辨率网络的第4阶段,分辨率最小的模块上增加非局部模块,设定通道数为256,在这个阶段加入非局部模块的原因是因为这个阶段可以得到分辨率最低的特征,越小的分辨率包含有强语义信息的低层特征,在小分辨率特征的模块上增加非局部模块,可以突出主要特征,从而可以获得更好的实验结果。具体结构如图NLHR网络所示。
附图说明
图1本发明的流程图
图2非局部网络模块图
图3非局部网络模块图简化图
图4NLHR网络结构图
图5本发明的人体姿态估计结果图
具体实施方式
针对上述传统卷积神经网络存在的问题和缺点,提出一种利用非局部网络模块的NLHR网络结构,并设计一种新型网络结构NLHR(Non-localHigh-Resolution)网络,该网络结构可以在保持相对较小的参数量的情况下,大幅提高人体姿态估计的准确率。一种基于Non-local高分辨率网络的人体姿态估计方法,其特征在于包括如下步骤:
步骤1,获取图像,通过函数直接获取本地图像,要去RGB图像
步骤2,利用的YOLOv3网络检测人体,获得人体包围框boundingbox(bbox)。
步骤3,将人体检测框的高度或宽度扩展到固定的长宽比:高:宽=4:3,然后将人体检测框从图像中裁切出来,并重新调整到固定大小256×192。
步骤4,人体骨架提取,将步骤3中的放入NLHR网络,运行语句:pythontools/train.py--cfgexperiments/coco/hrnet/w32_256x192_adam_lr1e-3.yaml。将人体骨架提取出来。有17个关键点。在这里本发明的主要贡献就是设计了新型网络NLHR网络,网络参数及流程如下:
网络的起始部分为两层步长为2,卷积核为3×3的卷积,使得分辨率降低到输入时的1/4,通道数变为64,之后是网络的主体结构,网络主体包含4个阶段、4个并行卷积分支。分辨率分别为1/4、1/8、1/16、1/32。
第1阶段包含4个Bottleneck残差单元,第1个残差单元经过三层卷积使通道数由64增加到256,然后经过3个通道数为256的Bottleneck残差单元。接下来进入transition1模块,在该模块分为两支,一支通过步长为1,卷积核为3×3的卷积,分辨率保持输入时的1/4,通道数变为32,记为x0。另外一支通过步长为2,卷积核为3×3的卷积,分辨率降为输入时的1/8,通道数变为64,记为x1
第2阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock。接着进入融合阶段,x0分为两支一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64。x1也为两支一支保持不变,另外一支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32。然后通道数相同的两两融合,成为新的x0和x1。接下来进入transition2模块,在该模块x0保持不变,x1分为两支,一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为l/16,通道数变为128,记为x2
第3阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock,x2进入通道数为128的4个连续的Basicblock。接着进入融合阶段,x0分为3支,第1支保持不变;第2支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128。x1分为3支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支保持不变;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128。x2分为3支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支保持不变。然后通道数相同的互相融合,成为新的x0,x1和x2。接下来进入transition3阶段,在该阶段x0和x1保持不变,x2分为两支,一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256,记为x3
第4阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock,x2进入通道数为128的4个连续的Basicblock,x3进入通道数为256的4个连续的Basicblock,然后经过非局部网络模块,经过该网络模块后输入与输出大小保持不变。接着进入融合阶段,x0分为4支,第1支保持不变;第2支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256。x1分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支保持不变;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256。x2分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支保持不变;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256。x3分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/32,通道数变为128;第4支保持不变。然后通道数相同的互相融合,成为新的x0,x1,x2和x3。接下来x0保持不变;x1通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;x2通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;x3通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32。然后4者相互融合。
接下来就是最后一层了,融合后的特征通过一个步长为1,卷积核为1×1的卷积,输出与数据集关键点数目对应的通道数。综上,对应的网络结构参数表可以参见表2,表2中,方括号内为模块结构,与之相乘的数字是残差单元的个数,最后一个数字为模块的个数。
表2高分辨率网络结构参数
非局部网络模块:
本质上高分辨率网络和传统网络一样都是使用计算机视觉任务的标准方法:CNN(Convolution Neural Networks)卷积神经网络。卷积神经网络是有局限性的,例如在5×5卷积中,卷积滤波器有25个像素,目标像素的值参照自身和周围的24个像素来计算。这就意味着卷积只能利用局部信息来计算目标像素,这就会因为看不到全局信息而造成误差。当然有很多方法可以缓解这个问题,比如使用更大的卷积滤波器或者更多卷积层的深度网络。但是这些方法往往会带来较大参数量,而结果的改善很有限。为了能解决的这个问题,本文算法引入非局部均值的概念。
非局部均值是由Buades等人提出的一种经典的滤波算法,本质上是一种新型的图像去噪技术,该方法充分利用了图像中的冗余信息,在去噪的同时能最大程度的保持图像的细节特征,其核心思想是当前像素的估计值由图像中与它具有相似邻域结构的像素加权平均得到。即在计算每个像素位置输出的时候,不再只和邻域计算,而是和图像中所有位置都计算相关性,然后将相关性作为一个权重,表示其他位置和当前待计算位置的相似度。非局部均值的定义如下:给定离散噪声图像v={v(i)|i∈I},对于像素i,估计值NL[v](i)被计算为图像中所有像素的加权平均值,如公式(1)所示:
其中权重族{w(i,j)}j取决于像素i和j之间的相似性,并且满足0≤w(i,j)≤1和∑jw(i,j)=1两个像素i和j之间的相似性取决于强度灰级向量v(Ni)和v(Nj)的相似性,其中Nk表示以像素k为中心固定大小的正方形邻域。该相似度定义为加权欧几里得激励的递减函数其中a>0是高斯和的标准偏差。
为了将非局部均值的概念和深度学习结合起来,要先介绍统计学和机器学习中的重要概念方差和协方差。它们是为随机变量定义的概念,方差描述的是单个随机变量与其均值之间的偏差;而协方差描述的是两个随机变量之间的相似性,如果两个随机变量的分布相似,它们的协方差很大。否则,它们的协方差很小。如果将特征图中的每个像素作为一个随机变量,计算所有像素之间的配对协方差,就可以根据每个预测像素在图像中与其他像素之间的相似性来增强或减弱每个预测像素的值。
为了实现对每个像素的全局参考,Wang等人结合上述非局部均值的特点,提出了一个泛化、简单、可直接嵌入到当前网络的非局部网络模块,可以捕获图像中的大范围依赖,首先给出非局部网络模块的具体公式:
其中i是一个输出位置(在空间,时间或时空)的索引,其响应将被计算。j是枚举所有可能位置的索引。x是输入信号(图像、序列、视频;通常是它们的特征),y是与x大小相同的输出信号。二元函数f计算i和所有j之间的关联系数(表示关系,例如近似度)。一元函数g计算输入信号在j位置的表示,响应由因子C(x)归一化。与卷积操作不同的是非局部运算要考虑所有位置因子而卷积操作卷积运算在局部邻域将输入的权重累加。
函数g使用的是一个线性嵌入函数g(xj)=Wgxj,其中Wg是一个可学习的权重矩阵,在实验中用1×1的卷积层实现。非局部网络模块结构如图非局网络模块所示
在高分辨率网络的第4阶段,分辨率最小的模块上增加非局部模块,设定通道数为256,在这个阶段加入非局部模块的原因是因为这个阶段可以得到分辨率最低的特征,越小的分辨率包含有强语义信息的低层特征,在小分辨率特征的模块上增加非局部模块,可以突出主要特征,从而可以获得更好的实验结果。具体结构如NLHRv3网络图所示。
步骤4,将经过上述网络得到的关键点热图和真值热图结果间的均方误差,其中P代表关键点,1代表关键点位置信息,y′p代表预测的关键点p的热图信息,yp表示真实的关键点的热图信息。如式(3)所示:
步骤5,生成包含有对应热图和关键点信息的json文件。
步骤6,运行语句:python visualization/plot_coco.py--predictionoutput/coco/pose_hrnet/w32_256x192_adam_lr1e-3/results/keypoints_val2017_results_0.json--save-path visualization/results/
步骤7,得到人体骨架图,并和原始图像重合显示如结果图所示。
进一步实验证实:
本文首先在MPII数据集上分别用3个版本的NLHR网络进行实验,然后在COCO数据集上对最优版本的网络进行再次验证。
PCKh评价标准[17]。通过对测试图像中每个人进行明确的边界限定来获得检测准确率。给定边界框(h,w)框内的候选区域包含原始关键点坐标位置,控制相关阈值得到不同准确率来判断预测的关键点是否定位合理,选择阈值r=0.5。PCKh用于人体躯干大小代替头部框大小,将该尺度作为归一化其他部件的距离,距离采用欧式距离。如果检测关键点与标签关键点的欧式距离在该阈值范围内,则该检测结果是正确的。以第k类人体关键点为例,PCKh的计算方式如下:
其中,PCKh(k)是第k个关键点PCKh的值,其累加和的均值为最终结果,在第i个图片中的第k类人体关键点的标签值为对应关键点的预测结果为/>样本总数为N,以头部框的尺度sh结合距离归一化系数r为判断条件,该阈值越小表示评价标准越严格,[email protected]则表示当r=0.5时以距离阈值为0.5sh进行对真值与预测值距离比较。
OKS评价标准[18]。基于COCO评估指标OKS,AP是对于不同关键点类型和人物大小尺寸的归一化,是关键点之间的平均关键点相似度,在[0,1]之间,预测越接近原值则趋向1,反之趋向0。OKS定义为公式(6)
其中,d是真值坐标θ(p)与预测坐标之间的欧几里得距离,/> s为人体在图像中所占面积,ki为归一化因子,δ(vi>0)表示关键点可见性大于0。对于人体姿态估计AP为平均精确度,计算方法为公式(7):
其中,t为给定OKS的阈值处理分别取(0.50,0.55,...,0.90,0.95),预测准确率由测试集所有图片中人物的OKS指标计算得到。
实验结果
表3 MPII验证集上的实验结果
表4 COCO验证集上的实验结果
/>
表3人体姿态估计网络的参数量、GFLOPs和实验结果
/>

Claims (3)

1.一种基于Non-local高分辨率网络的人体姿态估计方法,其特征在于:包括如下步骤:
步骤1,获取图像,通过函数直接获取本地图像,去掉本地图像的RGB;
步骤2,利用的YOLOv3网络检测人体,获得人体包围框bbox;
步骤3,将人体检测框的高度或宽度扩展到固定比:高:宽=4:3,然后将人体检测框从图像中裁切出来,并重新调整到固定大小256×192;
步骤4,人体骨架提取,将步骤3中的人体检测框放入NLHR网络,运行语句将人体骨架提取出来;有17个关键点;NLHR网络参数及流程如下:
网络的起始部分为两层步长为2,卷积核为3×3的卷积,使得分辨率降低到输入时的1/4,通道数变为64,之后是网络的主体结构,网络主体包含4个阶段、4个并行卷积分支;分辨率分别为1/4、1/8、1/16、1/32;
步骤5,将经过上述网络得到的关键点热图和真值热图结果间的均方误差;
步骤6,生成包含有对应真值热图和关键点热图信息的json文件;
步骤7,运行语句,得到人体骨架图,并和原始图像重合显示;
步骤4的NLHR网络中,第1阶段包含4个Bottleneck残差单元,第1个残差单元经过三层卷积使通道数由64增加到256,然后经过3个通道数为256的Bottleneck残差单元;接下来进入transition1模块,在该模块分为两支,一支通过步长为1,卷积核为3×3的卷积,分辨率保持输入时的1/4,通道数变为32,记为x0;另外一支通过步长为2,卷积核为3×3的卷积,分辨率降为输入时的1/8,通道数变为64,记为x1
步骤4的NLHR网络中,第2阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock;接着进入融合阶段,x0分为两支一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;x1也为两支一支保持不变,另外一支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;然后通道数相同的两两融合,成为新的x0和x1;接下来进入transition2模块,在该模块x0保持不变,x1分为两支,一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128,记为x2
步骤4的NLHR网络中,第3阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock,x2进入通道数为128的4个连续的Basicblock;接着进入融合阶段,x0分为3支,第1支保持不变;第2支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;x1分为3支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支保持不变;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;x2分为3支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支保持不变;然后通道数相同的互相融合,成为新的x0,x1和x2;接下来进入transition3阶段,在该阶段x0和x1保持不变,x2分为两支,一支保持不变,另外一支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256,记为x3
步骤4的NLHR网络中,第4阶段,x0进入通道数为32的4个连续的Basicblock,x1进入通道数为64的4个连续的Basicblock,x2进入通道数为128的4个连续的Basicblock,x3进入通道数为256的4个连续的Basicblock,然后经过非局部网络模块,经过该网络模块后输入与输出大小保持不变;接着进入融合阶段,x0分为4支,第1支保持不变;第2支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/8,通道数变为64;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256;x1分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支保持不变;第3支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/16,通道数变为128;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256;x2分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支保持不变;第4支通过步长为2,卷积核为3×3的卷积,此时分辨率降为1/32,通道数变为256;x3分为4支,第1支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;第2支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/8,通道数变为64;第3支通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/32,通道数变为128;第4支保持不变;然后通道数相同的互相融合,成为新的x0,x1,x2和x3;接下来x0保持不变;x1通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;x2通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;x3通过步长为1,卷积核为1×1的卷积,此时分辨率升为1/4,通道数变为32;然后x0,x1,x2和x3相互融合。
2.根据权利要求1所述的一种基于Non-local高分辨率网络的人体姿态估计方法,其特征在于:步骤4的NLHR网络中,最后一层融合后的特征通过一个步长为1,卷积核为1×1的卷积,输出与数据集关键点数目对应的通道数。
3.根据权利要求1所述的一种基于Non-local高分辨率网络的人体姿态估计方法,其特征在于:非局部网络模块中:分辨率最小的模块上增加非局部模块,设定通道数为256,在这个阶段加入非局部模块的原因是因为这个阶段得到分辨率最低的特征,越小的分辨率包含有强语义信息的低层特征,在小分辨率特征的模块上增加非局部模块。
CN202110241318.9A 2021-03-04 2021-03-04 一种基于Non-local高分辨率网络的人体姿态估计方法 Active CN113221626B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110241318.9A CN113221626B (zh) 2021-03-04 2021-03-04 一种基于Non-local高分辨率网络的人体姿态估计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110241318.9A CN113221626B (zh) 2021-03-04 2021-03-04 一种基于Non-local高分辨率网络的人体姿态估计方法

Publications (2)

Publication Number Publication Date
CN113221626A CN113221626A (zh) 2021-08-06
CN113221626B true CN113221626B (zh) 2023-10-20

Family

ID=77084763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110241318.9A Active CN113221626B (zh) 2021-03-04 2021-03-04 一种基于Non-local高分辨率网络的人体姿态估计方法

Country Status (1)

Country Link
CN (1) CN113221626B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108229445A (zh) * 2018-02-09 2018-06-29 深圳市唯特视科技有限公司 一种基于级联金字塔网络的多人姿态估计方法
CN108334847A (zh) * 2018-02-06 2018-07-27 哈尔滨工业大学 一种真实场景下的基于深度学习的人脸识别方法
CN109523470A (zh) * 2018-11-21 2019-03-26 四川长虹电器股份有限公司 一种深度图像超分辨率重建方法及***
CN110175566A (zh) * 2019-05-27 2019-08-27 大连理工大学 一种基于rgbd融合网络的手部姿态估计***及方法
CN110175575A (zh) * 2019-05-29 2019-08-27 南京邮电大学 一种基于新型高分辨率网络模型的单人姿态估计方法
CN110930306A (zh) * 2019-10-28 2020-03-27 杭州电子科技大学 一种基于非局部感知的深度图超分辨率重建网络构建方法
CN110969105A (zh) * 2019-11-22 2020-04-07 清华大学深圳国际研究生院 一种人体姿态估计方法
US10701394B1 (en) * 2016-11-10 2020-06-30 Twitter, Inc. Real-time video super-resolution with spatio-temporal networks and motion compensation
CN111460928A (zh) * 2020-03-17 2020-07-28 中国科学院计算技术研究所 一种人体动作识别***及方法
CN111597976A (zh) * 2020-05-14 2020-08-28 杭州相芯科技有限公司 一种基于rgbd相机的多人三维姿态估计方法
CN112131959A (zh) * 2020-08-28 2020-12-25 浙江工业大学 一种基于多尺度特征强化的2d人体姿态估计方法
CN112232106A (zh) * 2020-08-12 2021-01-15 北京工业大学 一种二维到三维人体姿态估计方法
CN112232134A (zh) * 2020-09-18 2021-01-15 杭州电子科技大学 一种基于沙漏网络结合注意力机制的人体姿态估计方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10937189B2 (en) * 2018-01-18 2021-03-02 Samsung Electronics Co., Ltd. Pose estimation method, method of displaying virtual object using estimated pose, and apparatuses performing the same

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10701394B1 (en) * 2016-11-10 2020-06-30 Twitter, Inc. Real-time video super-resolution with spatio-temporal networks and motion compensation
CN108334847A (zh) * 2018-02-06 2018-07-27 哈尔滨工业大学 一种真实场景下的基于深度学习的人脸识别方法
CN108229445A (zh) * 2018-02-09 2018-06-29 深圳市唯特视科技有限公司 一种基于级联金字塔网络的多人姿态估计方法
CN109523470A (zh) * 2018-11-21 2019-03-26 四川长虹电器股份有限公司 一种深度图像超分辨率重建方法及***
CN110175566A (zh) * 2019-05-27 2019-08-27 大连理工大学 一种基于rgbd融合网络的手部姿态估计***及方法
CN110175575A (zh) * 2019-05-29 2019-08-27 南京邮电大学 一种基于新型高分辨率网络模型的单人姿态估计方法
CN110930306A (zh) * 2019-10-28 2020-03-27 杭州电子科技大学 一种基于非局部感知的深度图超分辨率重建网络构建方法
CN110969105A (zh) * 2019-11-22 2020-04-07 清华大学深圳国际研究生院 一种人体姿态估计方法
CN111460928A (zh) * 2020-03-17 2020-07-28 中国科学院计算技术研究所 一种人体动作识别***及方法
CN111597976A (zh) * 2020-05-14 2020-08-28 杭州相芯科技有限公司 一种基于rgbd相机的多人三维姿态估计方法
CN112232106A (zh) * 2020-08-12 2021-01-15 北京工业大学 一种二维到三维人体姿态估计方法
CN112131959A (zh) * 2020-08-28 2020-12-25 浙江工业大学 一种基于多尺度特征强化的2d人体姿态估计方法
CN112232134A (zh) * 2020-09-18 2021-01-15 杭州电子科技大学 一种基于沙漏网络结合注意力机制的人体姿态估计方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
基于关键帧的双流卷积网络的人体动作识别方法;张聪聪;何宁;;南京信息工程大学学报(自然科学版)(第06期);第96-101页 *
基于时序卷积非局部平均神经网络对地铁司机动作边界预测的研究;温博阁;;铁道机车与动车(第07期);第7-11页 *
基于深度学习的动态场景相机姿态估计方法;路昊;石敏;李昊;朱登明;;高技术通讯(第01期);第45-51页 *

Also Published As

Publication number Publication date
CN113221626A (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
CN106709461B (zh) 基于视频的行为识别方法及装置
Zhao et al. Saliency detection by multi-context deep learning
CN111709311B (zh) 一种基于多尺度卷积特征融合的行人重识别方法
CN109583340B (zh) 一种基于深度学习的视频目标检测方法
CN112560656B (zh) 一种联合注意力机制端到端训练的行人多目标跟踪方法
CN110210551A (zh) 一种基于自适应主体敏感的视觉目标跟踪方法
CN111259850A (zh) 一种融合随机批掩膜和多尺度表征学习的行人重识别方法
CN110781838A (zh) 一种复杂场景下行人的多模态轨迹预测方法
CN109711316A (zh) 一种行人重识别方法、装置、设备及存储介质
CN111259786A (zh) 一种基于视频的外观和运动信息同步增强的行人重识别方法
CN110765906A (zh) 一种基于关键点的行人检测算法
CN111666843A (zh) 一种基于全局特征和局部特征拼接的行人重识别方法
CN109766873B (zh) 一种混合可变形卷积的行人再识别方法
CN110163117B (zh) 一种基于自激励判别性特征学习的行人重识别方法
CN109145836A (zh) 基于深度学习网络和卡尔曼滤波的船只目标视频检测方法
CN108830170A (zh) 一种基于分层特征表示的端到端目标跟踪方法
Munir et al. LDNet: End-to-end lane marking detection approach using a dynamic vision sensor
Zhang et al. A coarse to fine indoor visual localization method using environmental semantic information
CN111738074B (zh) 基于弱监督学习的行人属性识别方法、***及装置
CN111027586A (zh) 一种基于新型响应图融合的目标跟踪方法
CN113781519A (zh) 目标跟踪方法和目标跟踪装置
CN109697727A (zh) 基于相关滤波和度量学习的目标跟踪方法、***及存储介质
CN116645694A (zh) 基于动态自进化信息抽取和对齐的文本-目标检索方法
CN111275694A (zh) 一种注意力机制引导的递进式划分人体解析模型及方法
CN114066844A (zh) 一种基于注意力叠加与特征融合的肺炎x光片图像分析模型及分析方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant