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

模型的训练方法及装置、人体姿态识别方法及装置与流程

2022-04-09 09:51:51 来源:中国专利 TAG:


1.本技术涉及图像识别技术领域,具体涉及一种模型的训练方法及装置、人体姿态识别方法及装置。


背景技术:

2.目前,多人姿态估计任务作为计算机视觉中的一个基础研究课题,在行为识别、行人重识别以及人机交互等视觉任务中,具有广泛应用前景。当前解决多人姿态估计任务,通常采用两种方法,即为自顶向下和自底向上的方法。其中自顶向下的方法会将图像中包括的每个人物对应的人物区域缩放到固定大小,进而进行单人姿态估计。而自底向上的方法则是直接对图像中包括的多个人物直接进行多人姿态估计,导致了自底向上的模型的识别精度较低,并且还需要自底向上的模型具有处理不同尺度大小的人物的能力,增加了构建具有高识别精度的自底向上的模型的难度。
3.鉴于此,如何构建识别精度高、速度快的自底向上的模型成为亟待解决的技术问题。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种模型的训练方法及装置、人体姿态识别方法及装置,能够获得识别精度高、速度快的人体姿态估计模型。
5.第一方面,本技术的实施例提供了一种模型的训练方法,应用于人体姿态估计模型,该方法包括:将人体姿态样本图像输入初始人体姿态估计模型,以获取人体姿态样本图像上包括的单个人物图像;将单个人物图像输入至少一个单人姿态估计模型,以获取至少一个单人姿态估计模型的至少一个输出结果,其中至少一个单人姿态估计模型为自顶向下的模型;将至少一个输出结果作为训练指导对初始人体姿态估计模型进行训练,以获取人体姿态估计模型,其中人体姿态估计模型为自底向上的模型,用于识别人体图像中的多个人体姿态。
6.在本技术某些实施例中,获取人体姿态样本图像上包括的单个人物图像,包括:获取人体姿态样本图像的特征图;确定特征图上单个人物的第一区域;基于第一区域内每个第一像素点相对于人体姿态样本图像内与第一像素点对应的第二像素点的偏置向量、目标偏置向量以及第一区域的面积,确定第一损失值;根据第一损失值对第一区域进行调整,以获取单个人物的第二区域;根据第二区域在人体姿态样本图像上进行截取,以获取单个人物图像。
7.在本技术某些实施例中,基于第一区域内每个第一像素点相对于人体姿态样本图像内与第一像素点对应的第二像素点的偏置向量、目标偏置向量以及第一区域的面积,确定第一损失值,包括:将利用尺度归一化损失函数确定的偏置向量与目标偏置向量的第二损失值,除以面积,以获得第一损失值。
8.在本技术某些实施例中,将至少一个输出结果作为训练指导对初始人体姿态估计
模型进行训练,以获取人体姿态估计模型,包括:计算至少一个输出结果与人体姿态样本图像的特征图的第三损失值;根据第三损失值对人体姿态估计模型进行调整;在第三损失值满足预设条件时,停止计算第三损失值,并获取人体姿态估计模型。
9.在本技术某些实施例中,计算至少一个输出结果与人体姿态样本图像的特征图的第三损失值,包括:利用损失函数计算至少一个输出结果与人体姿态样本图像的特征图之间的第三损失值。
10.在本技术某些实施例中,至少一个输出结果包括多个通道的特征图,其中,利用损失函数计算至少一个输出结果与人体姿态样本图像的特征图之间的第三损失值,包括:根据多个通道的特征图,在人体姿态样本图像的特征图上进行截取,以获取单个人物的特征图;利用均方误差损失函数计算多个通道的特征图,与单个人物的特征图之间的第三损失值。
11.在本技术某些实施例中,至少一个输出结果包括单个人物图像内每个第三像素点的第一坐标,第一坐标包括第一中心坐标和第一偏置向量,其中,利用损失函数计算至少一个输出结果与人体姿态样本图像的特征图之间的第三损失值,包括:根据第一中心坐标在人体姿态样本图像的特征图中,确定单个人物的特征图;利用smooth l1损失函数计算每个第三像素点的第一坐标,与单个人物的特征图中每个第四像素点的第二坐标之间的第三损失值,其中第二坐标包括第二中心坐标和第二偏置向量。
12.第二方面,本技术的实施例提供了一种人体姿态识别方法,该方法包括:获取人体姿态估计模型,其中人体姿态估计模型为基于上述第一方面所述的模型的训练方法获得的;将包含有多个人体姿态的图像输入至人体姿态估计模型,以获取多个人体姿态的识别结果。
13.第三方面,本技术的实施例提供了一种模型的训练装置,该装置包括:第一获取模块,用于将人体姿态样本图像输入初始人体姿态估计模型,以获取人体姿态样本图像上包括的单个人物图像;输入获取模块,用于将单个人物图像输入至少一个单人姿态估计模型,以分别获取至少一个单人姿态估计模型对应的至少一个输出结果,其中至少一个单人姿态估计模型为自顶向下的模型;第二获取模块,用于将至少一个输出结果作为训练指导对初始人体姿态估计模型进行训练,以获取人体姿态估计模型,其中人体姿态估计模型为自底向上的模型,用于识别图像中的多个人体姿态。
14.第四方面,本技术的实施例提供了一种人体姿态识别装置,该装置包括:第三获取模块,用于获取人体姿态估计模型,其中人体姿态估计模型为基于上述第一方面所述的模型的训练方法获得的;第四获取模块,用于将包含有多个人体姿态的图像输入至人体姿态估计模型,以获取多个人体姿态的识别结果。
15.第五方面,本技术的实施例提供了一种计算可读存储介质,存储介质存储有计算机程序,计算机程序用于执行上述第一方面所述的模型的训练方法,和/或用于执行上述第二方面所述的人体姿态识别方法。
16.第六方面,本技术的实施例提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器,其中,处理器用于执行上述第一方面所述的模型的训练方法,和/或用于执行上述第二方面所述的人体姿态识别方法。
17.本技术实施例提供了一种模型的训练方法及装置、人体姿态识别方法及装置,通
过知识蒸馏的方式,使得人体姿态估计模型(即自底向上的模型)能够学习精度较高的单人姿态估计模型(即自顶向下的模型)的输出结果,以获得高精度、快速的人体姿态估计模型,用于进行多人姿态估计。
附图说明
18.图1是本技术一示例性实施例提供的模型的训练方法的流程示意图。
19.图2是本技术另一示例性实施例提供的模型的训练方法的流程示意图。
20.图3是本技术又一示例性实施例提供的模型的训练方法的流程示意图。
21.图4是本技术再一示例性实施例提供的模型的训练方法的流程示意图。
22.图5是本技术再一示例性实施例提供的模型的训练方法的流程示意图。
23.图6是本技术一示例性实施例提供的人体姿态识别方法的流程示意图。
24.图7是本技术一示例性实施例提供的模型的训练装置的结构示意图。
25.图8是本技术一示例性实施例提供的人体姿态识别装置的结构示意图。
26.图9是本技术一示例性实施例提供的用于模型训练或人体姿态识别的电子设备的框图。
具体实施方式
27.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
28.自顶向下的方法首先利用人形检测器检测图像中的多个人物,然后将每个人物对应的人物区域缩放到固定大小,并送入到单人姿态估计器中进行单人姿态估计。可见,自顶向下的方法对于每个人物都需要进行一次单人姿态估计,使得使用自顶向下的方法进行识别的时间与人物数量成正比,即图像中包括的人物越多,识别时间越长。
29.而自底向上的方法不依赖于人形检测器,直接以整幅图像作为输入,经过一次前向过程,即可预测多人的姿态结果,即不受图像中人物数量的影响,但该自底向上的方法识别精度较低。并且,基于无锚框的目标检测范式的启发,自底向上的方法可以直接对每个像素位置预测不同尺度大小的偏置向量,但在计算损失值时,往往被大尺度的人物的误差所主导,导致小尺度人物的骨骼点的偏置向量难以回归。同时,自底向上的方法还可以直接预测不同尺度大小的人物的骨骼点的高斯响应图,但同样对于小尺度的人物的骨骼点的响应难以学习。
30.为解决上述技术问题,本技术实施例提供了如下自底向上的模型的训练方法。
31.图1是本技术一示例性实施例提供的模型的训练方法的流程示意图。图1的方法由计算设备,例如,服务器,来执行。如图1所示,该模型的训练方法包括如下内容。
32.在一实施例中,模型的训练方法可以是对人体姿态估计模型的训练,即将初始人体姿态估计模型经过训练,获得用于识别图像中包括的多个人体姿态的人体姿态估计模型。
33.110:将人体姿态样本图像输入初始人体姿态估计模型,以获取人体姿态样本图像
上包括的单个人物图像。
34.具体地,人体姿态样本图像可以是包括多个人物的图像,并且人体姿态样本图像可以是具有标注信息的多人姿态估计数据集中的图像,其中该数据集可以是mscoco、mpii以及crowdpose等用于多人姿态估计模型训练的数据集。例如,人体姿态样本图像可以是mscoco中具有多个人物标注的图片。
35.初始人体姿态估计模型可以是自底向上的模型,并且该初始人体姿态估计模型可以作为知识蒸馏中的学生模型,该初始人体姿态估计模型可以包括中心热图预测分支和偏置向量回归分支。
36.将人体姿态样本图像输入初始人体姿态估计模型后,该初始人体姿态估计模型可以对人体姿态样本图像进行特征提取,以获得人体姿态样本图像的特征图。而后在初始人体姿态估计模型中,引入目标人物尺度回归分支,确定该人体姿态样本图像的特征图中任一个人物,即单个人物的人物区域(即第一区域)。
37.进一步地,根据偏置向量回归分支计算的第一区域内每个第一像素点相对于输入的人体姿态样本图像内的第二像素点的偏置向量、第一像素点与第二像素点实际的偏置向量(即目标偏置向量)以及第一区域的面积,确定第一损失值,其中第一区域内包括多个第一像素点,人体姿态样本图像的特征图包括多个第二像素点,并且多个第一像素点与多个第二像素点一一对应。
38.进一步地,根据第一损失值对第一区域进行区域范围的调整,获取调整后的单个人物的第二区域,进而根据第二区域在人体姿态样本图像上进行截取,以获取单个人物图像。
39.需要说明的是,步骤110可以理解为是利用偏置回归分支的输出结果(即第二区域),在人体姿态样本图像上截取对应的单个人物图像,并将该单个人物图像分别输入到步骤120的单人姿态估计模型中。
40.例如,将单个人物图像分别输入到基于热图回归的单人姿态估计模型和基于坐标回归的单人姿态估计模型中。
41.还需要说明的是,由于目标人物尺度回归分支只能预测人物的大致区域,而偏置向量回归分支由于需要考虑不同的人体部位,具有更好的人物区域表示能力,因此利用偏置向量回归分支的输出结果进行单个人物图像的截取。
42.120:将单个人物图像输入至少一个单人姿态估计模型,以获取至少一个单人姿态估计模型的至少一个输出结果。
43.在一实施例中,至少一个单人姿态估计模型为自顶向下的模型。
44.具体地,至少一个单人姿态估计模型可以作为知识蒸馏中的教师模型。该至少一个单人姿态估计模型可以包括预先训练的基于热图回归的单人姿态估计模型和预先训练的基于坐标回归的单人姿态估计模型,其中单人姿态估计模型的具体类型,可以根据实际效果的需要以及现有的训练资源进行选择,本技术实施例对此不作具体限定。需要说明的是,在选定的教师模型过于复杂或过大时,可能会占用电子设备更多的显存资源。
45.单人姿态估计模型的数量可以是一个或多个,本技术实施例对单人姿态估计模型的数量亦不作具体限定。也就是说,本技术实施例可以基于一个或多个教师模型训练一个学生模型。
46.例如,基于热图回归的单人姿态估计模型除了需要预测17个骨骼点热图外,还需要预测中心热图,其中该中心热图的中心可以为人体中心,即17个骨骼点的位置中心。需要说明的是,17个骨骼点包括两个耳朵、两个眼睛、一个鼻子、左/右肩、左/右肘、左/右手、左/右臀、左/右膝以及左/右脚踝,共计17个骨骼点。
47.基于热图回归的单人姿态估计模型的输出结果可以是多个通道的单个人物的热图(或多个通道的特征图),其中每个通道代表一个人体特征点的类别,该人体特征点包括人体中心和多个骨骼点。
48.在一实施例中,基于热图回归的单人姿态估计模型的输出结果可以是18通道的特征图。
49.基于坐标回归的单人姿态估计模型的预测规则(也称为预测范式)与常规直接预测34维的17个骨骼点坐标值不同,为了便于后续对自底向上的模型(即初始人体姿态估计模型)中的偏置向量回归分支进行蒸馏,并且基于坐标回归的单人姿态估计模型可以采用类似的中心-偏置向量回归范式。其中34维的17个骨骼点可以是17个骨骼点分别对应的x轴坐标值和y轴坐标值。
50.在一实施例中,基于坐标回归的单人姿态估计模型的输出结果可以是单个人物的第一坐标,该第一坐标可以包括单个人物的第一区域的第一中心坐标和第一偏置向量。
51.需要说明的是,中心-偏置向量回归范式可以理解为是先定义一个人体区域的中心,并确定该中心的x轴坐标和y轴坐标。而后剩余的17个骨骼点的值,就是在中心的x轴坐标和y轴坐标上分别加上一个偏移量(即第一偏置向量),例如加上一个δx和δy,并将计算后的第一中心坐标加第一偏置向量(即第一坐标)的形式,作为中心-偏置向量回归范式的输出结果。
52.还需要说明的是,确定中心坐标所应用的直角坐标系可以是以人体姿态样本图像的左上角为原点建立的直角坐标系,也可以是以人体姿态样本图像的中心作为原点建立的直角坐标系,本技术实施例对此不作具体限定。
53.130:将至少一个输出结果作为训练指导对初始人体姿态估计模型进行训练,以获取人体姿态估计模型。
54.在一实施例中,人体姿态估计模型为自底向上的模型,用于识别人体图像中的多个人体姿态。
55.具体地,将至少一个单人姿态估计模型输出的至少一个输出结果,以知识蒸馏的方式传递给人体姿态估计模型,使得人体姿态估计模型可以根据传递的知识(例如单人姿态估计模型的输出结果)优化自己的输出结果。
56.需要说明的是,在本技术实施例中知识蒸馏可以理解为是通过引入的复杂、推理性能优越的教师模型的输出结果,诱导精简、复杂程度低的学生模型的训练,从而实现知识迁移,即将至少一个单人姿态估计模型的输出结果迁移到人体姿态估计模型。
57.在一实施例中,单人姿态估计模型包括的基于热图回归的单人姿态估计模型可以对应于人体姿态估计模型的中心热图预测分支;单人姿态估计模型包括的基于坐标回归的单人姿态估计模型可以对应于人体姿态估计模型的偏置向量回归分支。
58.基于初始人体姿态估计模型中的卷积层和池化层,对人体姿态样本图像进行特征提取,以获取人体姿态样本图像的特征图。而后利用损失函数,确定至少一个单人姿态估计
模型的至少一个输出结果与人体姿态样本图像的特征图的第三损失值。
59.在一实施例中,至少一个输出结果包括基于热图回归的单人姿态估计模型(即单人姿态估计模型)输出的多个通道的特征图(例如18通道的特征图)。在这种情况下,确定第三损失值的方法包括:根据多个通道的特征图,在人体姿态样本图像的特征图上进行截取,以获取单个人物的特征图;利用均方误差损失函数计算多个通道的特征图与单个人物的特征图之间的第三损失值。
60.在另一实施例中,至少一个输出结果包括基于坐标回归的单人姿态估计模型(即单人姿态估计模型)输出的第一中心坐标和第一偏置向量。在这种情况下,确定第三损失值的方法包括:根据第一中心坐标,在人体姿态样本图像的特征图上进行截取,以获取单个人物的特征图;利用smooth l1损失函数计算单个人物图像内每个第三像素点的第一坐标,与单个人物的特征图内每个第四像素点的第二坐标之间的第三损失值,其中第二坐标包括单个人物的特征图中的第二中心坐标和第二偏置向量。
61.进一步地,根据第三损失值对人体姿态估计模型进行调整,以使得人体姿态估计模型的输出结果与至少一个单人姿态估计模型的输出结果尽可能一致。在第三损失值满足预设条件时,停止计算第三损失值,并获取人体姿态估计模型。例如,在第三损失值低于停止训练的阈值时,停止计算第三损失值,并获取完成训练的人体姿态估计模型,其中该停止训练的阈值可以根据实际的需要灵活设置,本技术实施例对此不作具体限定。
62.需要说明的是,本技术实施例的人体姿态估计模型的输出结果为两个,即多个通道的特征图,以及一个或多个坐标,该坐标包括中心坐标加上偏置向量。
63.还需要说明的是,在自底向上的人体姿态估计模型完成训练后,即可将该人体姿态估计模型集成到相应的电子设备(例如电脑等)中进行使用。
64.由此可知,本技术实施例通过知识蒸馏的方式,使得人体姿态估计模型(即自底向上的模型)能够学习精度较高的单人姿态估计模型(即自顶向下的模型)的输出结果,以获得高精度、快速的人体姿态估计模型,用于进行多人姿态估计。
65.图2是本技术另一示例性实施例提供的模型的训练方法的流程示意图。图2实施例是图1实施例的例子,相同之处不再赘述,此处着重描述不同之处。如图2所示,该模型的训练方法包括如下内容。
66.210:获取人体姿态样本图像的特征图。
67.具体地,人体姿态样本图像的特征图可以通过初始人体姿态估计模型中的卷积层和池化层,对人体姿态样本图像进行特征提取后获得的。
68.220:确定特征图上单个人物的第一区域。
69.具体地,人体姿态样本图像可以包括一个或多个人物,本技术实施例对此不作具体限定。也就是说,人体姿态样本图像的特征图可以包括一个或多个人物。
70.第一区域可以是人体姿态样本图像上的任一个人物的宽度、高度两个尺寸,即单个人物的区域。
71.在一实施例中,初始网络模型可以采用中心-偏置向量回归范式,进而可以基于无锚框的目标检测范式,在中心-偏置向量回归范式中引入目标人物尺度回归分支,以获得中心-尺度回归分支,并基于该中心-尺度回归分支,确定特征图上单个人物的第一区域。
72.需要说明的是,目标人物尺度回归分支虽然存在一定程度的预测人物尺度大小的
能力,但其只能预测人物的大致区域大小,无法精准的回归每个骨骼点的位置。因此,该目标人物尺度回归分支的训练较容易进行,并且该目标人物尺度回归分支的训练与目标检测模型的训练方式一致。
73.230:基于第一区域内每个第一像素点相对于人体姿态样本图像内与第一像素点对应的第二像素点的偏置向量、目标偏置向量以及第一区域的面积,确定第一损失值。
74.具体地,偏置向量可以是偏置向量回归分支计算的,人体姿态样本图像的特征图中第一区域内每个第一像素点,相对应人体姿态样本图像上与第一像素点对应的第二像素点的偏置向量,例如δx和δy。也就是说,偏置向量可以理解为是偏置向量回归分支的预测结果。
75.目标偏置向量可以是人体姿态样本图像的特征图中第一区域内每个第一像素点,相对应人体姿态样本图像上与第一像素点对应的第二像素点的实际的偏置向量。
76.第一区域的面积为单个人物区域的面积。需要说明的是,第一区域的面积可以理解为是初始人体姿态估计模型中的目标人物尺度回归分支的预测结果(或输出结果)。
77.在一实施例中,由于不同尺度大小的人物产生的损失值大小不同,因此将利用尺度归一化损失函数确定的偏置向量与目标偏置向量的第二损失值,除以第一区域的面积,以获得第一损失值。
78.需要说明的是,该步骤可以理解为是在训练好的中心-尺度回归分支的基础上,开始偏置向量回归分支的训练。并且,在对偏置向量回归分支的训练过程中,中心-尺度回归分支也参与训练,参数不固定,从而使得整个模块进行端到端的优化。
79.240:根据第一损失值对第一区域进行调整,以获取单个人物的第二区域。
80.具体地,根据第一损失值对单个人物的第一区域的尺寸大小进行修改,从而获取单个人物的修改后的第二区域。
81.例如,根据第一损失值对第一区域的宽度和/或高度进行修改。
82.250:根据第二区域在人体姿态样本图像上进行截取,以获取单个人物图像。
83.具体地,根据调整或修改后的单个人物的第二区域在人体姿态样本图像上(即输入初始人体姿态估计模型的样本图像)进行截取,以获取单个人物图像。
84.由此可知,本技术实施例通过人物区域的面积,将偏置向量进行尺度归一化,从而使得不同尺度大小的人物具有相同量级的损失值,进而避免了在训练过程中损失值被大尺度的人物所主导的情形,即避免了人物尺度不一的问题。
85.在本技术一实施例中,基于第一区域内每个第一像素点相对于人体姿态样本图像内与第一像素点对应的第二像素点的偏置向量、目标偏置向量以及第一区域的面积,确定第一损失值,包括:将利用尺度归一化损失函数确定的偏置向量与目标偏置向量的第二损失值,除以面积,以获得第一损失值。
86.具体地,尺度归一化损失函数可以是smooth l1损失函数,本技术实施例对损失函数的类型不作具体限定。
87.在利用smooth l1损失函数计算偏置向量回归分支预测的偏置向量,与目标向量之间的损失(或误差)时,引入单个人物的第一区域的面积,即引入目标人物尺度回归分支的预测结果。
88.在一实施例中,将利用smooth l1损失函数计算偏置向量回归分支预测的偏置向
量,与目标向量之间的第二损失值,除以第一区域的面积,以获得第一损失值。
89.需要说明的是,第一区域的面积可以理解为是尺度归一化因子,通过将人体姿态样本图像中的每个像素点的第二损失值除以该尺度归一化因子,从而避免不同尺度大小人物的数值影响。
90.由此可知,本技术实施例通过采用尺度归一化损失函数和单个人物区域的面积大小,缩小不同尺度大小人物的坐标回归偏置向量的数值差异,使得不同大小人物的偏置向量的梯度值相同,避免了训练过程中损失值被大尺度人物所主导的情形。
91.图3是本技术又一示例性实施例提供的模型的训练方法的流程示意图。图3实施例是图1实施例的例子,相同之处不再赘述,此处着重描述不同之处。如图3所示,该模型的训练方法包括如下内容。
92.310:计算至少一个输出结果与人体姿态样本图像的特征图的第三损失值。
93.具体地,基于人体姿态估计模型中的卷积层和池化层,对人体姿态样本图像进行特征提取,以获取人体姿态样本图像的特征图。而后利用损失函数计算至少一个输出结果与人体姿态样本图像的特征图之间的第三损失值。需要说明的是,该步骤中的人体姿态样本图像可以与图2实施例中步骤210描述的人体姿态样本图像的特征图为一个特征图。
94.在一实施例中,至少一个输出结果包括基于热图回归的单人姿态估计模型(即单人姿态估计模型)输出的多个通道的特征图(例如18通道的特征图)。该方法包括:利用均方误差损失函数计算多个通道的特征图,与单个人物的特征图之间的第三损失值,其中该单个人物的特征图包括根据多个通道的特征图映射在人体姿态样本图像的特征图上获得的。
95.在另一实施例中,至少一个输出结果包括基于坐标回归的单人姿态估计模型(即单人姿态估计模型)输出的第一坐标,该第一坐标包括第一中心坐标和第一偏置向量。该方法包括:利用smooth l1损失函数计算单个人物图像内每个第三像素点的第一坐标,与单个人物的特征图内每个第四像素点的第二坐标之间的第三损失值,其中第二坐标包括单个人物的特征图中的第二中心坐标和第二偏置向量。
96.320:根据第三损失值对人体姿态估计模型进行调整。
97.具体地,根据第三损失值对人体姿态估计模型进行调整,以使得单人姿态估计模型的输出结果与人体姿态估计模型的预测结果相一致。并且在持续训练的过程中,不断确定第三损失值,直至该第三损失值满足预设条件。
98.330:在第三损失值满足预设条件时,停止计算第三损失值,并获取人体姿态估计模型。
99.具体地,预设条件可以是第三损失阈值低于预设的停止训练阈值,本技术实施例对预设条件不作具体限定。
100.在一实施例中,在第三损失值低于预设的停止训练阈值时,停止对第三损失值的计算,并获取完成训练的人体姿态估计模型。其中停止训练阈值可以是在对初始人体姿态估计模型训练的过程中,初始人体姿态估计模型收敛时对应的损失值,本技术实施例对停止训练阈值不作具体限定。
101.由此可知,本技术实施例通过在对人体姿态估计模型的训练过程中不断计算损失值,并根据损失值对人体姿态估计模型进行调整,为自顶向下的模型的输出结果蒸馏到自底向上的模型上提供了保障。
102.在本技术一实施例中,计算至少一个输出结果与人体姿态样本图像的特征图的第三损失值,包括:利用损失函数计算至少一个输出结果与人体姿态样本图像的特征图之间的第三损失值。
103.具体地,损失函数可以是mseloss损失函数、smooth l1损失函数或交叉熵损失函数等,本技术实施例对损失函数不作具体限定。需要说明的是,损失函数的选择可以根据单人姿态估计模型的输出结果对人体姿态估计模型的知识蒸馏过程来确定。
104.在一实施例中,在应用基于热图回归的单人姿态估计模型输出的多个通道的特征图,对人体姿态估计模型的中心热图预测分支进行知识蒸馏时,损失函数可以是均方误差损失函数(例如mseloss)。
105.在另一实施例中,在应用基于坐标回归的单人姿态估计模型输出的中心点坐标和第一偏置向量,对人体姿态估计模型的偏置向量回归分支进行知识蒸馏时,损失函数可以是smooth l1(或smooth l1 loss)损失函数。
106.由此可知,本技术实施例通过损失函数计算损失值,并根据知识蒸馏的内容灵活调整损失函数,保障了损失值计算结果的准确性。
107.图4是本技术再一示例性实施例提供的模型的训练方法的流程示意图。图4实施例是图3实施例的例子,相同之处不再赘述,此处着重描述不同之处。如图4所示,该模型的训练方法包括如下内容。
108.在一实施例中,至少一个单人姿态估计模型包括:基于热图回归的单人姿态估计模型,至少一个输出结果包括多个通道的特征图(例如18通道的特征图)。其中多个通道的特征图可以理解为是单个人物区域对应的18通道的热图。
109.需要说明的是,该步骤可以理解为是基于热图回归的单人姿态估计模型(即教师模型)对初始人体姿态估计模型(即学生模型)中的中心热图预测分支的训练。
110.410:根据多个通道的特征图,在人体姿态样本图像的特征图上进行截取,以获取单个人物的特征图。
111.具体地,在对人体姿态估计模型(即学生模型)中包括的中心热图预测分支的训练过程中,首先可以将基于热图回归的单人姿态估计模型输出的多个通道的特征图,映射到人体姿态样本图像的特征图上,以确定该多个通道的特征图在人体姿态样本图像的特征图上的映射区域。然后根据确定的该映射区域,在人体姿态样本图像的特征图上截取该映射区域,作为单个人物的特征图。
112.在一实施例中,本技术利用感兴趣区域(region of interest,roi)的方式,将对应的单个人物的特征图截取出来。
113.420:利用均方误差损失函数计算多个通道的特征图,与单个人物的特征图之间的第三损失值。
114.具体地,将单个人物的特征图与基于热图回归的单人姿态估计模型输出的多个通道的特征图计算均方误差损失函数(例如mseloss损失函数),并将该均方误差损失函数计算的第三损失值用于调整学生模型的预测结果,以提高人体姿态估计模型的输出精度。
115.由此可知,本技术实施例通过基于热图回归的单人姿态估计模型的输出结果,对人体姿态估计模型进行知识蒸馏,从而提升了人体姿态估计模型中热图回归分支的精度。
116.图5是本技术再一示例性实施例提供的模型的训练方法的流程示意图。图5实施例
是图3实施例的例子,相同之处不再赘述,此处着重描述不同之处。如图5所示,该模型的训练方法包括如下内容。
117.在一实施例中,至少一个输出结果包括单个人物图像内每个第三像素点的第一坐标,第一坐标包括第一中心坐标和第一偏置向量。
118.由于基于坐标回归的单人姿态估计模型可以采用类似地中心-偏置向量回归范式,即定义了一个单个人物图像的第一中心坐标后,该单个人物图像的其余像素点或关键点(例如17个骨骼点)都可以通过第一中心坐标加第一偏置向量的形式表示。
119.需要说明的是,该步骤可以理解为是基于坐标回归的单人姿态估计模型(即教师模型)对初始人体姿态估计模型(即学生模型)中的偏置向量回归分支的训练。
120.510:根据第一中心坐标在人体姿态样本图像的特征图中,确定单个人物的特征图。
121.具体地,在对人体姿态估计模型(即学生模型)中包括的偏置向量回归分支的训练过程中,首先可以将基于坐标回归的单人姿态估计模型输出的第一中心坐标,映射到人体姿态样本图像的特征图上,以确定与该第一中心坐标对应的第二中心坐标。然后将包括该第二中心坐标的人物区域,作为单个人物的特征图,即将该单个人物的特征图选择为当前需要知识蒸馏的区域。
122.520:利用smooth l1损失函数计算每个第三像素点的第一坐标,与单个人物的特征图中每个第四像素点的第二坐标之间的第三损失值。
123.在一实施例中,第二坐标包括第二中心坐标和第二偏置向量。
124.具体地,将单个人物的特征图中每个第四像素点对应的第二中心坐标和第二偏置向量(即第二坐标),与基于坐标回归的单人姿态估计模型输出的单个人物图像中每个第三像素点对应的第一中心坐标和第一偏置向量(即第一坐标)计算smooth l1损失函数。并将该smooth l1损失函数计算的第三损失值用于调整人体姿态估计模型的预测结果(即第二坐标),以使得第二坐标尽量与第一坐标一致。
125.需要说明的是,基于热图回归的单人姿态估计模型和基于坐标回归的单人姿态估计模型的参数需要固定,不参与人体姿态估计模型的训练。而人体姿态估计模型(即自底向上的模型)的偏置向量回归分支、目标人物尺度回归分支等分支需要进行端到端优化,以提升模型效果。
126.由此可知,本技术实施例通过基于坐标回归的单人姿态估计模型的输出结果,对人体姿态估计模型进行知识蒸馏,从而提升了人体姿态估计模型中偏置向量回归分支的精度。
127.图6是本技术一示例性实施例提供的人体姿态识别方法的流程示意图。图6的方法由计算设备,例如,服务器,来执行。如图1所示,该人体姿态识别方法包括如下内容。
128.610:获取人体姿态估计模型。
129.在一实施例中,人体姿态估计模型为基于上述实施例所描述的模型的训练方法获得的。
130.需要说明的是,关于获取人体姿态估计模型的具体方法,详情请参见上述实施例的描述。
131.620:将包含有多个人体姿态的图像输入至人体姿态估计模型,以获取多个人体姿
态的识别结果。
132.具体地,人体姿态估计模型对输入的图像中包括的多个人体姿态进行识别,以获取多个人体姿态的识别结果。
133.多个人体姿态的识别结果包括图像的背景和人体的识别结果,再利用预设阈值对背景与人体的识别结果进行二值化处理,可以得到多个人体姿态的识别结果,例如该多个人体姿态的识别结果上每个像素点可以用0或1进行表示,其中1表示人体区域的像素点,0表示背景区域的像素点。
134.由此可知,本技术实施例通过知识蒸馏的方式,使得人体姿态估计模型(即自底向上的模型)能够学习精度较高的单人姿态估计模型(即自顶向下的模型)的输出结果,从而提高了获取输入图像中的人体姿态识别的速度和精准度。
135.图7是本技术一示例性实施例提供的模型的训练装置700的结构示意图。如图7所示,该模型的训练装置700包括:第一获取模块710,输入获取模块720和第二获取模块730。
136.第一获取模块710用于将人体姿态样本图像输入初始人体姿态估计模型,以获取人体姿态样本图像上包括的单个人物图像;输入获取模块720用于将单个人物图像输入至少一个单人姿态估计模型,以分别获取至少一个单人姿态估计模型对应的至少一个输出结果,其中至少一个单人姿态估计模型为自顶向下的模型;第二获取模块730用于将至少一个输出结果作为训练指导对初始人体姿态估计模型进行训练,以获取人体姿态估计模型,其中人体姿态估计模型为自底向上的模型,用于识别图像中的多个人体姿态。
137.本技术实施例提供了一种模型的训练装置,通过知识蒸馏的方式,使得人体姿态估计模型(即自底向上的模型)能够学习精度较高的单人姿态估计模型(即自顶向下的模型)的输出结果,以获得高精度、快速的人体姿态估计模型,用于进行多人姿态估计。
138.根据本技术一实施例,第一获取模块710用于获取人体姿态样本图像的特征图;确定特征图上单个人物的第一区域;基于第一区域内每个第一像素点相对于人体姿态样本图像内与第一像素点对应的第二像素点的偏置向量、目标偏置向量以及第一区域的面积,确定第一损失值;根据第一损失值对第一区域进行调整,以获取单个人物的第二区域;根据第二区域在人体姿态样本图像上进行截取,以获取单个人物图像。
139.根据本技术一实施例,第一获取模块710用于将利用尺度归一化损失函数确定的偏置向量与目标偏置向量的第二损失值,除以面积,以获得第一损失值。
140.根据本技术一实施例,第二获取模块730用于计算至少一个输出结果与人体姿态样本图像的特征图的第三损失值;根据第三损失值对人体姿态估计模型进行调整;在第三损失值满足预设条件时,停止计算第三损失值,并获取人体姿态估计模型。
141.根据本技术一实施例,第二获取模块730用于利用损失函数计算至少一个输出结果与人体姿态样本图像的特征图之间的第三损失值。
142.根据本技术一实施例,至少一个输出结果包括多个通道的特征图,第二获取模块730用于根据多个通道的特征图,在人体姿态样本图像的特征图上进行截取,以获取单个人物的特征图;利用均方误差损失函数计算多个通道的特征图,与单个人物的特征图之间的第三损失值。
143.根据本技术一实施例,至少一个输出结果包括单个人物图像内每个第三像素点的第一坐标,第一坐标包括第一中心坐标和第一偏置向量,第二获取模块730用于根据第一中
心坐标在人体姿态样本图像的特征图中,确定单个人物的特征图;利用smooth l1损失函数计算每个第三像素点的第一坐标,与单个人物的特征图中每个第四像素点的第二坐标之间的第三损失值,其中第二坐标包括第二中心坐标和第二偏置向量。
144.应当理解,上述实施例中的第一获取模块710,输入获取模块720和第二获取模块730的具体工作过程和功能可以参考上述图1至图6实施例提供的模型的训练方法中的描述,为了避免重复,在此不再赘述。
145.图8是本技术一示例性实施例提供的人体姿态识别装置800的结构示意图。如图8所示,该人体姿态识别装置800包括:第三获取模块810和第四获取模块820。
146.第三获取模块810用于获取人体姿态估计模型,其中人体姿态估计模型为基于上述第一方面所述的模型的训练方法获得的;第四获取模块820用于将包含有多个人体姿态的图像输入至人体姿态估计模型,以获取多个人体姿态的识别结果。
147.本技术实施例提供了一种人体姿态识别装置,通过知识蒸馏的方式,使得人体姿态估计模型(即自底向上的模型)能够学习精度较高的单人姿态估计模型(即自顶向下的模型)的输出结果,从而提高了获取输入图像中的人体姿态识别的速度和精准度。
148.应当理解,上述实施例中的第三获取模块810和第四获取模块820的具体工作过程和功能可以参考上述图6实施例提供的人体姿态识别方法中的描述,为了避免重复,在此不再赘述。
149.图9是本技术一示例性实施例提供的用于模型训练或人体姿态识别的电子设备900的框图。
150.参照图9,电子设备900包括处理组件910,其进一步包括一个或多个处理器,以及由存储器920所代表的存储器资源,用于存储可由处理组件910的执行的指令,例如应用程序。存储器920中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件910被配置为执行指令,以执行上述模型的训练方法,或者人体姿态识别方法。
151.电子设备900还可以包括一个电源组件被配置为执行电子设备900的电源管理,一个有线或无线网络接口被配置为将电子设备900连接到网络,和一个输入输出(i/o)接口。可以基于存储在存储器920的操作系统操作电子设备900,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
,freebsd
tm
或类似。
152.一种非临时性计算机可读存储介质,当存储介质中的指令由上述电子设备900的处理器执行时,使得上述电子设备900能够执行一种模型的训练方法,包括:将人体姿态样本图像输入初始人体姿态估计模型,以获取人体姿态样本图像上包括的单个人物图像;将单个人物图像输入至少一个单人姿态估计模型,以获取至少一个单人姿态估计模型的至少一个输出结果,其中至少一个单人姿态估计模型为自顶向下的模型;将至少一个输出结果作为训练指导对初始人体姿态估计模型进行训练,以获取人体姿态估计模型,其中人体姿态估计模型为自底向上的模型,用于识别人体图像中的多个人体姿态。
153.或者,一种人体姿态识别方法,包括:获取人体姿态估计模型,其中人体姿态估计模型为基于上述第一方面所述的模型的训练方法获得的;将包含有多个人体姿态的图像输入至人体姿态估计模型,以获取多个人体姿态的识别结果。
154.上述所有可选技术方案,可采用任意结合形成本技术的可选实施例,在此不再一
一赘述。
155.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
156.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
157.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
158.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
159.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
160.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序校验码的介质。
161.需要说明的是,在本技术的描述中,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本技术的描述中,除非另有说明,“多个”的含义是两个或两个以上。
162.以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换等,均应包含在本技术的保护范围之内。
再多了解一些

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

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

相关文献