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

一种图像识别方法及装置

文献发布时间:2023-06-19 11:08:20


一种图像识别方法及装置

技术领域

本申请涉及计算机视觉技术领域,尤其涉及一种图像识别方法及装置。

背景技术

关键点检测是动作识别的基础。在实际识别过程中,由于环境遮挡、拍照方式、目标对象的姿势等影响,待识别图像中的部分关键点在视觉层面上并不可见,如果在这些关键点不可见的情况下刻意预测关键点的位置,凭空预测的关键点位置会降低识别目标对象的动作类别的准确率。因此,如何能够实现同时对关键点的位置信息和可见性信息的预测,成为了一个亟待解决的问题。

相关技术中,在同时对关键点的位置信息和可见性信息进行预测时,可以设计两个独立的神经网络模型进行预测,其中一个神经网络模型用于预测关键点的位置信息,另一个神经网络模型用于预测关键点的可见性信息,但是,如果额外增加一个神经网络模型进行预测的话,会占用更多的资源。

发明内容

本申请实施例提供一种图像识别方法及装置,以降低在对图像进行识别时的资源占用率。

本申请实施例提供的具体技术方案如下:

一种图像识别方法,包括:

对待识别图像进行特征提取,获得所述待识别图像的特征图,其中,所述待识别图像中包含有目标对象;

将所述特征图输入至已训练的关键点识别模型中,输出所述目标对象的各关键点的位置信息,以及所述各关键点的可见性信息,其中,所述关键点识别模型为根据至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及对所述至少一张特征样本图进行转换后的各可见性热力样本图通过迭代训练获得的,所述可见性信息表征关键点为可见或不可见;

根据所述各关键点的位置信息和所述各关键点的可见性信息,识别所述目标对象的动作类别。

可选的,若所述关键点识别模型中至少包括位置识别网络和可见性识别网络,则将所述特征图输入至已训练的关键点识别模型中,输出所述目标对象的各关键点的位置信息,以及所述各关键点的可见性信息,具体包括:

通过所述位置识别网络中的回归层,对所述特征图进行回归处理,确定所述各关键点的关键点热力图,并根据所述各关键点的关键点热力图,确定出所述各关键点的位置信息;并,

通过所述可见性识别网络中的回归层,对所述特征图进行回归处理,确定所述各关键点的可见性热力图,并根据所述各关键点的可见性热力图,确定出所述各关键点的可见性信息。

可选的,根据所述各关键点的关键点热力图,确定出所述各关键点的位置信息,具体包括:

分别针对所述各关键点,获取任意一个关键点对应的关键点热力图中包含的各像素点的热力值,并从所述各像素点的热力值中选择出数值最大的热力值对应的像素点,作为该关键点热力图中包含的关键点;

获得所述各关键点在所述待识别图像中的位置信息。

可选的,根据所述各关键点的可见性热力图,确定出所述各关键点的可见性信息,具体包括:

分别针对所述各关键点,获取任意一个关键点对应的可见性热力图中包含的各像素点的热力值,若确定该可见性热力图中包含有至少一个大于或等于预设的热力值阈值的像素点,则确定该可见性热力图中包含的关键点的可见性信息为可见,若确定所述各像素点的热力值均小于所述热力值阈值,则确定该关键点的可见性信息为不可见。

可选的,若所述关键点识别模型中至少包括位置识别网络、监督网络、可见性识别网络,则所述关键点识别模型的训练方式为:

通过所述至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及所述各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络;

固定所述训练完成的位置识别网络的各参数,对初始的监督网络进行训练,并对所述初始的监督网络的各参数进行调整,获得训练完成的监督网络;

固定所述训练完成的位置识别网络和所述训练完成的监督网络的参数,通过所述训练完成的监督网络、所述至少一张特征样本图、对所述至少一张特征样本图进行转换后的各可见性热力样本图,以及所述各可见性热力样本图中包含的关键点的可见性信息,对初始的可见性识别网络进行训练,并对所述初始的可见性识别网络的各参数进行调整,获得训练完成的可见性识别网络;

对所述关键点识别模型进行训练,直至所述关键点识别模型的目标函数收敛,获得训练完成的关键点识别模型。

可选的,对初始的位置识别网络进行训练之前,进一步包括:

获取至少一张特征样本图,并对所述至少一张特征样本图进行转换,获得各关键点热力样本图,对所述各关键点热力样本图中包含的关键点的位置信息进行标注;

对所述至少一张特征样本图进行转换,获得各可见性热力样本图,并对所述各可见性热力样本图中包含的关键点的可见性信息进行标注;

对所述各可见性热力样本图进行样本扩充,以使各可见性热力样本图与所述各关键点热力样本图的数量相同。

可选的,通过所述至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及所述各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络,具体包括:

分别针对所述至少一张特征样本图,将任意一张特征样本图输入至初始的位置识别网络中,识别获得该特征样本图中包含的各关键点的预测位置信息,并分别根据各预测位置信息与对应的关键点热力样本图中包含的关键点的位置信息之间的误差值,对所述初始的位置识别网络的各参数进行调整,直至误差值最小化,获得训练完成的位置识别网络。

一种图像识别装置,包括:

特征提取模块,用于对待识别图像进行特征提取,获得所述待识别图像的特征图,其中,所述待识别图像中包含有目标对象;

第一识别模块,用于将所述特征图输入至已训练的关键点识别模型中,输出所述目标对象的各关键点的位置信息,以及所述各关键点的可见性信息,其中,所述关键点识别模型为根据至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及对所述至少一张特征样本图进行转换后的各可见性热力样本图通过迭代训练获得的,所述可见性信息表征关键点为可见或不可见;

第二识别模块,用于根据所述各关键点的位置信息和所述各关键点的可见性信息,识别所述目标对象的动作类别。

可选的,若所述关键点识别模型中至少包括位置识别网络和可见性识别网络,则将所述特征图输入至已训练的关键点识别模型中,输出所述目标对象的各关键点的位置信息,以及所述各关键点的可见性信息时,第一识别模块具体用于:

通过所述位置识别网络中的回归层,对所述特征图进行回归处理,确定所述各关键点的关键点热力图,并根据所述各关键点的关键点热力图,确定出所述各关键点的位置信息;并,

通过所述可见性识别网络中的回归层,对所述特征图进行回归处理,确定所述各关键点的可见性热力图,并根据所述各关键点的可见性热力图,确定出所述各关键点的可见性信息。

可选的,根据所述各关键点的关键点热力图,确定出所述各关键点的位置信息时,第一识别模块具体用于:

分别针对所述各关键点,获取任意一个关键点对应的关键点热力图中包含的各像素点的热力值,并从所述各像素点的热力值中选择出数值最大的热力值对应的像素点,作为该关键点热力图中包含的关键点;

获得所述各关键点在所述待识别图像中的位置信息。

可选的,根据所述各关键点的可见性热力图,确定出所述各关键点的可见性信息时,第一识别模块具体用于:

分别针对所述各关键点,获取任意一个关键点对应的可见性热力图中包含的各像素点的热力值,若确定该可见性热力图中包含有至少一个大于或等于预设的热力值阈值的像素点,则确定该可见性热力图中包含的关键点的可见性信息为可见,若确定所述各像素点的热力值均小于所述热力值阈值,则确定该关键点的可见性信息为不可见。

可选的,若所述关键点识别模型中至少包括位置识别网络、监督网络、可见性识别网络,则训练所述关键点识别模型时,进一步包括训练模块,所述训练模块具体用于:

通过所述至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及所述各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络;

固定所述训练完成的位置识别网络的各参数,对初始的监督网络进行训练,并对所述初始的监督网络的各参数进行调整,获得训练完成的监督网络;

固定所述训练完成的位置识别网络和所述训练完成的监督网络的参数,通过所述训练完成的监督网络、所述至少一张特征样本图、对所述至少一张特征样本图进行转换后的各可见性热力样本图,以及所述各可见性热力样本图中包含的关键点的可见性信息,对初始的可见性识别网络进行训练,并对所述初始的可见性识别网络的各参数进行调整,获得训练完成的可见性识别网络;

对所述关键点识别模型进行训练,直至所述关键点识别模型的目标函数收敛,获得训练完成的关键点识别模型。

可选的,对初始的位置识别网络进行训练之前,进一步包括:

第一获取模块,用于获取至少一张特征样本图,并对所述至少一张特征样本图进行转换,获得各关键点热力样本图,对所述各关键点热力样本图中包含的关键点的位置信息进行标注;

第二获取模块,用于对所述至少一张特征样本图进行转换,获得各可见性热力样本图,并对所述各可见性热力样本图中包含的关键点的可见性信息进行标注;

样本扩充模块,用于对所述各可见性热力样本图进行样本扩充,以使各可见性热力样本图与所述各关键点热力样本图的数量相同。

可选的,通过所述至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及所述各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络时,训练模块具体用于:

分别针对所述至少一张特征样本图,将任意一张特征样本图输入至初始的位置识别网络中,识别获得该特征样本图中包含的各关键点的预测位置信息,并分别根据各预测位置信息与对应的关键点热力样本图中包含的关键点的位置信息之间的误差值,对所述初始的位置识别网络的各参数进行调整,直至误差值最小化,获得训练完成的位置识别网络。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述图像识别方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述图像识别方法的步骤。

本申请实施例中,对待识别图像进行特征提取,获得待识别图像的特征图,将特征图输入至已训练的关键点识别模型中,输出目标对象的各关键点的位置信息,以及各关键点的可见性信息,根据各关键点的位置信息和各关键点的可见性信息,识别目标对象的动作类别,这样,由于关键点识别模型是基于至少一张特征样本图、对至少一张特征样本图进行转换后获得的各关键点热力样本图,以及对至少一张特征样本图进行转换后获得的各可见性热力样本图进行训练获得的,因此,关键点识别模型在预测关键点的位置信息的同时,还能够对可见性信息进行预测,无需设计多个神经网络模型,仅需要一个模型,通过模型的两个分支就能够同时对位置信息和可见性信息进行预测,能够降低资源占用率。

附图说明

图1为本申请实施例中一种图像识别方法的流程图;

图2为本申请实施例中待识别图像的效果示意图;

图3为本申请实施例中关键点热力图的效果示意图;

图4为本申请实施例中位置识别网络的结构示意图;

图5为本申请实施例中对监督网络的训练示意图;

图6为本申请实施例中可见性识别网络的结构示意图;

图7为本申请实施例中一种关键点识别模型的结构示意图;

图8为本申请实施例中图像识别装置的结构示意图;

图9为本申请实施例中电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

关键点检测任务指是计算机视觉领域经典的任务之一。该任务的输入为目标对象的图像,输出为图像中包含的目标对象的骨骼的关键点的位置信息。关键点检测是动作分类,行为识别等诸多重要计算机视觉任务的基础,应用场景广泛。

随着深度学习的不断深入发展,关键点检测算法大多采用了卷积神经网络作为主干部分,现有的解决方案大多只关注关键点的空间位置,而不去考虑关键点本身是否可见。实际识别过程中,由于环境遮挡、拍照方式、目标对象的姿势等影响,待识别图像中的部分关键点在视觉层面上并不可见,如果在这些场景下刻意的预测关键点的位置信息时,不但会出现较大的歧义现象,而且凭空推测的关键点的位置信息会对下游其他任务产生严重干扰。因此,如何能够实现同时对关键点的位置信息和可见性信息的预测,成为了一个亟待解决的问题。

相关技术中,在同时对关键点的位置信息和可见性信息进行预测时,可以设计两个独立的神经网络模型进行预测,其中一个神经网络模型用于预测关键点的位置信息,另一个神经网络模型用于预测关键点的可见性信息,但是,如果额外增加一个神经网络模型进行预测的话,会提高资源占用率。

本申请实施例中,对待识别图像进行特征提取,获得待识别图像的特征图,将特征图输入至已训练的关键点识别模型中,输出目标对象的各关键点的位置信息,以及各关键点的可见性信息,根据各关键点的位置信息和各关键点的可见性信息,识别目标对象的动作类别,这样,在关键点识别模型中加入可见性分支,仅需要一个模型,就能够同时对关键点的位置信息和可见性信息进行预测,不仅能够降低资源占用率,还能够更好地预测目标对象的动作类别。

基于上述实施例,参阅图1所示,为本申请实施例中一种图像识别方法的流程图,具体包括:

步骤100:对待识别图像进行特征提取,获得待识别图像的特征图。

其中,待识别图像中包含有目标对象。

本申请实施例中,当待识别图像中包含有目标对象时,则对包含有目标对象的待识别图像进行特征提取,获得待识别图像的特征图。

其中,目标对象例如可以为人体,关键点例如可以为人体关键点,分别为左右肩、左右肘、左右手、左右臀部、左右膝盖及左右脚,本申请实施例中对此并不进行限制。

值得说明的是,待识别图像可以为仅包含有目标对象的图像。若待识别图像为仅包含有目标对象的图像时,则可以直接对该包含有目标对象的待识别图像进行特征提取,从而获得待识别图像的特征图。

待识别图像还可以为包含有目标对象,以及其它物体的图像。若此时待识别图像中不仅包含有目标对象,还包含有其它物体时,则需要先对待识别图像进行目标对象检测,并通过外接矩形框将目标对象在待识别图像中标注出来,并进行截取,获得仅包含有目标对象的图像,从而将截取后获得的图像作为最终需要进行特征提取的待识别图像。

例如,参阅图2所示,为本申请实施例中待识别图像的效果示意图,假设目标对象为行人,当应用场景为当摄像头拍摄到行人正在通过有交通信号灯的路口时,则此时拍摄到的待识别图像中不仅包含有行人,可能也会包含有交通信号灯、马路等,因此,为了提高识别的准确度,需要对待识别图像进行行人检测,并通过外接矩形框将行人在待识别图像中标注出来,并将标注出的行人进行截取,获得仅包含有行人的待识别图像,并根据仅包含有行人的待识别图像进行人体关键点识别。

其中,待识别图像例如可以为红绿蓝(Red Green Blue,RGB)图像,本申请实施例中对此并不进行限制。

步骤110:将特征图输入至已训练的关键点识别模型中,输出目标对象的各关键点的位置信息,以及各关键点的可见性信息。

其中,关键点识别模型为根据至少一张特征样本图、对至少一张特征样本图进行转换后获得的各关键点热力样本图,以及对至少一张特征样本图进行转换后的各可见性热力样本图通过迭代训练获得的,可见性信息表征关键点为可见或不可见。

本申请实施例中,在获得待识别图像的特征图之后,将特征图输入至已训练的关键点识别模型中,通过关键点识别模型中的位置识别网络将特征图转换为各关键点的关键点热力图,并分别从各关键点热力图中确定出各关键点的位置信息,同时,通过关键点识别模型中的可见性识别网络将特征图转换为各关键点的可见性热力图,并分别从各可见性热力图中确定出各关键点的可见性信息。

下面分别对本申请实施例中获得各关键点的位置信息,以及获得各关键点的可见性信息的步骤进行详细阐述。

首先,对本申请实施例中获得各关键点的位置信息的步骤进行详细阐述,具体包括:

通过位置识别网络中的回归层,对特征图进行回归处理,确定各关键点的关键点热力图,并根据各关键点的关键点热力图,确定出各关键点的位置信息。

本申请实施例中,首先,预先设定需要识别的各关键点,然后,通过位置识别网络中的坐标回归层,对待识别图像的特征图进行坐标回归处理,确定各关键点对应的关键点热力图。

其中,根据各关键点的关键点热力图,确定各关键点的位置信息时,具体包括:

S1:分别针对各关键点,获取任意一个关键点对应的关键点热力图中包含的各像素点的热力值,并从各像素点的热力值中选择出数值最大的热力值对应的像素点,作为该关键点热力图中包含的关键点。

本申请实施例中,由于每一张关键点热力图是将待识别图像中的每一个像素点映射为热力值从而获得的,因此,每一张关键点热力图中包含有各像素点,而这些像素点又对应一个热力值。在回归获得各关键点的关键点热力图之后,分别针对各关键点,获取任意一张关键点热力图中包含的各像素点的热力值,然后,从各像素点的热力值中,选取出数值最大的热力值,并将数值最大的热力值对应的像素点,作为该关键点热力图中的关键点,参阅图3所示,为本申请实施例中关键点热力图的效果示意图,颜色最深的像素点即为关键点。

S3:获得各关键点在待识别图像中的位置信息。

本申请实施例中,由于关键点热力图是通过待识别图像获得的,因此,关键点热力图的大小与待识别图像的大小是相同的。在获得各关键点热力图中的表征关键点的像素点之后,分别获得各像素点在待识别图像中的位置信息,从而就能够获得各关键点的在待识别图像中的位置信息。

在获得各关键点在待识别图像中的位置信息的同时,还会对各关键点是否可见的可见性信息进行识别,下面对本申请实施例中获得各关键点的可见性信息的步骤进行详细阐述,具体包括:

分别针对各关键点,获取任意一个关键点对应的可见性热力图中包含的各像素点的热力值,若确定该可见性热力图中包含有至少一个大于或等于预设的热力值阈值的像素点,则确定该可见性热力图中包含的关键点的可见性信息为可见,若确定各像素点的热力值均小于热力值阈值,则确定该关键点的可见性信息为不可见。

本申请实施例中,首先,预先设定需要识别的各关键点,然后,通过可见性识别网络中的可见性回归层,对待识别图像的特征图进行回归处理,确定各关键点的可见性热力图。

然后,由于每一张可见性热力图是将待识别图像中的每一个像素点映射为热力值从而获得的,因此,每一张可见性热力图中包含有个像素点,而这些像素点又对应一个热力值。在回归获得各关键点的可见性热力图之后,分别针对各关键点,获取任意一个关键点的可见性热力图中包含的各像素点的热力值,然后,分别判断每一个像素点的热力值是否小于预设的热力值阈值,从而判断在可见性热力图中像素点的热力值是否均小于预设的热力值阈值,具体可以分为以下两种情况:

第一种情况:在可见性热力图中的各像素点的热力值均小于预设的热力值阈值。

本申请实施例中,若确定可见性热力图各中像素点的热力值均小于预设的热力值阈值,则确定该可见性热力图对应的关键点的可见性信息为不可见。

例如,假设预设的热力值阈值为90,获取可见性热力图中包含的各像素点的热力值,若确定各像素点的热力值均小于预设的热力值阈值90,则确定该可见性热力图对应的关键点的可见性信息为不可见。

第二种情况:在可见性热力图中包含有至少一个大于或等于预设的热力值阈值的像素点。

本申请实施例中,判断可见性热力图中包含的各像素点的热力值是否大于等于预设的热力值阈值,若确定在各像素点中包含有至少一个大于等于预设的热力值阈值的像素点,则确定该可见性热力图对应的关键点的可见性信息为可见。

例如,假设预设的热力值阈值为90,获取可见性热力图中包含的各像素点的热力值,若确定各像素点中,有一个像素点的热力值为96,大于预设的热力值阈值90,其它各像素点的热力值均小于90,则确定该可见性热力图对应的关键点的可见性信息为可见。

需要说明的是,本申请实施例中,只要各像素点中,有一个像素点的热力值大于等于预设的热力值阈值,则确定该可见性热力图对应的关键点的可见性信息为可见。

在通过关键点识别模型对关键点的位置信息和对应的可见性信息进行预测之前,首先需要对关键点识别模型进行训练,下面对本申请实施例中关键点识别模型的训练方式进行详细阐述,具体包括:

S1:通过至少一张特征样本图、对至少一张特征样本图进行转换后获得的各关键点热力样本图,以及各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络。

本申请实施例中,首先,获得训练样本图像集,下面对本申请实施例中获得训练样本图像集的方式进行详细说明,具体包括:

A1:获取至少一张特征样本图,并对至少一张特征样本图进行转换,获得各关键点热力样本图,对各关键点热力样本图中包含的关键点的位置信息进行标注。

本申请实施例中,首先,获得各待识别样本图像,并对各待识别样本图像进行特征提取,获得对应的各特征样本图。

然后,通过高斯模糊处理,获得各待识别样本图像中包含的各关键点,以及各关键点在待识别样本图像中的位置信息。

最后,分别针对各待识别样本图像,通过任意一张待识别样本图像的各关键点的位置信息,对该待识别样本图像的特征样本图进行标注,从而获得各特征样本图和对应的各位置信息,并且,还会根据各关键点的位置信息从而确定出对应的关键点热力样本图。

A2:对至少一张特征样本图进行转换,获得各可见性热力样本图,并对各可见性热力样本图中包含的关键点的可见性信息进行标注。

本申请实施例中,首先,获得各待识别样本图像,并对各待识别样本图像进行特征提取,获得对应的各特征样本图。

然后,通过高斯模糊处理,获得各待识别图像样本中包含的各关键点,并对各关键点的可见性信息进行标注。从而获得各特征样本图和对应的各关键点的可见性信息,并且,还会根据各关键点的可见性信息从而确定出对应的可见性热力样本图。

A3:对各可见性热力样本图进行样本扩充,以使各可见性热力样本图与各关键点热力样本图的数量相同。

本申请实施例中,由于可见性信息样本的数量较少,因此,可以对可见性热力样本图进行扩充,使得可见性热力样本图的数量与各关键点热力样本图的数量相同。

进一步地,当目标对象为人体时,目标对象的动作类别可以简单分为以下四种:直立不弯腰、直立弯腰、非直立和遮挡。由于这四种类别的待识别样本图像出现的概率和采集难度存在着较大差异,因此,会导致训练样本图像集中存在样本不均衡的现象。特别是非直立场景,待识别样本图像较少。但是,训练样本的不均衡会导致关键点识别模型在非直立场景下表现较差,影响在非直立场景下的关键点识别精度,从而使得关键点识别的泛化性较差。

因此,为了解决提高关键点识别的精度,在对各样本进行训练之前,对训练样本重新进行标注,将标注为非直立的数据拷贝一份,补充到训练样本图像集中。从而使得各类样本的每一种目标对象的动作类别的样本数量是相同的,这样,离线对每一动作类别的样本进行配平,能够使得关键点识别模型得到更加完善的训练,从而提高对于关键点识别的精度。

其中,训练样本图像集例如可以为微软构建的常见物体检测集(Common Objectsin Context,MSCOCO)、Max-Planck-Institut for Information(MPII)、人工智能挑战集(Artificial Intelligence Challeng,AI Challenge)等,本申请实施例中对此并不进行限制。

需要说明的是,还可以通过对模型的参数设置不同的权重,从而解决在样本不均衡的情况下完善对于关键点识别模型的训练。

然后,在获取到训练样本图像集之后,通过训练样本图像集对关键点识别模型中的初始的位置识别网络进行训练,获得训练完成的位置识别网络。

其中,位置识别网络例如可以为卷积神经网络(Convolutional NeuralNetworks,CNN),CNN例如可以为残差网络(Residual Network,ResNet)18,还可以为视觉几何群网络(Visual Geometry Group,VGG)等,本申请实施例中对此并不进行限制。

进一步地,在对待识别图像进行特征提取获得特征图之后,还可以通过上采样层,对特征图进行放大,本申请实施例中的上采样层为差值上采样,是为了适合在识别时的芯片,当然,也可以选择反卷积,效果会更好,本申请实施例中对此并不进行限制。

需要说明的是,在对关键点识别模型的第一阶段进行训练时,仅训练关键点识别模型的位置识别网络,从而获得训练完成的位置识别网络,下面对本申请实施例中对位置识别网络进行训练的步骤进行详细阐述,具体包括:

分别针对至少一张特征样本图,将任意一张特征样本图输入至初始的位置识别网络中,识别获得该特征样本图中包含的各关键点的预测位置信息,并分别根据各预测位置信息与对应的关键点热力样本图中包含的关键点的位置信息之间的误差值,对初始的位置识别网络的各参数进行调整,直至误差值最小化,获得训练完成的位置识别网络。

例如,参阅图4所示,为本申请实施例中位置识别网络的结构示意图,在获得各特征样本图之后,分别针对各特征样本图执行以下操作:

首先,对特征样本图进行卷积(conv)操作,获得各关键点的第一关键点热力样本图。

然后,将特征样本图与各关键点热力样本图进行合并处理,获得合并后的特征图。

然后,对合并后的特征图进行conv操作,获得第二关键点热力样本图。

最后,对第二关键点热力样本图进行conv操作,获得最终识别出的关键点的预测位置信息。

然后,分别根据各预测位置信息与对应的关键点热力样本图中包含的关键点的位置信息之间的误差值,对初始的位置识别网络的各参数进行调整,直至误差值最小化,获得训练完成的位置识别网络。

S2:固定训练完成的位置识别网络的各参数,对初始的监督网络进行训练,并对初始的监督网络的各参数进行调整,获得训练完成的监督网络。

本申请实施例中,固定训练完成的位置识别网络的各个参数,并通过训练样本图像集中的各特征样本图以及对应的各关键点的可见性信息,对初始的监督网络进行训练,对初始的监督网络的参数进行调整,获得训练完成的监督网络。

需要说明的是,监督网络用于对可见性识别网络训练时进行监督,更好地将各关键点的可见性信息与对应的预测可见性信息进行对照。

例如,参阅图5所示,为本申请实施例中对监督网络的训练示意图,将位置识别网络中的conv的参数拷贝到对应的vis分支上,并将对应的参数固定,只训练全连接操作(fc)网络,本阶段训练仅需训练1个epoch。

S3:固定训练完成的位置识别网络和训练完成的监督网络的参数,通过训练完成的监督网络、至少一张特征样本图、对至少一张特征样本图进行转换后的各可见性热力样本图,以及各可见性热力样本图中包含的关键点的可见性信息,对初始的可见性识别网络进行训练,并对初始的可见性识别网络的各参数进行调整,获得训练完成的可见性识别网络。

本申请实施例中,对监督网络训练完成之后,固定训练完成的位置识别网络的参数,并固定训练完成的监督网络的参数,仅对于可见性识别网络进行训练。然后,通过训练完成的监督网络和训练样本图像集中的各特征样本图和各关键点的可见性信息,对初始的可见性识别网络进行训练,并对初始的可见性识别网络的参数进行调整,最后获得训练完成的可见性识别网络。

需要说明的是,在对可见性识别网络进行训练时,为了保证可见性识别网络的准确性,需要将训练样本图像集中的各特征样本图和各关键点的可见性信息训练四次。

例如,参阅图6所示,为本申请实施例中可见性识别网络的结构示意图,通过conv层对可见性热力样本图进行处理,获得各第一可见性热力样本图(vis heatmap),并通过conv层对vis heatmap进行卷积处理,获得第二可见性热力样本图(heat2_vis),然后,再次通过conv层对heat2_vis进行卷积处理,获得vis heatmap,最后,通过平均池化层(avgpool)获得最终识别出的可见性信息。

并且,对关键点的可见性信息进行识别,本身是较为简单的任务,如果直接和关键点的位置信息同时预测,会导致对各关键点的位置信息识别的精度下降较多,因此,本申请实施例中分别对位置识别网络和可见性识别网络分别进行训练。

S4:对关键点识别模型进行训练,直至关键点识别模型的目标函数收敛,获得训练完成的关键点识别模型。

本申请实施例中,通过训练样本图像集对关键点识别模型进行训练,端到端训练关键点识别模型的所有参数,适当降低学习率,直至关键点识别模型的目标参数收敛,获得训练完成的关键点识别模型。

进一步地,在获得训练完成后的关键点识别模型之后,可将训练完成的关键点识别模型作为神经网络搜索(Neural Architecture Search,NAS)过程中的基线模型。由于该训练完成的关键点识别模型的目标速度和目标精度能够达到用户预期的速度和精度,因此,基于该基线模型进行NAS搜索,能够在速度和精度较高的基线模型的基础上,进一步提高关键点识别模型的速度和精度,从而获得更优的网络结构。

进一步地,需要说明的是,本申请实施例中对待识别图像进行特征提取时,也可以通过关键点识别模型从而实现特征提取。

步骤120:根据各关键点的位置信息和各关键点的可见性信息,识别目标对象的动作类别。

本申请实施例中,在确定出各目标对象的位置信息和对应的可见性信息之后,根据各关键点的位置信息和对应的可见性信息,识别待识别图像中包含的目标对象的动作类别。

例如,现有技术中仅通过关键点的位置信息无法判断出人手是在身体前侧还是身体后侧,本申请实施例中可以通过各关键点的可见性信息判断出人手是在身体前侧还是身体后侧,从而更好地预测目标对象的动作类别。

本申请实施例中,对待识别图像进行特征提取,获得待识别图像的特征图,将特征图输入至已训练的关键点识别模型中,输出目标对象的各关键点的位置信息,以及各关键点的可见性信息,根据各关键点的位置信息和各关键点的可见性信息,识别目标对象的动作类别,这样,能够实现减少同时对关键点的位置信息和可见性信息的识别时的资源占用率。并且,通过更多的样本对可见性信息进行训练,能够提高关键点识别模型在对可见性信息预测时的精度。

另外,相关技术中在获得关键点的位置信息和可见性信息时,一般是单独建立两个模型,其中一个模型用于预测关键点的位置信息,另一个模型用于预测关键点的可见性信息,而通过相关技术中的这种方式,需要在通过第一个模型预测获得关键点,以及各关键点的位置信息之后,再通过另一个模型对上一个模型识别出的关键点的可见性信息进行预测,两个模型是串行使用,也就是说,第二个模型的输入为第一个模型的输出,这样,会降低关键点识别的效率,针对相关技术中的这个问题,本申请实施例中的关键点识别模型中包含有两个支路,可以分别对关键点的位置信息和可见性信息进行识别,只需要通过一个模型,就能够实现同时对位置信息和可见性信息进行识别,提高了关键点的识别效率。

基于上述实施例,参阅图7所示,为本申请实施例中一种关键点识别模型的结构示意图,具体包括:

1、通过resnet18网络对包含有目标对象的待识别图像进行特征提取,获得待识别图像的特征图。

2、通过Deconv层将特征图放大到预设的大小。

3、通过conv层对放大后的特征图进行卷积操作。

4、获得feat。

5、位置识别网络。

(1)通过conv层对feat进行卷积操作,获得各第一关键点热力图。

(2)将feat与各第一关键点热力图进行合并处理,获得第一合并后的图像。

(3)通过conv层对第一合并后的图像进行卷积操作,获得feat1。

(4)通过conv层对feat1进行卷积操作,获得各关键点的关键点热力图。

(5)通过各关键点热力图确定目标对象的各关键点的位置信息。

6、可见性识别网络。

(1)通过conv层对feat进行卷积操作,获得各第一可见性热力图。

(2)将feat与各第一关键点热力图进行合并处理,获得第二合并后的图像。

(3)通过conv层对第二合并后的图像进行卷积操作,获得feat2_vis。

(4)通过conv层对feat2_vis进行卷积操作,获得vis heatmap。

(5)通过avgpool获得各关键点的可见性信息。

基于同一发明构思,本申请实施例中提供了图像识别装置,该图像识别装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图8所示,为本申请实施例中图像识别装置的结构示意图,具体包括:

特征提取模块800,用于对待识别图像进行特征提取,获得所述待识别图像的特征图,其中,所述待识别图像中包含有目标对象;

第一识别模块810,用于将所述特征图输入至已训练的关键点识别模型中,输出所述目标对象的各关键点的位置信息,以及所述各关键点的可见性信息,其中,所述关键点识别模型为根据至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及对所述至少一张特征样本图进行转换后的各可见性热力样本图通过迭代训练获得的,所述可见性信息表征关键点为可见或不可见;

第二识别模块820,用于根据所述各关键点的位置信息和所述各关键点的可见性信息,识别所述目标对象的动作类别。

可选的,若所述关键点识别模型中至少包括位置识别网络和可见性识别网络,则将所述特征图输入至已训练的关键点识别模型中,输出所述目标对象的各关键点的位置信息,以及所述各关键点的可见性信息时,第一识别模块810具体用于:

通过所述位置识别网络中的回归层,对所述特征图进行回归处理,确定所述各关键点的关键点热力图,并根据所述各关键点的关键点热力图,确定出所述各关键点的位置信息;并,

通过所述可见性识别网络中的回归层,对所述特征图进行回归处理,确定所述各关键点的可见性热力图,并根据所述各关键点的可见性热力图,确定出所述各关键点的可见性信息。

可选的,根据所述各关键点的关键点热力图,确定出所述各关键点的位置信息时,第一识别模块810具体用于:

分别针对所述各关键点,获取任意一个关键点对应的关键点热力图中包含的各像素点的热力值,并从所述各像素点的热力值中选择出数值最大的热力值对应的像素点,作为该关键点热力图中包含的关键点;

获得所述各关键点在所述待识别图像中的位置信息。

可选的,根据所述各关键点的可见性热力图,确定出所述各关键点的可见性信息时,第一识别模块810具体用于:

分别针对所述各关键点,获取任意一个关键点对应的可见性热力图中包含的各像素点的热力值,若确定该可见性热力图中包含有至少一个大于或等于预设的热力值阈值的像素点,则确定该可见性热力图中包含的关键点的可见性信息为可见,若确定所述各像素点的热力值均小于所述热力值阈值,则确定该关键点的可见性信息为不可见。

可选的,若所述关键点识别模型中至少包括位置识别网络、监督网络、可见性识别网络,则训练所述关键点识别模型时,进一步包括训练模块830,所述训练模块830具体用于:

通过所述至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及所述各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络;

固定所述训练完成的位置识别网络的各参数,对初始的监督网络进行训练,并对所述初始的监督网络的各参数进行调整,获得训练完成的监督网络;

固定所述训练完成的位置识别网络和所述训练完成的监督网络的参数,通过所述训练完成的监督网络、所述至少一张特征样本图、对所述至少一张特征样本图进行转换后的各可见性热力样本图,以及所述各可见性热力样本图中包含的关键点的可见性信息,对初始的可见性识别网络进行训练,并对所述初始的可见性识别网络的各参数进行调整,获得训练完成的可见性识别网络;

对所述关键点识别模型进行训练,直至所述关键点识别模型的目标函数收敛,获得训练完成的关键点识别模型。

可选的,对初始的位置识别网络进行训练之前,进一步包括:

第一获取模块840,用于获取至少一张特征样本图,并对所述至少一张特征样本图进行转换,获得各关键点热力样本图,对所述各关键点热力样本图中包含的关键点的位置信息进行标注;

第二获取模块850,用于对所述至少一张特征样本图进行转换,获得各可见性热力样本图,并对所述各可见性热力样本图中包含的关键点的可见性信息进行标注;

样本扩充模块860,用于对所述各可见性热力样本图进行样本扩充,以使各可见性热力样本图与所述各关键点热力样本图的数量相同。

可选的,通过所述至少一张特征样本图、对所述至少一张特征样本图进行转换后获得的各关键点热力样本图,以及所述各关键点热力样本图中包含的关键点的位置信息,对初始的位置识别网络进行训练,获得训练完成的位置识别网络时,训练模块830具体用于:

分别针对所述至少一张特征样本图,将任意一张特征样本图输入至初始的位置识别网络中,识别获得该特征样本图中包含的各关键点的预测位置信息,并分别根据各预测位置信息与对应的关键点热力样本图中包含的关键点的位置信息之间的误差值,对所述初始的位置识别网络的各参数进行调整,直至误差值最小化,获得训练完成的位置识别网络。

基于上述实施例,参阅图9所示为本申请实施例中电子设备的结构示意图。

本申请实施例提供了一种电子设备,该电子设备可以包括处理器910(CenterProcessing Unit,CPU)、存储器920、输入设备930和输出设备940等,输入设备930可以包括键盘、鼠标、触摸屏等,输出设备940可以包括显示设备,如液晶显示器(Liquid CrystalDisplay,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。

存储器920可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器910提供存储器920中存储的程序指令和数据。在本申请实施例中,存储器920可以用于存储本申请实施例中任一种图像识别方法的程序。

处理器910通过调用存储器920存储的程序指令,处理器910用于按照获得的程序指令执行本申请实施例中任一种图像识别方法。

基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的图像识别方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

相关技术
  • 图像识别方法、装置、系统及内窥镜图像识别方法、装置
  • 文字合成图像的识别方法及装置、图像识别方法
技术分类

06120112809960