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

一种人体姿态估计的数据增强方法、装置及终端设备与流程

2022-05-06 08:33:57 来源:中国专利 TAG:


1.本技术属于数据增强技术领域,尤其涉及一种人体姿态估计的数据增强方法、装置及终端设备。


背景技术:

2.随着社会的发展,可以通过对人体进行姿态估计,来提取人体的关键点,从而根据关键点来实现视觉感知或其他任务,例如,通过关键点提取实现体感游戏交互、通过关键点提取实现目标跟踪、通过关键点提取实现行为识别等。
3.但由于人体的结构是非刚体,其相较于汽车、桌椅等刚体来说存在各种各样的变化,例如,人体某一部分部件围绕关节进行旋转活动,从而完成复杂的行为或动作。此外,还存在一些遮挡严重或障碍物较多的特殊场景,所以并不能很好的对人体进行姿态估计,进而导致提取人体关键点的精度较低。


技术实现要素:

4.本技术实施例提供了一种人体姿态估计的数据增强方法、装置及终端设备,可以解决提取人体关键点的精度较低的问题。
5.第一方面,本技术实施例提供了一种人体姿态估计的数据增强方法,包括:
6.获取目标图像,对上述目标图像中的人体进行姿态估计,得到上述人体的初始热图;
7.从上述初始热图中确定出置信度符合预设阈值范围的目标关键点;
8.确定上述目标关键点对应的上述人体的局部部件,从预设的部件库中获取上述局部部件对应的预设数量的部件图;
9.根据上述预设数量的部件图对上述初始热图进行数据增强,得到增强后的人体热图。
10.第二方面,本技术实施例提供了一种人体姿态估计的数据增强装置,包括:
11.图像获取模块,用于获取目标图像,对上述目标图像中的人体进行姿态估计,得到上述人体的初始热图;
12.关键点确定模块,用于从上述初始热图中确定出置信度符合预设阈值范围的目标关键点;
13.部件图获取模块,用于确定上述目标关键点对应的上述人体的局部部件,从预设的部件库中获取上述局部部件对应的预设数量的部件图;
14.数据增强模块,用于根据上述预设数量的部件图对上述初始热图进行数据增强,得到增强后的人体热图。
15.第三方面,本技术实施例提供了一种终端设备,包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现上述任一种人体姿态估计的数据增强方法的步骤。
等仅用于区分描述,而不能理解为指示或暗示相对重要性。
29.图1所示为本技术实施例中一种人体姿态估计的数据增强方法的流程示意图,该方法的执行主体可以是终端设备,如图1所示,上述人体姿态估计的数据增强方法可以包括如下步骤:
30.步骤s101、获取目标图像,对目标图像中的人体进行姿态估计,得到人体的初始热图。
31.在本实施例中,终端设备可以对目标图像中的人体以预设的姿态估计算法进行姿态估计,来得到目标图像中未对人体进行任何处理的初始热图。其中,上述姿态估计算法可以通过姿态估计模型来实现,姿态估计算法包括但不限于是fastpose算法、lpn算法等。
32.在一个实施例中,终端设备在对人体进行姿态估计之前可以先通过预设的人体检测算法对图像中的人体进行检测,从而可以得到针对于单个人体的人体检测框,例如,若当前目标图像中存在三个人体,则相应出现三个人体检测框,进而通过对人体检测框中的人体进行姿态估计,得到人体检测框对应的人体的初始热图。其中,上述人体检测算法包括但不限于是yolo算法、ssd算法等。
33.步骤s102、从初始热图中确定出置信度符合预设阈值范围的目标关键点。
34.在本实施例中,针对于上述终端设备通过姿态估计模型得到的初始热图,终端设备可以通过argmax函数进行处理,以得到上述初始热图对应的关键点坐标,再对所得到的关键点通过softmax函数进行处理,得到各个关键点的置信度,从而对各个关键点的置信度进行判断,以从各个关键点中选取出置信度符合预设阈值范围的目标关键点,即容易识别错误的关键点,从而对该容易识别错误的关键点进行数据增强。其中,上述阈值范围可以是0.4至0.85。
35.可以理解的是,若上述关键点的置信度小于上述阈值范围中的最小值,说明该关键点为不可见的点,则将该关键点进行过滤处理,无需进行显示或相应处理;而倘若上述关键点的置信度大于上述阈值范围中的最大值,说明该关键点为易学习的点,则无需对该易学习的点进行数据增强,直接进行显示或相应处理。
36.在一个实施例中,上述关键点的数量可以根据图像所存储的数据集的类别的不同而不同,例如,mpii数据集对应16类关键点,coco数据集对应17类关键点。
37.步骤s103、确定目标关键点对应的人体的局部部件,从预设的部件库中获取局部部件对应的预设数量的部件图。
38.在本实施例中,终端设备可以通过获取与目标关键点对应的人体的局部部件相同的一定数量的部件图来对该部件位置进行处理,以提升处理后的人体热图的精准度,以及通过多张部件图实现该位置的数据增强,进而实现精准提取人体关键点。
39.具体地,上述步骤s103可以包括:终端设备可以根据目标关键点从预设的关键点对照表中确定该目标关键点对应的人体局部部件。例如,若当前目标关键点的位置为左手腕中心点,则该人体局部部件可以为人体的左手腕至左胳膊肘之间部件。其中,上述关键点对照表可以是根据人体上可能出现的关键点位置和该位置对应的置信度最低的部件生成的表,可以通过数据分析的方式确定关键点可连接的部件中的置信度最低的部件。
40.具体地,上述步骤s103可以包括:终端设备可以确定与目标关键点连接的相邻关键点,从而根据目标关键点和相邻关键点确定局部部件。例如,将目标关键点和相邻关键点
连接的部分确定为需进行数据增强的局部部件。
41.在一个实施例中,当存在至少两个相邻关键点时,终端设备可以从至少两个相邻关键点中选取置信度最小的相邻关键点,将目标关键点和置信度最小的相邻关键点之间的部件确定为局部部件。可以理解的是,由置信度最小的相邻关键点与目标关键点组成的部件,与同时和目标关键点连接的其他关键点对应的部件来说,置信度最小的相邻关键点与目标关键点组成的部件的置信度也是最小,从而可以精确需要增强的局部部件。
42.在一个实施例中,在步骤s103之前还可以包括:终端设备获取人体的全局图,即仅包含人体的图片,再根据预设的分割网络对全局图进行裁剪,得到各个局部部件图,并计算各个局部部件图的置信度,将置信度大于预设置信度阈值的局部部件图存储于部件库中的对应位置,例如,根据局部部件图的名称进行存储。其中,上述分割网络可以是pspnet网络。可以理解的是,上述置信度阈值为易学习的点对应的置信度临界值,所以该置信度阈值可以为上述阈值范围中的最大值。
43.步骤s104、根据预设数量的部件图对初始热图进行数据增强,得到增强后的人体热图。
44.在本实施例中,终端设备根据预设数量的部件图对姿态估计模型估计得到的初始热图中估计效果不好的人体部件进行局部数据增强,从而得到预设数量的增强后的人体热图,从而通过增强后的人体热图得到人体精度较高的关键点,从而进行相应的任务。
45.示例性地,若当前存在2个目标关键点,分别为点a和点b,且设定上述预设数量为3,则对点a和点b分别对应的3张部件图进行数据增强后,得到点a对应增强数据后的人体热图a1、a2、a3,点b对应增强数据后的人体热图b1、b2、b3。
46.在一个实施例中,步骤s104包括:将预设数量的部件图随机粘贴在目标图像中的人体上,若存在上述人体检测框,则随机粘贴在人体检测框内,得到预设数量的人体样本图。再通过预设的姿态估计算法对预设数量的人体样本图进行处理,例如,利用姿态估计算法进行处理,即得到目标图像中的人体增强数据后对应的增强后的人体热图。此外,还可基于人体的全局数据对上述预设数量的部件图进行数据增强,例如,以某一旋转方向旋转一定角度、改变亮度对比度。
47.在一个实施例中,在步骤s104之前还可以包括:终端设备根据目标关键点计算局部部件的部件长度,即人体的局部肢体长度,再根据部件长度对预设数量的部件图进行归一化处理,从而致使初始热图中的需增强的局部部件和增强后的人体热图对应的局部部件的尺度一致。例如,若部件长度为250pixel,则需将预设数量的部件图的长度均归一化为250pixel。
48.具体地,若局部部件仅根据目标关键点确定,则可基于当前人体的长度进行预估,从而预估出局部部件的长度。若局部部件根据目标关键点和与目标关键点相邻的相邻关键点共同确定,则通过目标关键点和相邻关键点的横纵坐标确定出局部部件的部件长度。
49.在一个实施例中,如图2所示,在步骤s104之后,还包括:
50.步骤s201、获取人体的标签热图,根据标签热图和初始热图确定第一损失值。
51.在本实施例中,终端设备可以利用均方差对标签热图和初始热图进行计算,得到标签热图和初始热图之间的损失值,即标签热图和初始热图之间的差别,也就是上述第一损失值。
52.步骤s202、根据增强后的人体热图和初始热图确定第二损失值。
53.在本实施例中,终端设备可以利用均方差对增强后的人体热图和初始热图进行计算,得到增强后的人体热图和初始热图之间的损失值,即增强后的人体热图和初始热图之间的差别。可以理解的是,由于增强后的人体热图的数量与增强数据所用的部件图的数量相同,所以上述第二损失值为预设数量的增强后的人体热图对应的损失值的总和。
54.示例性地,基于上述示例得到的点a对应增强数据后的人体热图a1、a2、a3,点b对应增强数据后的人体热图b1、b2、b3,分别计算初始热图和a1、a2、a3、b1、b2、b3的损失值,得到初始热图和a1的损失值loss.a1、初始热图和a2的损失值loss.a2、初始热图和a3的损失值loss.a3、初始热图和b1的损失值loss.b1、初始热图和b2的损失值loss.b2、初始热图和b3的损失值loss.b3,再计算loss.a1、loss.a2、loss.a3、loss.b1、loss.b2、loss.b3的总和,得到第二损失值loss2。
55.步骤s203、对第一损失值和第二损失值进行加权处理,并根据加权处理后的第一损失值和第二损失值确定总损失值。其中,总损失值的计算公式如下所述:
56.lossa=α*loss2 (1-α)loss157.其中,上述α为权重值,可以从0.3至0.5内选取权重值;上述loss1为第一损失值;上述loss2为第二损失值;上述lossa为总损失值。
58.步骤s204、根据总损失值更新人体的姿态估计模型的模型参数。
59.在本实施例中,终端设备通过将总损失值进行梯度回传,以作用在优化器上来更新上述姿态估计模型的模型参数,从而使姿态估计模型学习的更好,提升姿态估计模型的估计效果,进而提高模型对人体关键点的识别精度。
60.本技术实施例中获取目标图像,对上述目标图像中的人体进行姿态估计,以得到上述人体的初始热图,再从上述初始热图中确定出置信度符合预设阈值范围的目标关键点,以确定出精度较低的关键点,再确定上述目标关键点对应的上述人体的局部部件,以便于对该局部部件进行处理,提高人体的姿态估计准确性,具体通过从预设的部件库中获取上述局部部件对应的预设数量的部件图,再根据上述预设数量的部件图对上述初始热图进行数据增强,来提高人体的姿态估计的准确性,并最终得到增强后的人体热图,以通过增强后的人体热图得到人体精度较高的关键点,从而通过对姿态估计得到的热图进行数据增强来提高提取人体关键点的精度。
61.应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
62.对应于上文所述的一种人体姿态估计的数据增强方法,图3所示为本技术实施例中一种人体姿态估计的数据增强装置的结构示意图,如图3所示,上述人体姿态估计的数据增强装置可以包括:
63.图像获取模块301,用于获取目标图像,对目标图像中的人体进行姿态估计,得到人体的初始热图。
64.关键点确定模块302,用于从初始热图中确定出置信度符合预设阈值范围的目标关键点。
65.部件图获取模块303,用于确定目标关键点对应的人体的局部部件,从预设的部件
库中获取局部部件对应的预设数量的部件图。
66.数据增强模块304,用于根据预设数量的部件图对初始热图进行数据增强,得到增强后的人体热图。
67.在一个实施例中,上述人体姿态估计的数据增强装置还可以包括:
68.热图获取模块,用于获取人体的标签热图,根据标签热图和初始热图确定第一损失值。
69.损失值确定模块,用于根据增强后的人体热图和初始热图确定第二损失值。
70.处理模块,用于对第一损失值和第二损失值进行加权处理,并根据加权处理后的第一损失值和第二损失值确定总损失值。
71.参数更新模块,用于根据总损失值更新人体的姿态估计模型的模型参数。
72.在一个实施例中,上述部件图获取模块303可以包括:
73.关键点确定单元,用于确定与目标关键点连接的相邻关键点。
74.部件确定单元,用于根据目标关键点和相邻关键点确定局部部件。
75.在一个实施例中,上述部件确定单元可以包括:
76.关键点选取子单元,用于当存在至少两个相邻关键点时,从至少两个相邻关键点中选取置信度最小的相邻关键点。
77.部件确定子单元,用于将目标关键点和置信度最小的相邻关键点之间的部件确定为局部部件。
78.在一个实施例中,上述数据增强模块304可以包括:
79.部件图粘贴单元,用于将预设数量的部件图随机粘贴在目标图像中的人体上,得到预设数量的人体样本图。
80.处理单元,用于通过预设的姿态估计算法对预设数量的人体样本图进行处理,得到增强后的人体热图。
81.在一个实施例中,上述人体姿态估计的数据增强装置还可以包括:
82.长度计算单元,用于根据目标关键点计算局部部件的部件长度。
83.归一化处理单元,用于根据部件长度对预设数量的部件图进行归一化处理。
84.在一个实施例中,上述人体姿态估计的数据增强装置还可以包括:
85.裁剪单元,用于获取人体的全局图,根据预设的分割网络对全局图进行裁剪,得到各个局部部件图。
86.置信度计算单元,用于计算各个局部部件图的置信度,将置信度大于预设置信度阈值的局部部件图存储于部件库中的对应位置。
87.本技术实施例中获取目标图像,对上述目标图像中的人体进行姿态估计,以得到上述人体的初始热图,再从上述初始热图中确定出置信度符合预设阈值范围的目标关键点,以确定出精度较低的关键点,再确定上述目标关键点对应的上述人体的局部部件,以便于对该局部部件进行处理,提高人体的姿态估计准确性,具体通过从预设的部件库中获取上述局部部件对应的预设数量的部件图,再根据上述预设数量的部件图对上述初始热图进行数据增强,来提高人体的姿态估计的准确性,并最终得到增强后的人体热图,以通过增强后的人体热图得到人体精度较高的关键点,从而通过对姿态估计得到的热图进行数据增强来提高提取人体关键点的精度。
88.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和模块的具体工作过程,可以参考前述系统实施例以及方法实施例中的对应过程,在此不再赘述。
89.图4为本技术实施例提供的终端设备的结构示意图。为了便于说明,仅示出了与本技术实施例相关的部分。
90.如图4所示,该实施例的终端设备4包括:至少一个处理器400(图4中仅示出一个),与上述处理器400连接的存储器401,以及存储在上述存储器401中并可在上述至少一个处理器400上运行的计算机程序402,例如人体姿态估计的数据增强程序。上述处理器400执行上述计算机程序402时实现上述各个人体姿态估计的数据增强方法实施例中的步骤,例如图1所示的步骤s101至s104。或者,上述处理器400执行上述计算机程序402时实现上述各装置实施例中各模块的功能,例如图3所示模块301至304的功能。
91.示例性的,上述计算机程序402可以被分割成一个或多个模块,上述一个或者多个模块被存储在上述存储器401中,并由上述处理器400执行,以完成本技术。上述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述上述计算机程序402在上述终端设备4中的执行过程。例如,上述计算机程序402可以被分割成图像获取模块301、关键点确定模块302、部件图获取模块303、数据增强模块304,各模块具体功能如下:
92.图像获取模块301,用于获取目标图像,对目标图像中的人体进行姿态估计,得到人体的初始热图;
93.关键点确定模块302,用于从初始热图中确定出置信度符合预设阈值范围的目标关键点;
94.部件图获取模块303,用于确定目标关键点对应的人体的局部部件,从预设的部件库中获取局部部件对应的预设数量的部件图;
95.数据增强模块304,用于根据预设数量的部件图对初始热图进行数据增强,得到增强后的人体热图。
96.上述终端设备4可包括,但不仅限于,处理器400、存储器401。本领域技术人员可以理解,图4仅仅是终端设备4的举例,并不构成对终端设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备、总线等。
97.所称处理器400可以是中央处理单元(central processing unit,cpu),该处理器400还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
98.上述存储器401在一些实施例中可以是上述终端设备4的内部存储单元,例如终端设备4的硬盘或内存。上述存储器401在另一些实施例中也可以是上述终端设备4的外部存储设备,例如上述终端设备4上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,上述存储器401还可
以既包括上述终端设备4的内部存储单元也包括外部存储设备。上述存储器401用于存储操作系统、应用程序、引导装载程序(boot loader)、数据以及其他程序等,例如上述计算机程序的程序代码等。上述存储器401还可以用于暂时地存储已经输出或者将要输出的数据。
99.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
100.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
101.在本技术所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
102.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
103.上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
104.以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

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

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

相关文献