掌桥专利:专业的专利平台
掌桥专利
首页

一种人体姿态估计方法及终端设备

文献发布时间:2023-06-19 12:19:35


一种人体姿态估计方法及终端设备

技术领域

本申请属于机器人技术领域,尤其涉及一种人体姿态估计方法及终端设备。

背景技术

人体姿态估计是指从给定的一幅图像或者一段视频中,恢复出人体关键点的过程。一般的人体关键点确定是直接根据标签的坐标值去回归每个关键点的坐标值,这种方式有着简单直接、速度快等优势,但是会由于缺少一些图像语义信息,会导致较大的估计误差。为了提高精度,可以基于图像的热力图来进行人体姿态估计,然而现有的人体姿态估计模型生成的热力图通常质量较差,容易导致人体关键点的识别出现误差。

发明内容

本申请实施例提供了一种人体姿态估计方法及终端设备,可以解决现有的人体姿态估计模型生成的热力图通常质量较差,容易导致人体关键点的识别出现误差的问题。

第一方面,本申请实施例提供了一种人体姿态估计方法,包括:

根据输入图像获取第一热力图;

将所述第一热力图输入至预设特征融合模型中进行处理,得到第二热力图;

基于所述第二热力图进行人体姿态估计,得到人体关键点坐标。

在第一方面的一种可能的实现方式中,所述预设特征融合模型包括下采样模块、上采样模块以及横向连接模块;

相应地,所述将所述第一热力图输入至特征融合模型中进行处理,得到第二热力图,包括:

基于所述下采样模块对所述第一热力图进行下采样处理,获取多尺度图像;

基于所述上采样模块对所述下采样模块的输出进行上采样处理;

并通过横向连接模块,将所述多尺度图像与所述下采样模块的输出进行特征融合,得到所述第二热力图。

在第一方面的一种可能的实现方式中,所述下采样模块包括第一卷积单元、第二卷积单元、第三卷积单元以及第四卷积单元;

相应的,所述基于所述下采样模块对所述第一热力图进行下采样处理,获取多尺度图像,包括:

所述第一卷积单元对所述第一热力图进行下采样处理,得到第一尺度图像;

所述第二卷积单元对所述第一尺度图像进行下采样处理,得到第二尺度图像;

所述第三卷积单元对所述第二尺度图像进行下采样处理,得到第三尺度图像。

在第一方面的一种可能的实现方式中,所述上采样模块包括第五卷积单元、第六卷积单元以及第七卷积单元,所述横向连接模块包括第一横向连接单元、第二横向连接单元以及第三横向连接单元,所述第一卷积单元的输出分别与所述第二卷积单元的输入和所述第三横向连接单元的第一输入连接,所述第二卷积单元的输出分别与所述第三卷积单元的输入和所述第二横向连接单元的第一输入连接,所述第三卷积单元的输出分别与所述第四卷积单元的输入和所述第一横向连接单元的第一输入连接,所述第四卷积单元的输出与所述第一横向连接单元的第二输入连接,所述第一横向连接单元的输出与所述第五卷积单元的输入连接,所述第五卷积单元的输出于所述第二横向连接单元的第二输入连接,所述第二横向连接单元的输出与所述第六卷积单元的输入连接,所述第六卷积单元的输出与所述第三横向连接单元的第二输入连接,所述第三横向连接单元的输出与所述第七卷积单元的输入连接。

在第一方面的一种可能的实现方式中,所述第一横向连接单元包括第一横向卷积单元和第一放大单元,所述第二横向连接单元包括第二横向卷积单元和第二放大单元,所述第三横向连接单元包括第三横向卷积单元和第三方大单元。

在第一方面的一种可能的实现方式中,上述方法还包括:

构建特征融合模型;

基于训练数据对所述特征融合模型进行训练,得到所述预设特征融合模型。

在第一方面的一种可能的实现方式中,所述训练数据包括训练图像和所述训练图像对应的真实标签;所述基于训练数据对所述特征融合模型进行训练,得到所述预设特征融合模型,包括:

将训练图像输入至所述预设特征融合模型中进行处理,得到所述训练图像对应的热力图;

基于所述训练图像对应的热力图与所述训练对应的真实标签确定模型损失;

基于所述模型损失调整所述预设特征融合模型的模型参数,直至所述特征融合模型的损失函数收敛,得到训练完成的预设特征融合模型。

第二方面,本申请实施例提供了一种终端设备,包括:

获取模块,用于根据输入图像获取第一热力图;

特征融合模块,用于将所述第一热力图输入至预设特征融合模型中进行处理,得到第二热力图;

姿态估计模块,用于基于所述第二热力图进行人体姿态估计,得到人体关键点坐标。

第三方面,本申请实施例提供了一种终端设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的方法。

第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面所述的方法。

可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

本申请实施例与现有技术相比存在的有益效果是:能够对获取到的热力图进一步进行特征融合,得到质量更佳的热力图,在基于特征融合后的热力图进行人体姿态估计,能够有效地提高人体关键点的识别精度。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的人体姿态估计方法的实现流程示意图;

图2是本申请一实施例提供的预设特征融合模型的结构示意图;

图3是本申请实施例提供的第一横向连接单元的结构示意图;

图4是本申请实施例提供的终端设备的结构示意图;

图5是本申请另一实施例提供的终端设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。

人体结构是非刚体结构,相对于汽车、桌椅等刚体结构,人体结构存在各式各样的变化。围绕升上的部分关节点进行旋转活动,人类可以完成各种复杂的动作。因此确定头、颈部、躯干和四肢的关键关节点的位置,就能够识别人物的姿态特征,从而进行行为识别。人体姿态特征的识别可以应用于多种场景,例如体感交互,目标跟踪,行为识别等。

人体姿态估计能够确定人体关键关节点位置。具体而言,人体姿态估计就是指从给定的一幅图像或者一段视频中,恢复出人体关键点的过程。

目前有两种确定人体关键点的位置坐标的方法。第一种是直接根据标签的坐标值回归每个关键点的坐标值,这种方式简单直接、速度快等优势。但是由于过于简单,会缺少一些图像语义的信息,比较适用于人脸关键点的识别,因为人脸关键点之间距离较小,且变化幅度不大,相对于每个关键点之间间隔较远,且变化幅度很大的人体关键点的识别采用直接回归的做法会带来比较大的误差。

为了降低误差,第二种确定人体关键点的位置坐标的方法是基于热力图来确定关键点的坐标。热力图是衡量关键点在图像某个位置出现的置信度,热力图是由一系列二维的点组成,每个点表示关键点出现在该位置的置信度,关键点最终位置定义为置信度最高的位置,这种方法能够充分利用图像语义的信息,精度较高。

然而,现有的人体姿态估计模型生成的热力图通常质量较差,容易导致人体关键点的识别出现误差。

为了解决上述问题,本申请实施例提供了一种人体姿态估计方法,能够对获取到的热力图进一步进行特征融合,得到质量更佳的热力图,在基于特征融合后的热力图进行人体姿态估计,能够有效地提高人体关键点的识别精度。

图1给出了本申请实施例提供给的一种人体姿态估计方法的流程示意图。本申请实施例中,以执行主体为终端设备为例进行说明,如图1所示,上述人体姿态估计方法可以包括S101至S103,详述如下:

S101:根据输入图像获取第一热力图。

在本申请实施例中,上述输入图像可以是从视频文件中截取出的一帧图像,例如从监控摄像头拍摄的监控视频中的截取出的图像;上述输入图像也可以是由摄像设备直接拍摄得到的照片。

在本申请实施例中,上述输入图像可以是需要进行姿态估计的人体图像。

在本申请实施例中,终端设备可以基于现有的人体姿态估计算法(例如Hourglass算法等)对输入图像进行处理,进而得到上述第一热力图。

S102:将所述第一热力图输入至预设特征融合模型中进行处理,得到第二热力图。

在本申请实施例中,通过能够对热力图进行精炼的预设特征融合模型对第一热力图进行处理,进而得到质量更好的第二热力图,能够提高人体姿态估计的精确度。

在本申请实施例中,上述预设特征融合模型是指完成训练的特征融合模型。上述预设特征融合模型可以预先设置于终端设备中。在得到第一热力图后,终端设备可以自动调用上述预设特征融合模型,然后将第一热力图输入到该预设特征融合模型中进行处理,就得到了与第一热力图对应的第二热力图。

在本申请一实施例中,上述所述预设特征融合模型包括下采样模块、上采样模块以及横向连接模块。

相应地,S102可以包括以下步骤:

基于所述下采样模块对所述第一热力图进行下采样处理,获取多尺度图像;

基于所述上采样模块对所述下采样模块的输出进行上采样处理;

并通过横向连接模块,将所述多尺度图像与所述下采样模块的输出进行特征融合,得到所述第二热力图。

请参阅图2,图2示出了本申请实施例提供的预设特征融合模型的结构示意图。如图2所示,在本申请一实施例中,上述下采样模块包括第一卷积单元A1、第二卷积单元A2、第三卷积单元A3以及第四卷积单元A4;上采样模块包括第五卷积单元A5、第六卷积单元A6以及第七卷积单元A7,横向连接模块包括第一横向连接单元B1、第二横向连接单元B2以及第三横向连接单元B3,第一卷积单元A1的输出分别与第二卷积单元A2的输入和第三横向连接单元B3的第一输入连接,第二卷积单元A2的输出分别与第三卷积单元A3的输入和第二横向连接单元B2的第一输入连接,第三卷积单元A3的输出分别与第四卷积单元A4的输入和第一横向连接单元B1的第一输入连接,第四卷积单元A4的输出与第一横向连接单元B1的第二输入连接,第一横向连接单元B1的输出与第五卷积单元A5的输入连接,第五卷积单元A5的输出于第二横向连接单元B2的第二输入连接,第二横向连接单元B2的输出与第六卷积单元A6的输入连接,第六卷积单元A6的输出与第三横向连接单元B3的第二输入连接,第三横向连接单元B3的输出与第七卷积单元A7的输入连接。

在此基础上,上述基于下采样模块对第一热力图进行下采样处理,获取多尺度图像,包括:

第一卷积单元A1对第一热力图进行下采样处理,得到第一尺度图像;

第二卷积单元A2对第一尺度图像进行下采样处理,得到第二尺度图像;

第三卷积单元A3对第二尺度图像进行下采样处理,得到第三尺度图像。

示例性的,假设输入到预设特征融合模型中的第一热力图的尺寸(空间分辨率)是64*64,则经过第一卷积单元A1、第二卷积单元A2、第三卷积单元A3分别进行下采样操作,即通过该卷积核降低第一热力图的空间分辨率并增加通道数,分别从64*64到32*32(第一卷积单元A1输出的第一尺度图像);从32*32到16*16(第二卷积单元A2输出的第二尺度图像);从16*16到8*8(第三卷积单元A3输出的第三尺度图像)。

然后通过上采样操作,例如最邻近插值或双线性插值等插补方式恢复热力图的分辨率,同时基于横向连接实现逐像素相加实现特征融合。

请参阅图3,图3示出了本申请实施例提供的第一横向连接单元B1的结构示意图。如图3所示,在本申请一实施例中,所述第一横向连接单元B1包括第一横向卷积单元B11和第一放大单元B12。

需要说明的是,上述第二横向连接单元B2和第三横向连接单元B3也具有如图3所示的第一横向连接单元B1的结构。

对于下采样单元输出的图像通过一个从左到右的1*1卷积,减少之前增加的通道数,但是不改变空间分辨率的大小,对上采样单元输出的图像采用一个从上到下的上采样操作(2x up),恢复该图像的分辨率至两倍大的图像,以保证相加的热力图在空间分辨率上是一致的,然后进行逐像素相加实现特征融合。

通过上述预设特征融合模型进行操作后,得到与第一热力图相同空间分辨率的第二热力图,但是此时第二热力图通过融合不同尺度图像的特征后,其质量优于第一热力图。

S103:基于所述第二热力图进行人体姿态估计,得到人体关键点坐标。

在本申请实施例中,在得到第二热力图后,基于第二热力图就可以得到人体关键点坐标。具体地,基于第二热力图确定人体关键点在图像某个位置出现的置信度。第二热力图是由一系列二维的点组成,每个点表示关键点出现在该位置的置信度,关键点最终位置定义为置信度最高的位置。即通过第二热力图确定每个关键点置信度最高的位置,进而确定出该位置的坐标。

需要说明的是,人体关键点通常包括20个人体关键关节点,例如头部、颈部、躯干以及四肢上的关节点。

综上可知,本申请实施例提供的人体姿态估计方法,能够对获取到的热力图进一步进行特征融合,得到质量更佳的热力图,在基于特征融合后的热力图进行人体姿态估计,能够有效地提高人体关键点的识别精度。

在本申请另一实施例中,上述人体姿态估计方法还包括以下步骤:

构建特征融合模型;

基于训练数据对所述特征融合模型进行训练,得到所述预设特征融合模型。

在本申请实施例中,构建的特征融合模型的结构即是如图2所示结构,本申请对此不加以赘述

在具体应用中,所述训练数据包括训练图像和所述训练图像对应的真实标签;所述基于训练数据对所述特征融合模型进行训练,得到所述预设特征融合模型,包括:

将训练图像输入至所述预设特征融合模型中进行处理,得到所述训练图像对应的热力图;

基于所述训练图像对应的热力图与所述训练对应的真实标签确定模型损失;

基于所述模型损失调整所述预设特征融合模型的模型参数,直至所述特征融合模型的损失函数收敛,得到训练完成的预设特征融合模型。

在本申请实施例中,训练完成后的特征融合模型就是本申请实施例中的预设特征融合模型。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

对应于上文实施例所述的人体姿态估计方法,图5示出了本申请实施例提供的终端设备的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。

参照图4,该终端设备40包括:获取模块41、特征融合模块42以及姿态估计模块43。

获取模块41用于根据输入图像获取第一热力图。

特征融合模块42用于将所述第一热力图输入至预设特征融合模型中进行处理,得到第二热力图。

姿态估计模块43用于基于所述第二热力图进行人体姿态估计,得到人体关键点坐标。。

在一种可能的实现方式中,上述终端设备还包括构建单元和训练单元。

构建单元用于构建特征融合模型。

训练单元用于基于训练数据对所述特征融合模型进行训练,得到所述预设特征融合模型。

需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

图5为本申请另一实施例提供的终端设备的结构示意图。如图5所示,该实施例的终端设备5包括:至少一个处理器50(图5中仅示出一个)处理器、存储器51以及存储在所述存储器51中并可在所述至少一个处理器50上运行的计算机程序52,所述处理器50执行所述计算机程序52时实现上述任意各个人体姿态估计方法实施例中的步骤。

该终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的举例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。

所称处理器50可以是中央处理单元(Central Processing Unit,CPU),该处理器50还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器51在一些实施例中可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51在另一些实施例中也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

相关技术
  • 一种人体姿态估计方法及终端设备
  • 一种人体姿态估计模型及基于其的人体姿态估计方法
技术分类

06120113255004