关键点检测方法、装置、电子设备和计算机可读存储介质与流程

文档序号:29614118发布日期:2022-04-13 10:50阅读:54来源:国知局
关键点检测方法、装置、电子设备和计算机可读存储介质与流程

1.本发明涉及通信技术领域,具体涉及一种关键点检测方法、装置、电子设备和计算机可读存储介质。


背景技术:

2.近年来,随着互联网技术的飞速发展,对图像或视频的检测也更加准确,比如,可以检测出视频或图像中的关键点。以视频或图像为人脸视频/图像为例,所谓关键点可以为人脸轮廓中的眼睛、鼻子或者嘴巴等。对关键点进行检测往往需要很大的模型,为了降低检测模型的大小,现有的关键点检测方法往往通过知识蒸馏的方式得到轻量检测模型,并采用轻量检测模型进行关键点检测。
3.在对现有技术的研究和实践过程中,本发明的发明人发现当轻量检测模型减小到一定程度之后,特征差距太大,从而无法进行知识蒸馏,使得轻量检测模型的大小受到限制,因此,导致关键点检测的检测效率降低。


技术实现要素:

4.本发明实施例提供一种关键点检测方法、装置、电子设备和计算机可读存储介质,可以提高关键点检测的检测效率。
5.一种关键点检测方法,包括:
6.获取图像样本集合,并采用所述图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型;
7.对所述预设深度检测模型进行多次压缩,并采用所述图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型;
8.根据所述图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,所述预设轻量检测模型为对预设深度检测模型进行轻量化处理后的检测模型;
9.采用所述候选训练后轻量检测模型对所述图像样本集合中的图像样本进行关键点检测;
10.基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用所述目标训练后轻量检测模型对待检测图像进行关键点检测。
11.相应的,本发明实施例提供一种关键点检测装置,包括:
12.获取单元,用于获取图像样本集合,并采用所述图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型;
13.压缩单元,用于对所述预设深度检测模型进行多次压缩,并采用所述图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型;
14.训练单元,用于根据所述图像样本集合和训练后过渡检测模型,对预设轻量检测
模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,所述预设轻量检测模型为对所述预设深度检测模型进行轻量化处理后的检测模型;
15.检测单元,用于采用所述候选训练后轻量检测模型对所述图像样本集合中的图像样本进行关键点检测;
16.筛选单元,用于基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用所述目标训练后轻量检测模型对待检测图像进行关键点检测。
17.可选的,在一些实施例中,所述压缩单元,具体可以用于采用所述训练后深度检测模型对所述图像样本集合中的图像样本进行关键点预测,得到第一关键点预测结果;采用所述过渡检测模型对所述图像样本集合中的图像样本进行关键点预测,得到第二关键点预测结果;根据所述第一关键点预测结果和第二关键点预测结果,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。
18.可选的,在一些实施例中,所述压缩单元,具体可以用于获取所述图像样本集合中每一图像样本的预设关键点位置区间;根据所述预设关键点位置区间、第一关键点预测结果和第二关键点预测结果,确定所述图像样本集合的目标损失信息;基于所述目标损失信息,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。
19.可选的,在一些实施例中,所述压缩单元,具体可以用于根据所述预设关键点位置区间和第二关键点预测结果,确定所述图像样本集合的关键点损失信息;基于所述第一关键点预测结果和第二关键点预测结果,确定所述图像样本集合的蒸馏损失信息;将所述关键点损失信息和蒸馏损失信息进行融合,得到所述图像样本集合的目标损失信息。
20.可选的,在一些实施例中,所述压缩单元,具体可以用于在所述第二关键预测结果中提取出每一预测关键点的位置坐标;根据所述位置坐标,确定所述预测关键点与所述预设关键点位置区间的位置关系;基于所述位置关系,计算所述预测关键点的初始关键点损失信息,并将所述初始关键点损失信息进行融合,得到所述图像样本集合的关键点损失信息。
21.可选的,在一些实施例中,所述压缩单元,具体可以用于将所述位置坐标与所述预测关键点位置区间的区间坐标进行对比;当所述位置坐标在所述区间坐标内时,确定所述预测关键点在所述预设关键点位置区间内;当所述位置坐标在所述区间坐标外时,确定所述预测关键点在所述预设关键点位置区间外。
22.可选的,在一些实施例中,所述压缩单元,具体可以用于当所述预测关键点在所述预设关键点位置区间内时,根据所述预测关键点的位置坐标,对所述预设关键点位置区间进行调整,以得到所述预测关键点的初始关键点损失信息;当所述预测关键点在所述预设关键点位置区域外时,根据所述预测关键点的位置坐标,计算所述预测关键点与预设关键点位置区间之间的位置距离,得到所述预测关键点的初始关键点损失信息。
23.可选的,在一些实施例中,所述压缩单元,具体可以用于根据所述预测关键点的位置坐标,确定所述预设关键点位置区间的调整参数;将所述调整参数与所述预设关键点位置区间进行融合,得到所述预测关键点的初始关键点损失信息。
24.可选的,在一些实施例中,所述压缩单元,具体可以用于计算所述预设关键点位置区间与预设区间曲率的曲率比值;根据所述曲率比值,在所述预设关键点位置区间中筛选出目标关键点的目标位置坐标;基于所述位置坐标和目标位置坐标,计算所述预测关键点
和目标关键点之间的位置距离,得到所述预测关键点的初始关键点损失信息。
25.可选的,在一些实施例中,所述压缩单元,具体可以用于在所述第一关键点预测结果中筛选出每一预测关键点的第一预测位置,并在所述第二关键点预测结果中筛选出对应的预测关键点的第二预测位置;计算所述预测关键点的第一预测位置和第二预测位置的位置距离,得到所述预测关键点对应的初始蒸馏损失信息;将每一所述预测关键点的初始蒸馏损失信息进行融合,得到所述图像样本集合的蒸馏损失信息。
26.可选的,在一些实施例中,所述训练单元,具体可以用于采用所述训练后过渡检测模型对所述图像样本集合中的图像样本进行关键点预测,得到第三关键点预测结果;采用所述预设轻量检测模型对所述图像样本集合中的图像样本进行关键点预测,得到第四关键点预测结果;根据所述第三关键点预测结果和第四关键点预测结果,对所述预设轻量检测模型进行收敛,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型。
27.可选的,在一些实施例中,所述筛选单元,具体可以用于获取所述图像样本集合中每一图像样本的关键点标注位置;在所述检测结果中提取出每一所述图像样本的关键点预测位置;根据所述关键点标注位置和关键点预测位置,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。
28.可选的,在一些实施例中,所述筛选单元,具体可以用于将所述关键点预测位置与所述关键点标注位置进行对比;基于对比结果,计算每一候选训练后轻量模型针对所述图像样本集合的预测准确率;根据所述预测准确率,在所述候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。
29.此外,本发明实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序实现本发明实施例提供的关键点检测方法。
30.此外,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种关键点检测方法中的步骤。
31.本发明实施例在获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型后,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,然后,根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,然后,采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测,基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测;由于该方案没有直接采用训练后深度检测模型进行蒸馏得到轻量化检测模型,而是通过在深度检测模型和轻量化检测模型中间添加多个过渡检测模型,而且过渡模型为对深度检测模型压缩后得到的,从而可以将深度检测模型学习到的知识通过过渡检测模型逐步迁移至轻量检测模型中,使得轻量检测模型更加轻量,因此,可以提升关键点检测的检测效率。
附图说明
32.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1是本发明实施例提供的关键点检测方法的场景示意图;
34.图2是本发明实施例提供的关键点检测方法的流程示意图;
35.图3是本发明实施例提供的过渡检测模型进行知识蒸馏传递的结构示意图;
36.图4是本发明实施例提供的采用候选训练后轻量检测模型进行关键点检测的检测示意图;
37.图5是本发明实施例提供的关键点检测的另一流程示意图;
38.图6是本发明实施例提供的关键点检测装置的结构示意图;
39.图7是本发明实施例提供的电子设备的结构示意图。
具体实施方式
40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.本发明实施例提供一种关键点检测方法、装置、电子设备和计算机可读存储介质。其中,该关键点检测装置可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备。
42.其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
43.例如,参见图1,以关键点检测装置集成在电子设备中为例,电子设备在获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型后,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,然后,根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,然后,采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测,基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测,进而提升关键点检测的检测效率。
44.以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
45.本实施例将从关键点检测装置的角度进行描述,该关键点检测装置具体可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备;其中,该终端可以包括平板电脑、笔记本电脑、以及个人计算机(pc,personal computer)、可穿戴设备、虚拟现实设备或可以进行关键点检测的智能设备等设备。
46.一种关键点检测方法,包括:
47.获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,根据所述图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,该预设轻量检测模型为对预设深度检测模型进行轻量化处理后的检测模型;采用候选训练后轻量检测模型对所述图像样本集合中的图像样本进行关键点检测;基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用所述目标训练后轻量检测模型对待检测图像进行关键点检测。
48.如图2所示,该关键点检测方法的具体流程如下:
49.101、获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型。
50.其中,预设深度检测模型可以为预设的进行关键点检测的大型模型。
51.其中,获取图像样本集合的方式可以有多种,具体可以如下:
52.例如,可以直接接收用户通过终端上传的图像样本集合,或者,从视频中提取出至少一张视频帧,对视频帧中的关键点进行标注,得到图像样本集合,或者,从互联网或者图像数据库中获取原始图像,在原始图像样本识别出存在关键点的目标原始图像,并对该目标原始图像中存在的关键点进行标注,得到图像样本,将图像样本进行融合,就可以得到图像样本集合,或者,接收终端发送的检测模型训练请求,该检测模型训练请求携带图像样本的存储地址,根据存储地址,在终端的内存、缓存或者第三方数据库中获取图像样本,从而得到图像样本集合。
53.在获取图像样本集合之后,便可以采用图像样本集合对预设深度检测模型进行训练,训练的方式可以有多种,比如,可以采用预设深度检测模型对图像样本集合中的每一图像样本的关键点进行预测,得到目标关键点预测结果,获取图像样本集合中每一图像样本的预设关键点位置区间,根据预设关键点位置区间和目标关键点预测结果,确定图像样本集合的目标关键点损失信息,基于目标关键点损失信息,对预设深度检测模型进行收敛,得到训练后深度检测模型。
54.其中,根据预设关键点位置区间和目标关键点预测结果,确定图像样本集合的目标关键点损失信息的方式可以有多种,比如,在目标关键点预测结果中提取出每一预测关键点的基础位置坐标,基于基础位置坐标,确定预测关键点与预设关键点区间的目标位置关系,基于目标位置关系,计算预测关键点的损失信息,得到第一关键点损失信息,并将第一关键点损失信息进行融合,得到目标关键点损失信息。
55.其中,目标位置关系可以理解为预测关键点是否位于预设关键点位置区间内,因此,确定目标位置关系的方式可以有多种,比如,将基础位置坐标与预测关键点位置区间的
区间坐标进行对比,当基础位置坐标在区间坐标内时,确定预测关键点在预设关键点位置区间内,当基础位置坐标在区间坐标外时,确定预测关键点在预设关键点位置区间外。
56.在目标位置关系之后,便可以基于目标位置关系,计算预测关键点的损失信息,得到第一关键点损失信息,计算的方式可以有多种,比如,当预测关键点在预设关键点位置区间内时,根据预测关键点的基础位置坐标,对预设关键点位置区间进行调整,以得到预测关键点的第一关键点损失信息,当预测关键点在预设关键点位置区间外时,根据预测关键点的基础位置坐标,计算预测关键点与预设关键点位置区间之间的位置距离,得到预测关键点的第一关键点损失信息,具体可以如公式(1)所示:
[0057][0058]
其中,wing(x)为第一关键的损失信息,x为预测关键点的基础位置坐标,w为预设关键点位置区间,∈为预设区间曲率,c为常数,c=w-wln(1+w/∈)。
[0059]
通过公式(1)可以发现,当预测关键点在预设关键点位置区间内时,对预设关键点位置区间进行调整的方式可以有多种,比如,可以根据预测关键点的位置坐标,确定预设关键点位置区间的调整参数,将调整参数与预设关键点位置区间进行融合,得到预设关键点的第一关键点损失信息。当预测关键点在预设关键点位置区间外时,计算预测关键点与预设关键点位置区间之间的位置距离的方式可以有多种,比如,可以计算预设关键点位置区间与预设区间曲率的曲率比值,根据曲率比值,在预设关键点位置区间中筛选出目标关键点的目标位置坐标,这里的目标位置坐标就可以理解为公式(1)中的常数c,基于位置坐标和目标位置坐标,计算预测关键点和目标关键点之间的位置距离,得到预测关键点的第一关键点损失信息。
[0060]
其中,目标关键点损失信息,对预设深度检测模型进行收敛的方式可以有多种,比如,可以采用梯度下降算法或者其他收敛算法基于目标关键点损失信息,对预设深度检测模型进行收敛,得到训练后深度检测模型。这里的训练后深度检测模型就可以理解为用于关键点检测的教师检测模型。
[0061]
102、对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型。
[0062]
其中,过渡检测模型用于在知识蒸馏中进行过渡的检测模型,由于轻量检测模型较小,直接进行知识蒸馏的话,特征差距太大,就会导致蒸馏失败,采用过渡检测模型的作用就是在深度检测模型和轻量检测模型中架设一座知识蒸馏的桥梁,用于传递和过渡学习到的知识。
[0063]
其中,对预设深度检测模型进行多次压缩的方式可以有多种,具体可以如下:
[0064]
例如,可以获取预设深度检测模型的模型结构,基于该模型结构,对预设深度检测模型的部分重复或者可调整的网络层进行删减,每次删减数量不同的网络层,从而就可以得到多个删减后的深度检测模型,将删减后的深度检测模型作为压缩的过渡检测模型,或者,可以直接减小预设深度检测模型的模型深度,从而就可以得到不同模型深度的预设深度检测模型,将深度减小后的预设深度检测模型作为压缩后的过渡检测模型,或者,还可以获取预设深度检测模型的属性信息,在该属性信息中提取出预设深度检测模型的大小,然后,根据预设深度检测模型的大小,采用多个压缩比对预设深度检测模型直接进行压缩,譬
如,可以压缩至原始大小的0.9、0.8或者任意压缩比对应的模型大小,将不同模型大小对应的预设深度检测模型作为压缩后的过渡检测模型。
[0065]
在对预设深度检测模型进行调整得到过渡检测模型之后,便可以采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练(知识蒸馏),训练的过程可以有多种,比如,可以采用训练后深度检测模型对图像样本集合中的图像样本进行关键点预测,得到第一关键点预测结果,采用过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第二关键点预测结果,根据第一关键点预测结果和第二关键点预测结果,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。
[0066]
其中,根据第一关键点预测结果和第二关键点预测结果,对每次压缩后得到的过渡检测模型进行收敛的方式可以有多种,比如,可以获取图像样本集合中每一图像样本的预设关键点位置区间,根据预设关键点位置区间、第一关键点预测结果和第二关键点预测结果,确定图像样本集合的目标损失信息,基于目标损失信息,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。
[0067]
其中,根据预设关键点位置区间、第一关键点预测结果和第二关键点预测结果,确定图像样本集合的目标损失信息的方式可以有多种,比如,可以根据预设关键点位置区间和第二关键点预测结果,确定图像样本的关键点损失信息,基于第一关键点预测结果和第二关键点预测结果,确定图像样本集合的目标损失信息,将关键点损失信息和蒸馏损失信息进行融合,得到图像样本集合的目标损失信息。
[0068]
其中,关键点损失信息可以为过渡检测模型在进行关键点预测时产生的损失信息,根据预设关键点位置区间和第二关键点预测结果,确定图像样本集合的关键点损失信息的方式可以有多种,比如,可以在第二关键点预测结果中提取出每一预测关键点的位置坐标,根据位置坐标,确定预测关键点与预设关键点位置区间的位置关系,基于该位置关系,计算预测关键点的初始关键点损失信息,并将初始关键点损失信息进行融合,得到图像样本集合的关键点损失信息。
[0069]
其中,位置关系可以理解为预测关键点是否为位于预设关键点位置区间内,因此,确定位置关系的方式可以有多种,比如,将位置坐标与预设关键点位置区间的区间坐标进行对比,当位置坐标在区间坐标内时,确定预测关键点在预设关键点位置区间内,当位置坐标在区间坐标外时,确定预测关键点在预设关键点位置区间外。
[0070]
在确定出位置关系之后,便可以基于位置关系,计算预测关键点的初始关键点损失信息,计算方式可以有多种,比如,当预测关键点在预设关键点位置区间内时,根据预测关键点的位置坐标,对预设关键点位置区间进行调整,以得到预测关键点的初始关键点损失信息,当预测关键点在预设关键点位置区间外时,根据预测关键点的位置坐标,计算预测关键点与预设关键点位置区间之间的位置距离,得到预测关键点的初始关键点损失信息。
[0071]
其中,计算预测关键点的初始关键点损失信息可以如公式(1)所示,对预设关键点位置区间进行调整,从而得到初始关键点损失信息的方式可以有多种,比如,根据预测关键点的位置坐标,确定预设关键点位置区间的调整参数,将调整参数与预设关键点位置区间进行融合,得到预测关键点的初始关键点损失信息。计算预测关键点与预设关键点位置区间之间的位置距离,从而得到初始关键点损失信息的方式可以有多种,比如,可以计算预设关键点位置区间与预设区间曲率的曲率比值,根据曲率比值,在预设关键点位置区间中筛
选出目标关键点的目标位置坐标,基于位置坐标和目标位置坐标,计算预测关键点和目标关键点之间的位置距离,得到预测关键点的初始关键点损失信息。
[0072]
其中,蒸馏损失信息可以理解为引入的训练后深度检测模型的特征监督信号对过渡检测模型进行监督而产生的损失信息,该蒸馏损失信息的作用是约束过渡检测模型的输出尽可能逼近训练后深度检测模型的输出。根据第一关键点预测结果和第二关键点预测结果,确定图像样本集合的蒸馏损失信息的方式可以有多种,比如,可以在第一关键点预测结果中筛选出每一预测关键点的第一预测位置,并在第二关键点预测结果中筛选出对应的预测关键点的第二预测位置,计算预测关键点的第一预测位置和第二预测位置的位置距离,得到预测关键点对应的初始蒸馏损失信息,将每一预测关键点的初始蒸馏损失信息进行融合,得到图像样本集合的蒸馏损失信息,具体可以如公式(2)所示:
[0073]
l
dis
=σ(x
t-xs)2ꢀꢀ
(2)
[0074]
其中,l
dis
为蒸馏损失信息,x
t
为第一预测位置,xs为第二预测位置。
[0075]
在确定出关键点损失信息和蒸馏损失信息之后,便可以将关键点损失信息和蒸馏损失信息进行融合,融合的方式可以有多种,比如,可以将关键点损失信息和蒸馏损失信息直接相加,从而得到图像样本集合的目标损失信息,具体可以如公式(3)所示:
[0076]
loss=l
dis
(x)+wing(x)
ꢀꢀ
(3)
[0077]
其中,loss为目标损失信息,l
dis
(x)为蒸馏损失信息,wing(x)为关键点损失信息。
[0078]
可选的,融合的方式还可以包括获取关键点损失信息和蒸馏损失信息的加权系数,基于该加权系数分别对关键点损失信息和蒸馏损失信息进行加权,然后,将加权后的关键点损失信息和蒸馏损失信息进行融合,得到图像样本集合的目标损失信息。
[0079]
在计算出图像样本集合的目标损失信息之后,便可以基于该目标损失信息,对每一过渡检测模型进行收敛,收敛的方式可以有多种,比如,可以采用梯度下降算法或者其他收敛算法通过目标损失信息对过渡检测模型的网络参数进行更新,以收敛该过渡检测模型,从而得到多个训练后过渡检测模型。
[0080]
103、根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型。
[0081]
其中,预设轻量检测模型可以为大小较小的用于关键点检测的模型,预设轻量检测模型与过渡检测模型和预设深度检测模型的网络结构可以相同或相似,也可以不同。预设轻量检测模型为对预设深度检测模型进行轻量化处理后的检测模型,轻量化处理可以理解为较小预设深度检测模型的深度或者通道从而使得预设轻量检测模型远远小于预设深度检测模型。
[0082]
其中,根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练的方式可以有多种,具体可以如下:
[0083]
例如,可以采用训练后过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第三关键点预测结果,采用预设轻量检测模型对图像样本集合中的图像样本进行关键点预测,得到第四关键点预测结果,根据第三关键点预测结果和第四关键点预测结果,对预设轻量检测模型进行收敛,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型。
[0084]
其中,采用训练后过渡检测模型和图像样本集合,对预设轻量检测模型进行训练
的过程可以看作是采用训练后过渡检测模型对预设轻量检测模型进行知识蒸馏,从而使得预设轻量检测模型可以学习到过渡检测模型的有价值的特征,这里的知识蒸馏的过程与训练后深度检测模型对过渡检测模型进行知识蒸馏的方式相同,参见上文所述,再此就不再一一赘述。
[0085]
其中,从训练后深度检测模型到训练后轻量检测模型之间通过了两个阶段的知识蒸馏,而且是通过多个过渡检测模型进行传递,如图3所示,从而克服了轻量检测模型之前的容量限制,能够很好的把深度检测模型学习到的知识逐步迁移到预设轻量检测模型中。
[0086]
104、采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测。
[0087]
例如,可以采用候选训练后轻量检测模型对图像样本集合中的图像样本进行多个维度的特征提取,得到多个维度的局部图像特征,然后,将局部图像特征进行融合,得到图像样本的全局图像特征,根据全局图像特征,确定图像样本中的至少一个关键点的关键点坐标,将关键点坐标作为检测结果,具体可以如图4所示。
[0088]
105、基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测。
[0089]
其中,目标训练后轻量检测模型可以理解为多个候选轻量检测模型中关键点检测效果最好的训练后轻量检测模型。筛选出目标训练后轻量检测模型的方式可以有多种,具体可以如下:
[0090]
例如,可以获取图像样本集合中每一图像样本的关键点标注位置,在检测结果中提取出每一图像样本的关键点预测位置,根据关键点标注位置和关键点预测位置,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。
[0091]
其中,根据关键点标注位置和关键点预测位置,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型的方式可以有多种,比如,可以将关键点预测位置与关键点标注位置进行对比,基于对比结果,计算每一候选训练后轻量检测模型针对图像样本集合的预测准确率,根据预测准确率,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。
[0092]
其中,预测准确率可以理解为候选训练后轻量检测模型对图像样本集合中每一图像样本的关键点预测的准确程度,计算预测准确率的方式可以有多种,比如,可以当图像样本中标注的关键点的位置与预测关键点的位置的位置误差和数量误差在预设误差阈值内时,就可以确定该图像样本预测准确,然后,统计预测准确的图像样本的数量,再计算预测准确的图像样本的数量与图像样本集合的总数量之间的比值,从而得到预测准确率,或者,当图像样本中标注的关键点的位置与预测关键点的位置的位置误差在预设误差阈值内时,就可以确定该关键点预测准确,然后,统计预测准确的关键点的数量,计算预测准确的关键点的数量与图像样本集合中标注的关键点的全部数量之间的比值,从而得到图像样本集合的预测准确率。
[0093]
在计算出预测准确率之后,便可以在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,筛选的方式可以有多种,比如,可以直接筛选出预测准确率最高的候选训练后轻量检测模型作为目标训练后轻量检测模型,或者,还可以筛选出预测准确率topk的候选训练后轻量检测模型,再获取新的图像样本集合,将topk的候选训练后轻量检测模型
对新的图像样本集合中的图像样本进行关键点预测,然后,再次计算预测准确率,对两次计算的预测准确率进行加权,并将加权后的预测准确率进行排序,从而筛选出加权后预测准确率最大的候选训练后轻量检测模型作为目标训练后轻量检测模型。
[0094]
可选的,从候选训练后轻量检测模型中筛选出目标训练后轻量检测模型还可以采用神经网络结构搜索(nas)的方式从进行筛选,从而筛选出目标训练后轻量检测模型。
[0095]
其中,在得到训练后深度检测模型、训练后过渡检测模型和目标训练后轻量检测模型之后,也可以对图像样本进行测试,测试的可视化结果可以如表1所示:
[0096]
表1
[0097]
模型归一化平均误差优化比例训练后深度检测模型0.032317-训练后过渡模型0.032575-预设轻量检测模型0.03472-基础训练后轻量检测模型0.03486-0.4%目标训练后轻量检测模型0.0331684.5%
[0098]
其中,基础训练后轻量检测模型为通过训练后深度模型对预设轻量检测模型进行直接知识蒸馏得到的训练后轻量检测模型,目标训练后轻量检测模型为通过过渡检测模型进行两次知识蒸馏得到训练后轻量检测迷行。由表1可以看出,直接采用超大的训练后深度检测模型蒸馏预设轻量检测模型可能还会负优化,而采用过渡检测模型来蒸馏预设轻量检测模型,可以得到4.5%的正向收益。因此,说明了本方案可以很好的在轻量模型蒸馏中使用,主要用来解决轻量模型容量不足的问题,采用过渡网络,相当于给网络做过渡筛选,能够慢慢的进行特征维度上的过渡,能够更好的学习到训练后深度检测模型(教师网络)的特征拟合能力。
[0099]
在筛选出目标训练后轻量检测模型之后,便可以采用目标训练后轻量检测模型对待检测图像进行关键点检测,检测的方式可以有多种,比如,可以获取待检测图像,采用目标训练后轻量检测模型对待检测图像进行多维度特征提取,得到多个维度的目标图像特征,将目标图像特征进行融合,得到融合后图像特征,根据融合后图像特征,确定所述待检测图像中关键点的关键点位置,关键点位置可以为一个或者多个,从而完成待检测图像的关键点检测。
[0100]
由以上可知,本技术实施例在获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型后,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,然后,根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,然后,采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测,基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测;由于该方案没有直接采用训练后深度检测模型进行蒸馏得到轻量化检测模型,而是通过在深度检测模型和轻量化检测模型中间添加多个过渡检测模型,而且过渡模型为对深度检测模型压缩后得到的,从而可以将深度检测模型学习到的知识通过过渡检测模型逐步迁移至轻量检测模型中,使得轻量检测模型更加轻
量,因此,可以提升关键点检测的检测效率。
[0101]
根据上面实施例所描述的方法,以下将举例作进一步详细说明。
[0102]
在本实施例中,将以该关键点检测装置具体集成在电子设备,电子设备为服务器,训练后深度检测模型为教师检测模型,训练后轻量检测模型为学生检测模型为例进行说明。
[0103]
如图5所示,一种关键点检测方法,具体流程如下:
[0104]
201、服务器获取图像样本集合。
[0105]
例如,服务器可以直接接收用户通过终端上传的图像样本集合,或者,从视频中提取出至少一张视频帧,对视频帧中的关键点进行标注,得到图像样本集合,或者,从互联网或者图像数据库中获取原始图像,在原始图像样本识别出存在关键点的目标原始图像,并对该目标原始图像中存在的关键点进行标注,得到图像样本,将图像样本进行融合,就可以得到图像样本集合,或者,接收终端发送的检测模型训练请求,该检测模型训练请求携带图像样本的存储地址,根据存储地址,在终端的内存、缓存或者第三方数据库中获取图像样本,从而得到图像样本集合。
[0106]
202、服务器采用图像样本集合对预设深度检测模型进行训练,得到教师检测模型。
[0107]
例如,服务器采用预设深度检测模型对图像样本集合中的每一图像样本的关键点进行预测,得到目标关键点预测结果,获取图像样本集合中每一图像样本的预设关键点位置区间,在目标关键点预测结果中提取出每一预测关键点的基础位置坐标。将基础位置坐标与预测关键点位置区间的区间坐标进行对比,当基础位置坐标在区间坐标内时,确定预测关键点在预设关键点位置区间内,当基础位置坐标在区间坐标外时,确定预测关键点在预设关键点位置区间外。
[0108]
当预测关键点在预设关键点位置区间内时,服务器根据预测关键点的基础位置坐标,对预设关键点位置区间进行调整,以得到预测关键点的第一关键点损失信息,当预测关键点在预设关键点位置区间外时,服务器根据预测关键点的基础位置坐标,计算预测关键点与预设关键点位置区间之间的位置距离,得到预测关键点的第一关键点损失信息,具体可以如公式(1)所示。
[0109]
通过公式(1)可以发现,当预测关键点在预设关键点位置区间内时,服务器可以根据预测关键点的位置坐标,确定预设关键点位置区间的调整参数,将调整参数与预设关键点位置区间进行融合,得到预设关键点的第一关键点损失信息。当预测关键点在预设关键点位置区间外时,服务器可以计算预设关键点位置区间与预设区间曲率的曲率比值,根据曲率比值,在预设关键点位置区间中筛选出目标关键点的目标位置坐标,这里的目标位置坐标就可以理解为公式(1)中的常数c,基于位置坐标和目标位置坐标,计算预测关键点和目标关键点之间的位置距离,得到预测关键点的第一关键点损失信息。
[0110]
服务器采用梯度下降算法或者其他收敛算法基于目标关键点损失信息,对预设深度检测模型进行收敛,得到教师检测模型。
[0111]
203、服务器对预设深度检测模型进行多次压缩,得到压缩后的多个过渡检测模型。
[0112]
例如,服务器可以获取预设深度检测模型的模型结构,基于该模型结构,对预设深
度检测模型的部分重复或者可调整的网络层进行删减,每次删减数量不同的网络层,从而就可以得到多个删减后的深度检测模型,将删减后的深度检测模型作为压缩后的过渡检测模型,或者,可以直接减小预设深度检测模型的模型深度,从而就可以得到不同模型深度的预设深度检测模型,将深度减小后的预设深度检测模型作为压缩后的过渡检测模型,或者,还可以获取预设深度检测模型的属性信息,在该属性信息中提取出预设深度检测模型的大小,然后,根据预设深度检测模型的大小,直接采用多个压缩比对预设深度检测模型进行压缩,从而得到压缩后的多个过渡检测模型。
[0113]
204、服务器采用图像样本集合和教师检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型。
[0114]
例如,服务器可以采用教师检测模型对图像样本集合中的图像样本进行关键点预测,得到第一关键点预测结果,采用过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第二关键点预测结果。服务器获取图像样本集合中每一图像样本的预设关键点位置区间。
[0115]
服务器可以在第二关键点预测结果中提取出每一预测关键点的位置坐标,将位置坐标与预设关键点位置区间的区间坐标进行对比,当位置坐标在区间坐标内时,确定预测关键点在预设关键点位置区间内,当位置坐标在区间坐标外时,确定预测关键点在预设关键点位置区间外。
[0116]
当预测关键点在预设关键点位置区间内时,服务器根据预测关键点的位置坐标,确定预设关键点位置区间的调整参数,将调整参数与预设关键点位置区间进行融合,得到预测关键点的初始关键点损失信息。当预测关键点在预设关键点位置区间外时,服务器计算预设关键点位置区间与预设区间曲率的曲率比值,根据曲率比值,在预设关键点位置区间中筛选出目标关键点的目标位置坐标,基于位置坐标和目标位置坐标,计算预测关键点和目标关键点之间的位置距离,得到预测关键点的初始关键点损失信息。将初始关键点损失信息进行融合,得到图像样本集合的关键点损失信息。
[0117]
服务器可以在第一关键点预测结果中筛选出每一预测关键点的第一预测位置,并在第二关键点预测结果中筛选出对应的预测关键点的第二预测位置,计算预测关键点的第一预测位置和第二预测位置的位置距离,得到预测关键点对应的初始蒸馏损失信息,将每一预测关键点的初始蒸馏损失信息进行融合,得到图像样本集合的蒸馏损失信息,具体可以如公式(2)所示。
[0118]
服务器将关键点损失信息和蒸馏损失信息直接相加,从而得到图像样本集合的目标损失信息,具体可以如公式(3)所示,或者,还可以获取关键点损失信息和蒸馏损失信息的加权系数,基于该加权系数分别对关键点损失信息和蒸馏损失信息进行加权,然后,将加权后的关键点损失信息和蒸馏损失信息进行融合,得到图像样本集合的目标损失信息。
[0119]
服务器采用梯度下降算法或者其他收敛算法通过目标损失信息对过渡检测模型的网络参数进行更新,以收敛该过渡检测模型,从而得到多个训练后过渡检测模型。
[0120]
205、服务器根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选学生检测模型。
[0121]
例如,服务器采用训练后过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第三关键点预测结果,采用预设轻量检测模型对图像样本集合中的图像样本进
行关键点预测,得到第四关键点预测结果,根据第三关键点预测结果和第四关键点预测结果,对预设轻量检测模型进行收敛,得到每一训练后过渡检测模型对应的候选学生检测模型。这里的训练过程与教师检测模型对过渡检测模型进行训练的过程相同,再此就不再一一赘述。
[0122]
206、服务器采用候选学生检测模型对图像样本集合中的图像样本进行关键点检测。
[0123]
例如,服务器可以采用候选学生检测模型对图像样本集合中的图像样本进行多个维度的特征提取,得到多个维度的局部图像特征,然后,将局部图像特征进行融合,得到图像样本的全局图像特征,根据全局图像特征,确定图像样本中的至少一个关键点的关键点坐标,将关键点坐标作为检测结果。
[0124]
207、服务器基于检测结果,在候选学生检测模型中筛选出目标学生检测模型。
[0125]
例如,服务器可以获取图像样本集合中每一图像样本的关键点标注位置,在检测结果中提取出每一图像样本的关键点预测位置。将关键点预测位置与关键点标注位置进行对比,当图像样本中标注的关键点的位置与预测关键点的位置的位置误差和数量误差在预设误差阈值内时,就可以确定该图像样本预测准确,然后,统计预测准确的图像样本的数量,再计算预测准确的图像样本的数量与图像样本集合的总数量之间的比值,从而得到预测准确率,或者,当图像样本中标注的关键点的位置与预测关键点的位置的位置误差在预设误差阈值内时,就可以确定该关键点预测准确,然后,统计预测准确的关键点的数量,计算预测准确的关键点的数量与图像样本集合中标注的关键点的全部数量之间的比值,从而得到图像样本集合的预测准确率。
[0126]
服务器可以直接筛选出预测准确率最高的候选学生检测模型作为目标学生检测模型,或者,还可以筛选出预测准确率topk的候选学生检测模型,再获取新的图像样本集合,将topk的候选学生检测模型对新的图像样本集合中的图像样本进行关键点预测,然后,再次计算预测准确率,对两次计算的预测准确率进行加权,并将加权后的预测准确率进行排序,从而筛选出加权后预测准确率最大的候选学生检测模型作为目标训练后轻量检测模型,或者,还可以采用神经网络结构搜索(nas)的方式从进行筛选,从而筛选出目标学生检测模型。
[0127]
208、服务器采用目标学生检测模型对待检测图像进行关键点检测。
[0128]
例如,服务器可以获取待检测图像,采用目标学生检测模型对待检测图像进行多维度特征提取,得到多个维度的目标图像特征,将目标图像特征进行融合,得到融合后图像特征,根据融合后图像特征,确定所述待检测图像中关键点的关键点位置,关键点位置可以为一个或者多个,从而完成待检测图像的关键点检测。
[0129]
由以上可知,本实施例服务器在获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到教师检测模型后,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,然后,根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选学生检测模型,然后,采用候选学生检测模型对图像样本集合中的图像样本进行关键点检测,基于检测结果,在候选学生检测模型中筛选出目标学生检测模型,并采用目标学生检测模型对待检测图像进行关键点检
测;由于该方案没有直接采用教师检测模型进行蒸馏得到学生检测模型,而是通过在教师检测模型和学生检测模型中间添加多个过渡检测模型,而且过渡模型为对教师检测模型压缩后得到的,从而可以将教师检测模型学习到的知识通过过渡检测模型逐步迁移至学生检测模型中,使得学生检测模型更加轻量,因此,可以提升关键点检测的检测效率。
[0130]
为了更好地实施以上方法,本发明实施例还提供一种关键点检测装置,该关键点检测装置可以集成在电子设备,比如服务器或终端等设备中,该终端可以包括平板电脑、笔记本电脑和/或个人计算机等。
[0131]
例如,如图6所示,该关键点检测装置可以包括获取单元301、压缩单元302、训练单元303、检测单元304和筛选单元305,如下:
[0132]
(1)获取单元301;
[0133]
获取单元301,用于获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型。
[0134]
例如,获取单元301,具体可以用于获取图像样本集合,采用预设深度检测模型对图像样本集合中的每一图像样本的关键点进行预测,得到目标关键点预测结果,获取图像样本集合中每一图像样本的预设关键点位置区间,根据预设关键点位置区间和目标关键点预测结果,确定图像样本集合的目标关键点损失信息,基于目标关键点损失信息,对预设深度检测模型进行收敛,得到训练后深度检测模型。
[0135]
(2)压缩单元302;
[0136]
压缩单元302,用于对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型。
[0137]
例如,压缩单元302,具体可以用于对预设深度检测模型进行多次压缩,采用训练后深度检测模型对图像样本集合中的图像样本进行关键点预测,得到第一关键点预测结果,采用过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第二关键点预测结果,根据第一关键点预测结果和第二关键点预测结果,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。
[0138]
(3)训练单元303;
[0139]
训练单元303,用于根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,该预设训练后轻量检测模型为对预设深度检测模型进行清理话处理后的检测模型。
[0140]
例如,训练单元303,具体可以用于采用训练后过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第三关键点预测结果,采用预设轻量检测模型对图像样本集合中的图像样本进行关键点预测,得到第四关键点预测结果,根据第三关键点预测结果和第四关键点预测结果,对预设轻量检测模型进行收敛,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型。
[0141]
(4)检测单元304;
[0142]
检测单元304,用于采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测。
[0143]
例如,检测单元304,具体可以用于采用候选训练后轻量检测模型对图像样本集合
中的图像样本进行多个维度的特征提取,得到多个维度的局部图像特征,然后,将局部图像特征进行融合,得到图像样本的全局图像特征,根据全局图像特征,确定图像样本中的至少一个关键点的关键点坐标,将关键点坐标作为检测结果。
[0144]
(5)筛选单元305;
[0145]
筛选单元305,用于基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测。
[0146]
例如,筛选单元305,具体可以用于获取图像样本集合中每一图像样本的关键点标注位置,在检测结果中提取出每一图像样本的关键点预测位置,根据关键点标注位置和关键点预测位置,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。采用目标训练后轻量检测模型对待检测图像进行关键点检测。
[0147]
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
[0148]
由以上可知,本技术实施例在获取单元301获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型后,压缩单元302对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,然后,训练单元303根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,然后,检测单元304采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测,筛选单元305基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测;由于该方案没有直接采用训练后深度检测模型进行蒸馏得到轻量化检测模型,而是通过在深度检测模型和轻量化检测模型中间添加多个过渡检测模型,而且过渡模型为对深度检测模型压缩后得到的,从而可以将深度检测模型学习到的知识通过过渡检测模型逐步迁移至轻量检测模型中,使得轻量检测模型更加轻量,因此,可以提升关键点检测的检测效率。
[0149]
本发明实施例还提供一种电子设备,如图7所示,其示出了本发明实施例所涉及的电子设备的结构示意图,具体来讲:
[0150]
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图7中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0151]
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
[0152]
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
[0153]
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0154]
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
[0155]
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
[0156]
获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,根据所述图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,该预设轻量检测模型为对预设深度检测模型进行轻量化处理后的检测模型;采用所述候选训练后轻量检测模型对所述图像样本集合中的图像样本进行关键点检测;基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用所述目标训练后轻量检测模型对待检测图像进行关键点检测。
[0157]
例如,电子设备获取图像样本集合,采用预设深度检测模型对图像样本集合中的每一图像样本的关键点进行预测,得到目标关键点预测结果,获取图像样本集合中每一图像样本的预设关键点位置区间,根据预设关键点位置区间和目标关键点预测结果,确定图像样本集合的目标关键点损失信息,基于目标关键点损失信息,对预设深度检测模型进行收敛,得到训练后深度检测模型。对预设深度检测模型进行多次压缩,采用训练后深度检测模型对图像样本集合中的图像样本进行关键点预测,得到第一关键点预测结果,采用过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第二关键点预测结果,根据第一关键点预测结果和第二关键点预测结果,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。采用训练后过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第三关键点预测结果,采用预设轻量检测模型对图像样本集合中的图像样本进行关键点预测,得到第四关键点预测结果,根据第三关键点预测结果和第四关键点预测结果,对预设轻量检测模型进行收敛,得到每一训练后过渡检测模型对应的候
选训练后轻量检测模型。采用候选训练后轻量检测模型对图像样本集合中的图像样本进行多个维度的特征提取,得到多个维度的局部图像特征,然后,将局部图像特征进行融合,得到图像样本的全局图像特征,根据全局图像特征,确定图像样本中的至少一个关键点的关键点坐标,将关键点坐标作为检测结果。获取图像样本集合中每一图像样本的关键点标注位置,在检测结果中提取出每一图像样本的关键点预测位置,根据关键点标注位置和关键点预测位置,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。采用目标训练后轻量检测模型对待检测图像进行关键点检测。
[0158]
以上各个操作的具体实施可参见前面的实施例,在此不作赘述。
[0159]
由以上可知,本发明实施例在获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型后,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,然后,根据图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,然后,采用候选训练后轻量检测模型对图像样本集合中的图像样本进行关键点检测,基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用目标训练后轻量检测模型对待检测图像进行关键点检测;由于该方案没有直接采用训练后深度检测模型进行蒸馏得到轻量化检测模型,而是通过在深度检测模型和轻量化检测模型中间添加多个过渡检测模型,而且过渡模型为对深度检测模型压缩后得到的,从而可以将深度检测模型学习到的知识通过过渡检测模型逐步迁移至轻量检测模型中,使得轻量检测模型更加轻量,因此,可以提升关键点检测的检测效率。
[0160]
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
[0161]
为此,本发明实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种关键点检测方法中的步骤。例如,该指令可以执行如下步骤:
[0162]
获取图像样本集合,并采用图像样本集合对预设深度检测模型进行训练,得到训练后深度检测模型,对预设深度检测模型进行多次压缩,并采用图像样本集合和训练后深度检测模型对每次压缩后得到的过渡检测模型进行训练,得到多个训练后过渡检测模型,根据所述图像样本集合和训练后过渡检测模型,对预设轻量检测模型进行训练,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型,该预设轻量检测模型为对预设深度检测模型进行轻量化处理后的检测模型;采用所述候选训练后轻量检测模型对所述图像样本集合中的图像样本进行关键点检测;基于检测结果,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型,并采用所述目标训练后轻量检测模型对待检测图像进行关键点检测。
[0163]
例如,获取图像样本集合,采用预设深度检测模型对图像样本集合中的每一图像样本的关键点进行预测,得到目标关键点预测结果,获取图像样本集合中每一图像样本的预设关键点位置区间,根据预设关键点位置区间和目标关键点预测结果,确定图像样本集合的目标关键点损失信息,基于目标关键点损失信息,对预设深度检测模型进行收敛,得到
训练后深度检测模型。对预设深度检测模型进行多次压缩,采用训练后深度检测模型对图像样本集合中的图像样本进行关键点预测,得到第一关键点预测结果,采用过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第二关键点预测结果,根据第一关键点预测结果和第二关键点预测结果,对每次压缩后得到的过渡检测模型进行收敛,得到多个训练后过渡检测模型。采用训练后过渡检测模型对图像样本集合中的图像样本进行关键点预测,得到第三关键点预测结果,采用预设轻量检测模型对图像样本集合中的图像样本进行关键点预测,得到第四关键点预测结果,根据第三关键点预测结果和第四关键点预测结果,对预设轻量检测模型进行收敛,得到每一训练后过渡检测模型对应的候选训练后轻量检测模型。采用候选训练后轻量检测模型对图像样本集合中的图像样本进行多个维度的特征提取,得到多个维度的局部图像特征,然后,将局部图像特征进行融合,得到图像样本的全局图像特征,根据全局图像特征,确定图像样本中的至少一个关键点的关键点坐标,将关键点坐标作为检测结果。获取图像样本集合中每一图像样本的关键点标注位置,在检测结果中提取出每一图像样本的关键点预测位置,根据关键点标注位置和关键点预测位置,在候选训练后轻量检测模型中筛选出目标训练后轻量检测模型。采用目标训练后轻量检测模型对待检测图像进行关键点检测。
[0164]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0165]
其中,该计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
[0166]
由于该计算机可读存储介质中所存储的指令,可以执行本发明实施例所提供的任一种关键点检测方法中的步骤,因此,可以实现本发明实施例所提供的任一种关键点检测方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0167]
其中,根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述关键点检测方面或者知识蒸馏方面的各种可选实现方式中提供的方法。
[0168]
以上对本发明实施例所提供的一种关键点检测方法、装置、电子设备和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1