
导航:X技术最新专利计算;推算;计数设备的制造及其应用技术
1.本发明涉及计算机视觉和模式识别技术领域,尤其涉及一种人体姿态估计分组模型训练方法、姿态估计方法及装置。
2.多人姿态估计的任务是在图像中定位人体关节。现有的多人姿态估计主要分为两种框架。一种使用人体检测算法的框架,首先检测图像中的人,然后进行单人姿态估计(自顶向下框架)。另一种方法则是自底向上的框架,可以一次估计出图像中所有人的姿势。前者表现得更准确,但计算成本更高。后者效率更高,但准确性较低。
3.自底向上的方法通常采用先检测后分组的两阶段任务,分组方法成为自底向上姿态估计的关键因素。以往的工作通常通过使用整数线性规划、启发式贪婪解析或聚类将分组阶段视为后处理。
4.对于自底向上的方法,问题在于,以往的方法学习到的分组线索可能在一些常见场景中效率低下,导致次优解。例如:利用关节点进行骨架连接的方法,要先检测图像中的所有关节点,然后将关节点与骨架结构进行分组。然而,当关节点在图像中被遮挡或缺失时,原本属于一个人的关节点可能被瓜分到不同的两个人上,其后处理过程非常复杂。
5.此外,利用联想嵌入的方法,利用嵌入向量作为分组线索,但是随着图像中人体对象数量的增加,嵌入空间的训练会变得更加困难。该方法采用无位置信息的外观特征进行嵌入预测。因此,如果两个人外表相似,例如穿着相似的衣服,即使他们相距很远,网络也容易为他们预测相似的嵌入向量。
6.仅此,亟需一种人体姿态估计和分组处理方法,在多人姿态评估的场景中,简化处理过程,并提高对多人姿态评估和分组的识别精度。
7.本发明实施例提供了一种人体姿态估计分组模型训练方法、姿态估计方法及装置,以解决在多人姿态识别场景下对不同人体对象关节点分组的错误率高的问题。
10.获取多个样本图像,每个样本图像中包含多开云体育控股科技有限公司个人体对象,标记各样本图像中每个人体对象对应的第一设定数量的关节点,将各关节点按照各人体对象分组,生成训练样本集;
12.先由预设骨架网络获取样本图像的关节特征图,将所述关节特征图分别输入多路径结构中第二设定数量的多尺度转换层以针对每个关节点分别输出一个热图,将每个关节点对应的多个热图中热值最大的作为该关节点的最终热图,其中,各多尺度转换层采用可变形卷积和不同扩张速率的空洞卷积,每个最终热图中都包含多个候选关节点;
13.将各关节点的最终热图分别与所述关节特征图连接生成偏移图,将各关节点对应的偏移图输入一个多尺度转换层中以输出相应的长程偏移量图和局部中心偏移量图,所述长程偏移量图的张量值表示各候选关节点到各人体对象中心点的预估坐标差值,所述局部中心偏移量图的张量值表示各人体对象中心点周围设定区域内的点到对应真实人体中心点的偏移量;
14.根据各关节点对应的长程偏移量图和局部中心偏移量图计算各候选关节点到各真实人体对象中心点的精细偏移量;
15.对各最终热图中获得的所有候选关节点构建一个优先队列,每一次迭代中,各候选关节点以热图值递减的顺序输出所述优先队列,对输出的候选关节点进行非极大值抑制,移除所述优先队列中与该候选关节点类型相同且距离在设定半径范围内的候选关节点;将精细偏移量相差倍数在设定数值以内的候选关节点划分至同一人体对象分组;
16.采用所述训练样本集对所述预设神经网络模型进行训练,得到人体姿态估计分组模型。
17.在一些实施例中,所述多尺度转换层中,输入的所述关节特征图由变形卷积和形状变换模块输出第一特征图,由尺度卷积经激活函数处理得到第二特征图,所述第二特征图与经过重复变换的常规矩阵相乘得到第三特征图,将所述第一特征图与所述第三特征图输入批处理矩阵乘法模块并输出第四特征图,将所述第四特征图经可变性卷积层处理后与所述关节特征图相加得到所述关节特征图尺寸相同的热图。
19.在一些实施例中,所述尺度卷积是由所述常规矩阵与设定比例因子相乘得到的。
20.在一些实施例中,所述预设骨架网络为hrnet网络、hourglass网络或resnet网络。
21.在一些实施例中,所述设定区域由覆盖人体对象的最小长方体框按照设定比例缩小得到,所述设定比例为0.15。
22.在一些实施例中,精细偏移量相差倍数在设定数值以内的候选关节点分组为同一人体对象中,所述设定数值为0.45。
24.获取待评估图像,将所述待评估图像输入如上述的人体姿态估计分组模型训练方法中的人体姿态估计分组模型,以得到所述待评估图像中各人体对象的预测关节点及其分组结果。
25.另一方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
26.另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
28.本发明所述人体姿态估计分组模型训练方法、姿态估计方法及装置,基于多路径结构分别以不同扩张速率进行空洞卷积,并同时进行变形卷积,能够更好地适应多人姿态识别场景下不同尺寸和形状人体对象的特征提取需求。基于长程偏移量图和局部中心偏移量图计算各候选关节点到各真实人体对象中心点的精细偏移量,在非极大值抑制操作的基础上,将精细偏移量相差倍数在设定数值以内的候选关节点划分至同一人体对象分组,能
够在多人姿态识别场景中保证各关节点分组正确率的前提下,降低计算复杂度,极大节约算力,提高识别效率。
29.本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在书面说明及其权利要求书以及附图中具体指出的结构实现到并获得。
30.本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
31.此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
32.图1为本发明一实施例所述人体姿态估计分组模型训练方法中预设神经网络模型的结构示意图;
35.图4为本发明一实施例所述人体姿态估计分组模型训练方法中长程偏移量、局部中心偏移量和精细偏移量的关系图;
36.图5为本发明一实施例所述人体姿态估计分组模型训练方法中对一样本图像中各候选关节点对应的精细偏移量示意图。
37.为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
38.在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
39.应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
40.在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。
41.在计算机识别领域中,多人姿态评估识别属于热门研究。通常情况下,多人姿态估计主要分为两种框架。一种是自顶向下框架,使用人体检测算法的框架,首先检测图像中的人,然后进行单人姿态估计。另一种方法则是自底向上的框架,可以一次估计出图像中所有人的姿势。前者表现得更准确,但计算成本更高。后者效率更高,但准确性较低。
42.本发明基于自底向上的方法研究多人二维姿态估计任务的框架,通过计算各关节点相对于各人体中心的向心偏移量以区分各关节点对应的人体中心,并完成分组。一个人的身体中心往往是容易分辨的,可以表示为所有可见关节点或边框中心的平均值,因此并
不会受到部分关节点遮挡或缺失的影响。通过对向心偏移量的预测,实现了关节与身体中心的结合,增强了关节之间的连接。同时,利用该方法分组也更简洁直观,基本不会受到图像实例增加的影响。
43.具体的,本发明提供一种人体姿态估计分组模型训练方法,包括步骤s101~s103:
44.步骤s101:获取多个样本图像,每个样本图像中包含多个人体对象,标记各样本图像中每个人体对象对应的第一设定数量的关节点,将各关节点按照各人体对象分组,生成训练样本集。
46.先由预设骨架网络获取样本图像的关节特征图,将关节特征图分别输入多路径结构中第二设定数量的多尺度转换层以针对每个关节点分别输出一个热图,将每个关节点对应的多个热图中热值最大的作为该关节点的最终热图,其中,各多尺度转换层采用可变形卷积和不同扩张速率的空洞卷积,每个最终热图中都包含多个候选关节点;
47.将各关节点的最终热图分别与关节特征图连接生成偏移图,将各关节点对应的偏移图输入一个多尺度转换层中以输出相应的长程偏移量图和局部中心偏移量图,长程偏移量图的张量值表示各候选关节点到各人体对象中心点的预估坐标差值,局部中心偏移量图的张量值表示各人体对象中心点周围设定区域内的点到对应真实人体中心点的偏移量;
48.根据各关节点对应的长程偏移量图和局部中心偏移量图计算各候选关节点到各真实人体对象中心点的精细偏移量;
49.对各最终热图中获得的所有候选关节点构建一个优先队列,每一次迭代中,各候选关节点以热图值递减的顺序输出优先队列,对输出的候选关节点进行非极大值抑制,移除优先队列中与该候选关节点类型相同且距离在设定半径范围内的候选关节点;将精细偏移量相差倍数在设定数值以内的候选关节点划分至同一人体对象分组;
50.步骤s103:采用训练样本集对预设神经网络模型进行训练,得到人体姿态估计分组模型。
51.在步骤s101中,首先构建训练样本集,每个样本图像中包含至少两个人体对象,优选地,不同样本图像中人体对象的数量也不相同。在一些实施例中,为了提高最终模型的泛化能力,也可以加入部分仅包含一个人体对象的样本图像。样本图像可以采用开源数据库中的图像,也可以通过数据爬取或人工采集的方式获取。对于各样本图像中的每一个人体对象,添加第一设定数量的关节点。示例性的,关节点可以包括:头、左肩、右肩、左肘、右肘、左腕、右腕、左胯、右胯、左膝、右膝、左脚踝、右脚踝和人体中心点。在一些实施例中,也可以根据实际需求增加或减少所需的关节点。进一步的,采用人体中心点作为分组的标签,将属于同一人体对象的各关节点划分至对应人体中心点的分组中。
52.如图1所示,在步骤s102中,搭建了新的预设神经网络模型结构,其中,由预设骨架网络首先获取样本图像的关节特征图,关节特征图是包含多个人体对象关节特征的张量图,在一些实施例中,所述预设骨架网络为hrnet网络、hourglass网络或resnet网络,优选采用hrnet网络。
53.进一步地,关节特征骨架图一方面输入多路径结构中用于通过不同扩张速率的空洞卷积进行处理,分别生成对应的热图,以更好地提取样本。空洞卷积相比于是在标准的卷积操作,在卷积核内注入空洞,以此来增加感受野。相比标准的卷积网络,空洞卷积还多了
一个超参数——扩张率,指的是卷积核内注入的空洞数量。具体的,多路径结构的每一条路径结构都相同,每条路径包含一个多尺度转换层。具体的,多尺度转换层中,输入的关节特征图由变形卷积和形状变换模块输出第一特征图,由尺度卷积经激活函数处理得到第二特征图,第二特征图与经过重复变换的常规矩阵相乘得到第三特征图,将第一特征图与第三特征图输入批处理矩阵乘法模块并输出第四特征图,将第四特征图经可变性卷积层处理后与关节特征图相加得到关节特征图尺寸相同的热图。每个通道的多尺度转换层都会针对各类型的关节点输出一张热图,每个热图中包含相应关节点的多个候选关节点。也即每个多尺度转换层输出热图的数量与待评估的关节点数量相同,为第一设定数量。在一些实施例中,激活函数为sigmoid函数。在一些实施例中,尺度卷积是由常规矩阵与设定比例因子相乘得到的。
54.为了适应样本图像中,人体对象尺寸和方向的差异,本实施例中,提出了多尺度转换层(mtl),普通的2d卷积只是简单地从特征图的固定位置提取特征。以3*3卷积为例,只使用一个常规矩阵来确定样本面积。常规矩阵为:
考虑到这种常规矩阵在处理不同的尺度和方向时效率不高,使用图2中的尺度卷积,即一个1*1的卷积,来获得一个比例因子,将比例因子与常规矩阵相乘来修改常规矩阵的比例。此外,使用sigmoid函数作为激活函数来保持数字正负号,以防止在训练过程中矩阵的值变得相似。接下来使用变形卷积,即一个1*1的卷积,得到变形矩阵。批处理矩阵乘法(bmm)用于组合变换矩阵和尺度归一化矩阵。最后采用可变形卷积(deform cov)也有助于我们对目标的提升。对于普通的卷积,卷积核的采样点的排列是规则的,是一个正方形。可变形卷积会在每个规则的采样点上加一个偏移量,该偏移量通过额外的普通卷积层训练得到。可变形卷积核的大小和位置可以根据当前需要识别的图像内容进行动态调整,其直观效果就是不同位置的卷积核采样点位置会根据图像内容发生自适应的变化,从而适应不同物体的形状、大小等几何形变,采样到更多有用的信息。
示例性的,如图2所示,关节特征图的尺寸为n*c*h*w,其中n为批量大小,测试中可设定为1,c为通道数,h,w分别为特征图的长和宽。关节特征图输入多尺度转换层,由变形卷积层改变通道数得到尺寸为n*4*h*w的特征图,再进行形状变换得到尺寸为n*h*w*2*2的第一特征图;关节特征图还经过尺度卷积层改变通道数和n*18*h*w的特征图,再经过sigmoid处理变为尺寸为n*h*w*2*9的第二特征图,进一步与经过重复变换的常规矩阵相乘得到尺寸为n*h*w*2*9的第三特征图。将第一特征图与第三特征图输入批处理矩阵乘法模块并输出尺寸为n*18*h*w的第四特征图。第四特征图经过可变性卷积层后与原输入的关节特征图相加,输出包含多个候选关节点的某一类关节点的热图。热图中,每个候选关节点对应一个热图值,热图值越高该候选关节点越接近线]
进一步地,预设神经网络模型中,预测关节的热图需要一个灵活的接受野来应对样本图像中不同大小的人体对象,利用空洞卷积可以通过改变扩张速率来调节感受野。因此,本实施例中,通过设置多个通道,合并多个扩张速率(即空洞卷积的扩张速率)的mtl产生热图,每个路径的mtl均针对每种关节点输出一张热图,如图3所示,在那条路径且需要估
计k个关节点的情况下,则每个路径的mtl针对k个关节点分别输出一张热图,共k张热图。例如,可以设置3个不同扩张速率的通道,针对14个关节点进行预测评估,则每个mtl输出14张热图,每一张热图对应一种关节点,每一张热图中都包含相应关节点的多个候选关节点,每个候选关节点都对应一热图值。进一步的,将三条路径中mtl针对同一关节点输出的热图进行比较,叫热图值最高的作为该关节点的最终热图,依次对每条路径关于每个关节点产生的热图进行比较筛选,得到k涨最终热图。
进一步地,预设神经网络模型中,由热图引导偏移回归,将生成的最终热图与主干特征连接起来,生成偏移图。将各关节点对应的偏移图输入一个多尺度转换层中以输出相应的长程偏移量图和局部中心偏移量图,其中,多尺度转换层的结构与多路径结构中的一致。候选关节点位置对偏移回归提供了额外的监督,也可以优化热图路径分支的结果,引导得到更精确的预测热图。具体的,进一步预测最终热图中,各候选关节点到图中各人体对象中心点的预估坐标差值,生成长程偏移量图,长程偏移量图l由尺寸为h*w*2k的张量图表示,h,w分别表示输入rgb图的长、宽分辨率,k表示标注人体关节点个数,2k表示记载了候选关节点与预估的中心点间横纵坐标的差值。例如,对于一个人体姿态实例表示第k个关节点的图像坐标位置,因此偏移量图的张量值表示该位置关节点到人体中心点的坐标(x轴和y轴)差值,人体中心点坐标可以由k个人体关节点的平均值表示,也可以由模型预估得到。如图4所示,长程偏移量图中的偏移量l[h][w][i]记载第i个关节点(h,w)到中心点c0(m0,n0)的预测的偏移量,实际上预测会有偏差,会预测出关节点(h,w)到c1(m1,n1),c1在线]
因此,进一步生成局部中心偏移量图用于修正预测得到的长程偏移量图,局部中心偏移量图的张量值表示各人体对象中心点周围设定区域内的点到对应真实人体中心点的偏移量。在一些实施例中,设定区域由覆盖人体对象的最小长方体框按照设定比例缩小得到,该设定比例为0.15。局部中心偏移量图l
由尺寸为h*w*2的张量图表示,张量值表示在人体中心周围设定区域内的点到人体中心位置的偏移量。设定区域设定为ratio*bbox,其中,ratio表示设定的尺度因子,ratio=0.15,bbox表示覆盖这个人体对象的最小长方体框。
在得到某一候选关节点的长程偏移量后,结合局部中心偏移量图,可以计算得到该候选关节点的精细偏移量。示例性的,如图4所示,对于右肩l,表示长程偏移量,表示局部中心偏移量,表示精细偏移量。
进一步地,预设神经网络模型中,基于贪心策略的分组算法,利用热图和精细偏移量生筛选rgb图像中每个人体对象的最终关节点以及姿态。具体的分组算法为:首先,根据所有最终热图获得所有候选关节点位置,并为这些候选关节点设置一个优先队列,每一次迭代中,候选关节点以热图值递减的顺序输出队列。然后对该输出队列的候选关节点执行非极大值抑制操作,使队列中与该候选关节点类型相同且位置在设定半径范围内的候选关节点从优先队列中移除。进一步地,遍历优先队列寻找与该候选关节点相比,精细化偏移量相差倍数在设定阈值范围内的其他候选关节点并分为一组。在一些实施例中,精细偏移量相差倍数在设定数值以内的候选关节点分组为同一人体对象中,该设定数值为0.45,即精细偏移量相差倍数在0.45以内的候选关节点被分组为同一个人的关节点。这样,最终每个
候选关节点都可以对应到图像中的一个人体对象中心点。如图5所示,以两个人体对象对左肩、右肩、左膝和右膝四个关节点进行分析,在完成非极大值抑制后,每个人体对象留下了热图值最高的四个点,在分组过程中,分别计算得到8个关节点相对于两个人体对象中心点的精细偏移量,将精细偏移量相差倍数在0.45以内的划分为同一组。
在步骤s103中,采用训练样本集对预设神经网络模型进行训练,以得到人体姿态估计分组模型。其中,生成热图部分采用l2损失函数,长程偏移量和局部中心偏移量部分采用l1损失函数。
在一些实施例中,采用训练样本集对预设神经网络模型进行训练时,还可以对样本图像进行数据增强处理,包括水平翻转、垂直翻转以及缩放等操作。
步骤s201:获取待评估图像人体姿态估计模型,将待评估图像输入如步骤s101~s103所述的人体姿态估计分组模型训练方法中的人体姿态估计分组模型,以得到待评估图像中各人体对象的预测关节点及其分组结果。
另一方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
相比于现有的技术方案中关节点对之间骨架连接的方法以及联想嵌入方法,本发明具有更优的效果。基于关节点对之间骨架连接的方法的缺点在于图像中被遮挡或缺失时分组错误率较高以及后处理过程非常复杂。本发明使用基于动态阈值的贪婪分组算法,以偏移量的长度近似地代表图像中一个人的大小。不需要多余的后处理操作,直接按照以热图值递减的顺序维护一个优先队列,基于贪心策略对关节点进行分组,遮挡情况下准确率和算法复杂程度都要优于基于关节点对之间骨架连接的方法。
基于联想嵌入的方法缺点在于训练受实例数影响以及结果受实例外观影响。本发明针对偏移量较大时关节点定位准确率较低的情况加入局部中心偏移量以修正得到精细偏移量,并对比各关节点到各人体对象中心点的精细偏移量进行分组,不仅比基于联想嵌入的方法获得更高的准确率,而且相比于基于联想嵌入训练的方法,能够有效区分外观相似的不同人体对象。
综上所述,本发明所述人体姿态估计分组模型训练方法、姿态估计方法及装置,基于多路径结构分别以不同扩张速率进行空洞卷积,并同时进行变形卷积,能够更好地适应多人姿态识别场景下不同尺寸和形状人体对象的特征提取需求。基于长程偏移量图和局部中心偏移量图计算各候选关节点到各真实人体对象中心点的精细偏移量,在非极大值抑制操作的基础上,将精细偏移量相差倍数在设定数值以内的候选关节点划分至同一人体对象分组,能够在多人姿态识别场景中保证各关节点分组正确率的前提下,降低计算复杂度,极大节约算力,提高识别效率。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的
范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd
rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.计算机网络安全 2.计算机仿线.网络安全;物联网安全 、大数据安全 2.安全态势感知、舆情分析和控制 3.区块链及应用
一种基于改进TextRank算法的钢材料专利文本中工艺信息抽取方法及其系统与流程