CN115797736B - 目标检测模型的训练和目标检测方法、装置、设备和介质 - Google Patents

目标检测模型的训练和目标检测方法、装置、设备和介质 Download PDF

Info

Publication number
CN115797736B
CN115797736B CN202310062206.6A CN202310062206A CN115797736B CN 115797736 B CN115797736 B CN 115797736B CN 202310062206 A CN202310062206 A CN 202310062206A CN 115797736 B CN115797736 B CN 115797736B
Authority
CN
China
Prior art keywords
detection
dimensional
target
prediction
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310062206.6A
Other languages
English (en)
Other versions
CN115797736A (zh
Inventor
林相如
毕晓鹏
于越
张伟
谭啸
李莹莹
张一夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202310062206.6A priority Critical patent/CN115797736B/zh
Publication of CN115797736A publication Critical patent/CN115797736A/zh
Application granted granted Critical
Publication of CN115797736B publication Critical patent/CN115797736B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本公开提供了一种目标检测模型的训练和目标检测方法、装置、设备和介质,涉及自动驾驶、智能交通、深度学习等领域。实现方案为:采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,得到第一检测信息和第二检测信息,并采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,得到第三检测信息和第四检测信息;根据第一检测信息和第三检测信息之间的差异,及第二检测信息和第四检测信息之间的差异,对学生检测模型进行训练。由此,可以实现联合蒸馏二维检测网络和三维检测网络,使得蒸馏后的学生检测模型不仅能够保持较低的运行耗时,而且还可以具有较好的检测效果。

Description

目标检测模型的训练和目标检测方法、装置、设备和介质
技术领域
本公开涉及人工智能领域,具体涉及自动驾驶、深度学习等技术领域,尤其涉及目标检测模型的训练和目标检测方法、装置、设备和介质。
背景技术
在智慧城市、智能交通、视频分析等场景下,对图像或视频中各视频帧中的车辆、行人、物体等目标进行精准检测,可以为异常事件检测、犯人追踪、车辆统计等任务提供帮助。比如,在自动驾驶场景中,对车载摄像头采集的图像中的行人、车辆等感兴趣目标或障碍物进行检测,可以提升车辆行驶的安全性。
目前,可以基于深度学习技术,对目标检测模型进行训练,并基于训练后的目标检测模型对图像或视频帧中的目标进行自动检测。为了提升目标检测模型的预测精度,如何对目标检测模型进行训练是非常重要的。
发明内容
本公开提供了一种用于目标检测模型的训练和目标检测方法、装置、设备和介质。
根据本公开的一方面,提供了一种目标检测模型的训练方法,包括:
获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像;
采用所述教师检测模型中的第一二维检测网络和第一三维检测网络对所述第一样本图像进行目标检测,以得到所述第一二维检测网络输出的第一检测信息和所述第一三维检测网络输出的第二检测信息;
采用所述学生检测模型中的第二二维检测网络和第二三维检测网络对所述第一样本图像进行目标检测,以得到所述第二二维检测网络输出的第三检测信息和所述第二三维检测网络输出的第四检测信息;
根据所述第一检测信息和所述第三检测信息之间的差异,以及根据所述第二检测信息和所述第四检测信息之间的差异,对所述学生检测模型进行训练。
根据本公开的另一方面,提供了一种目标检测方法,包括:
获取待检测图像;
采用经训练的学生检测模型中的第二二维检测网络对所述待检测图像进行目标检测,以得到第一目标检测信息;
采用经训练的学生检测模型中的第二三维检测网络对所述待检测图像进行目标检测,以得到第二目标检测信息;
其中,经训练的学生检测模型是采用本公开上述一方面提出的方法训练得到的。
根据本公开的又一方面,提供了一种目标检测模型的训练装置,包括:
获取模块,用于获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像;
第一检测模块,用于采用所述教师检测模型中的第一二维检测网络和第一三维检测网络对所述第一样本图像进行目标检测,以得到所述第一二维检测网络输出的第一检测信息和所述第一三维检测网络输出的第二检测信息;
第二检测模块,用于采用所述学生检测模型中的第二二维检测网络和第二三维检测网络对所述第一样本图像进行目标检测,以得到所述第二二维检测网络输出的第三检测信息和所述第二三维检测网络输出的第四检测信息;
训练模块,用于根据所述第一检测信息和所述第三检测信息之间的差异,以及根据所述第二检测信息和所述第四检测信息之间的差异,对所述学生检测模型进行训练。
根据本公开的再一方面,提供了一种目标检测装置,包括:
获取模块,用于获取待检测图像;
第一预测模块,用于采用经训练的学生检测模型中的第二二维检测网络对所述待检测图像进行目标检测,以得到第一目标检测信息;
第二预测模块,用于采用经训练的学生检测模型中的第二三维检测网络对所述待检测图像进行目标检测,以得到第二目标检测信息;
其中,所述经训练的学生检测模型是采用本公开上述又一方面提出的装置训练得到的。
根据本公开的又一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开上述一方面提出的目标检测模型的训练方法,或者,执行本公开上述另一方面提出的目标检测方法。
根据本公开的再一方面,提供了一种计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开上述一方面提出的目标检测模型的训练方法,或者,执行本公开上述另一方面提出的目标检测方法。
根据本公开的还一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开上述一方面提出的目标检测模型的训练方法,或者,执行时实现本公开上述另一方面提出的目标检测方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例一所提供的目标检测模型的训练方法的流程示意图;
图2为本公开实施例二所提供的目标检测模型的训练方法的流程示意图;
图3为本公开实施例三所提供的目标检测模型的训练方法的流程示意图;
图4为本公开实施例四所提供的目标检测模型的训练方法的流程示意图;
图5为本公开实施例所提供的教师检测模型的结构示意图;
图6为本公开实施例所提供的学生检测模型的结构示意图;
图7为本公开实施例五所提供的目标检测模型的训练方法的流程示意图;
图8为本公开实施例六所提供的目标检测模型的训练方法的流程示意图;
图9为本公开实施例七所提供的目标检测模型的训练方法的流程示意图;
图10为本公开实施例八所提供的目标检测模型的训练方法的流程示意图;
图11为本公开实施例所提供的蒸馏框架示意图;
图12为本公开实施例九所提供的目标检测方法的流程示意图;
图13为本公开实施例十所提供的目标检测模型的训练装置的结构示意图;
图14为本公开实施例十一所提供的目标检测装置的结构示意图;
图15示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在自动驾驶场景中,可以采用单目摄像头对自动驾驶场景中的行人、车辆等感兴趣物体(要素或目标)进行图像采集,并基于单目3D(三维)检测模型(或检测器)对单目摄像头采集的图像进行3D检测,得到感兴趣物体(要素或目标)的类别、尺寸(或大小)、3D位置、遮挡等属性信息。
对于参数量相对较大的单目3D检测模型(比如参数量大于1亿)而言,预测精度相对较高,即检测效果较佳,但是该种检测模型的运行耗时偏高;而对于参数量相对较小的单目3D检测模型而言,虽然运行耗时较小,但是该种检测模型的检测效果不佳。
相关技术中,可以利用参数量相对较大的目标检测模型(或称为物体检测模型)进行模型小型化的蒸馏技术,对参数量相对较小的目标检测模型进行蒸馏,使得蒸馏后的小模型不仅能够保持较低的运行耗时,同时具备良好的检测效果。
目前,目标检测模型小型化蒸馏实现方案主要包括以下两种:
第一种,基于2D(二维)目标检测的蒸馏方法。
其中,基于2D目标检测的蒸馏方法可以分为基于目标框预测输出值logits、目标框特征和目标框特征之间的关系的知识蒸馏方法。
1)基于输出层面的知识蒸馏(logitdistillation)方法:将模型的分类分支和回归分支(或称为定位分支)输出概率分布软化做成(Soft Target)之后做蒸馏损失计算,得到蒸馏损失函数(比如MSE(Mean Square Error,均方差)损失函数Loss)的取值,简称为蒸馏损失值,从而可以基于蒸馏损失值对小模型进行训练。
该方法能够使得将大模型的分类能力和定位能力(或称为回归能力)通过蒸馏学习传递给小模型,从而使得小模型能够向大模型一样解决分类不准确和定位模糊问题。
2)基于特征层面的知识蒸馏(feature distillation)方法:针对教师检测模型和学生检测模型注意力的差异,前景与背景的差异,提出聚焦蒸馏,使用小模型和大模型的特征图来指导学生模型进行训练,使得小模型在特征学习过程中能够快速获得大模型的特征独特性知识。
3)基于关系蒸馏方法:将物体(或目标)之间的关系信息引入到检测任务蒸馏中,由于同一场景中的物体都是高度相关的,同时物体特征之间的结构关系独立于大模型和小模型的结构设计,是一个客观量,因此引入关系蒸馏能够加快小模型训练收敛速度,从而提升小模型能力。
第二种,基于3D目标检测的蒸馏方法。
该方法在训练阶段引入雷达LiDAR点云信息进行监督。首先将LiDAR点云信息投影到图像平面,基于LiDAR点云信息中的深度信息训练一个LiDAR模型,其中,该LiDAR模型的模型结构与基于RGB(Red Green Blue,红绿蓝)图像训练得到的RGB模型的模型结构一致,然后基于训练好的LiDAR模型对RGB模型进行蒸馏。该方法使用知识蒸馏来弥合训练时对高质量输入进行训练的模型与推理时对低质量输入进行测试的模型之间的差距,最终可以提高测试过程中低质量数据的性能,而不会增加额外开销。
然而,上述目标检测模型小型化方案至少存在以下缺点:
第一,只关注到基于2D检测模型蒸馏或者基于3D检测模型蒸馏中的一个方面,而缺少一个统一的蒸馏框架来联合蒸馏2D和3D检测模型,因而无法充分提升不同方向任务上的指标。
第二,在模型蒸馏时,往往只考虑到有标注数据的使用,而忽视了无标注数据的使用,通常对于标注数据量较少的类别的检测效果较差。针对相应类别引入大量无标注数据,可以进一步提升相应类别的指标。
针对上述存在的至少一项问题,本公开提出一种目标检测模型的训练和目标检测方法、装置、设备和介质。
下面参考附图描述本公开实施例的目标检测模型的训练和目标检测方法、装置、设备和介质。
图1为本公开实施例一所提供的目标检测模型的训练方法的流程示意图。
本公开实施例可以应用于服务端,或者也可以应用于任一电子设备中,以使该电子设备可以执行目标检测模型的训练功能。
其中,电子设备可以为任一具有计算能力的设备,例如可以为PC(PersonalComputer,个人电脑)、移动终端等,移动终端例如可以为车载设备、手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
如图1所示,该目标检测模型的训练方法可以包括以下步骤:
步骤101,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
在本公开实施例中,教师检测模型的参数量大于学生检测模型的参数量。其中,教师检测模型为预先经过训练的目标检测模型,学生检测模型为未经过训练的目标检测模型。其中,对教师检测模型和学生检测模型的模型结构不做限制。
在本公开实施例中,对第一样本图像的获取方式不做限制,比如,第一样本图像可以为从现有的训练集中获取的样本图像,或者,第一样本图像可以为在线采集的图像,比如可以通过网络爬虫技术,在线采集第一样本图像,或者,第一样本图像也可以为线下采集的图像,或者,第一样本图像也可以为实时采集的图像,或者,第一样本图像也可以为人工合成的图像,等等,本公开实施例对此并不作限制。
其中,第一样本图像可以为具有标注信息的图像,或者,第一样本图像也可以为未具有标注信息的图像,本公开对此也不作限制。
步骤102,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
在本公开实施例中,第一检测信息包括但不限于第一二维检测网络输出的预测框(本公开中记为第一预测框)的位置信息、第一预测框的概率分布,其中,该概率分布用于指示第一预测框内的目标属于多个预测类别(比如车辆、行人、树木等)的概率。其中,第一预测框的个数可以为至少一个。
在本公开实施例中,第二检测信息包括但不限于第一三维检测网络输出的第一预测框内目标的朝向角、深度、尺寸(或大小)等。
在本公开实施例中,可以采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
作为一种示例,可以采用第一二维检测网络对第一样本图像进行目标的回归预测和类别预测,以得到第一检测信息。采用第一三维检测网络对第一样本图像进行目标的姿态预测、距离预测和尺寸预测,以得到第二检测信息。
步骤103,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
在本公开实施例中,第三检测信息包括但不限于第二二维检测网络输出的预测框(本公开中记为第二预测框)的位置信息、第二预测框的概率分布,其中,该概率分布用于指示第二预测框内的目标属于多个预测类别(比如车辆、行人、树木等)的概率。其中,第二预测框的个数可以为至少一个。
在本公开实施例中,第四检测信息包括但不限于第二三维检测网络输出的第二预测框内目标的朝向角、深度、尺寸(或大小)等。
在本公开实施例中,可以采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
作为一种示例,可以采用第二二维检测网络对第一样本图像进行目标的回归预测和类别预测,以得到第三检测信息。采用第二三维检测网络对第一样本图像进行目标的姿态预测、距离预测和尺寸预测,以得到第四检测信息。
步骤104,根据第一检测信息和第三检测信息之间的差异,以及根据第二检测信息和第四检测信息之间的差异,对学生检测模型进行训练。
在本公开实施例中,可以根据第一检测信息和第三检测信息之间的差异(后续称为第一差异),以及根据第二检测信息和第四检测信息之间的差异(后续称为第二差异),对学生检测模型进行训练。
作为一种示例,可以根据第一差异和第二差异,确定损失函数的取值,本公开中记为损失值,其中,损失值与第一差异呈正相关关系,且损失值与第二差异也呈正相关关系,从而本公开中,可以根据损失值,对学生检测模型中的模型参数进行调整,以使损失值最小化。
需要说明的是,上述仅以模型训练的终止条件为损失值最小化进行示例,实际应用时,还可以设置其他终止条件,比如,终止条件还可以包括:训练次数达到设定次数,训练时长达到设定时长,等等,本公开对此并不作限制。
本公开实施例的目标检测模型的训练方法,通过采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息,并采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息;根据第一检测信息和第三检测信息之间的差异,以及根据第二检测信息和第四检测信息之间的差异,对学生检测模型进行训练。由此,可以实现联合蒸馏二维检测网络和三维检测网络,使得蒸馏后的学生检测模型不仅能够保持较低的运行耗时,而且还可以具有较好的检测效果。并且,即使样本图像未具有标注信息,也可以实现基于参数量相对较大的教师检测模型对参数量相对较小的学生检测模型进行蒸馏学习,提升学生检测模型的预测精度,以及提升该方法的适用性。
需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均在征得用户同意的前提下进行,并且均符合相关法律法规的规定,且不违背公序良俗。
为了清楚说明本公开任一实施例中是如何对学生检测模型进行训练的,本公开还提出一种目标检测模型的训练方法。
图2为本公开实施例二所提供的目标检测模型的训练方法的流程示意图。
如图2所示,该目标检测模型的训练方法可以包括以下步骤:
步骤201,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
步骤201的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,教师检测模型可以通过以下方式训练得到:
首先,可以获取第二样本图像,其中,第二样本图像的获取方式与第一样本图像的获取方式类似,在此不做赘述。其中,第二样本图像上标注有第一标注信息和/或第二标注信息,其中,第一标注信息可以包括标注框(本公开中记为第二标注框)的标注位置信息,和/或,第二标注框内目标所属的类别(本公开中记为第二标注类别);第二标注信息可以包括第二标注框内目标的朝向角(本公开中记为第二标注朝向角)、深度(本公开中记为第二标注深度)和尺寸(本公开中记为第二标注尺寸)中的至少一项。
之后,可以采用初始的教师检测模型中的第一二维检测网络对第二样本图像进行目标检测,以得到第一预测信息,比如,可以采用第一二维检测网络对第二样本图像进行目标的回归预测和类别预测,得到的第一预测信息可以包括第三预测框的位置信息(本公开中记为第三位置信息)和第三预测框内目标所属的类别(本公开中记为第二目标类别),并且,可以采用初始的教师检测模型中的第一三维检测网络对第二样本图像进行目标检测,以得到第二预测信息,比如,可以采用第一三维检测网络对第二样本图像进行目标的姿态预测、距离预测和尺寸预测,得到的第二预测信息可以包括第三预测框内目标的第三朝向角、第三深度和第三尺寸。
从而本公开中,可以根据第一标注信息和第一预测信息之间的差异,和/或,根据第二标注信息和第二预测信息之间的差异,对初始的教师检测模型进行训练,以得到预训练的教师检测模型。
作为一种可能的实现方式,可以根据第二标注框的第二标注朝向角和第三预测框的第三朝向角之间的差异、第二标注框的第二标注深度和第三预测框的第三深度之间的差异、第二标注框的第二标注尺寸和第三预测框的第三尺寸、第二标注框的标注位置信息和第三预测框的第三位置信息之间的差异,以及第二标注框的第二标注类别和第三预测框的第二目标类别之间的差异中的至少一项,对初始的教师检测模型进行训练,以得到经过训练的教师检测模型。
作为一种示例,可以根据第二标注朝向角和第三朝向角之间的差异、第二标注深度和第三深度之间的差异、第二标注尺寸和第三尺寸之间的差异、标注位置信息和第三位置信息之间的差异以及第二标注类别和第二目标类别之间的差异中的至少一项,确定第一损失值,其中,第一损失值与上述各项差异均呈正相关关系(即成正向关系)。本公开中,可以根据第一损失值,对初始的教师检测模型中的模型参数进行调整,以使第一损失值最小化。
需要说明的是,上述仅以教师检测模型训练的终止条件为第一损失值最小化进行示例,实际应用时,还可以设置其他终止条件,比如终止条件还可以包括:训练次数达到设定次数,训练时长达到设定时长,等等,本公开对此并不作限制。
由此,采用具有标注信息的样本图像对教师检测模型进行预先训练,可以提升教师检测模型的预测精度。
步骤202,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
步骤203,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
步骤201至203的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤204,根据第一检测信息和第三检测信息之间的差异,生成第一损失函数的二维蒸馏损失项。
在本公开实施例中,第一损失函数又可以称为蒸馏损失函数。
在本公开实施例中,可以根据第一检测信息和第三检测信息之间的差异,生成第一损失函数的二维蒸馏损失项。其中,二维蒸馏损失项与上述差异呈正相关关系(即成正向关系),即上述差异越小,二维蒸馏损失项的取值越小,反之,上述差异越大,二维蒸馏损失项的取值越大。
步骤205,根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。
在本公开实施例中,可以根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。其中,三维蒸馏损失项与上述差异呈正相关关系(即成正向关系),即上述差异越小,三维蒸馏损失项的取值越小,反之,上述差异越大,三维蒸馏损失项的取值越大。
步骤206,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例中,可以根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
作为一种示例,可以根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整,以使第一损失函数的取值最小化。
需要说明的是,上述仅以学生检测模型训练的终止条件为第一损失函数的取值最小化进行示例,实际应用时,还可以设置其他终止条件,比如,终止条件还可以包括:训练次数达到设定次数,训练时长达到设定时长,等等,本公开对此并不作限制。
本公开实施例的目标检测模型的训练方法,可以实现根据损失函数的各损失项,对学生检测模型进行训练,以提升学生检测模型的训练效果,即提升学生检测模型的预测精度。
为了清楚说明本公开任一实施例中是如何生成第一损失函数的二维蒸馏损失项的,本公开还提出一种目标检测模型的训练方法。
图3为本公开实施例三所提供的目标检测模型的训练方法的流程示意图。
如图3所示,该目标检测模型的训练方法可以包括以下步骤:
步骤301,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
步骤302,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
其中,第一检测信息包括第一预测框对应的第一位置信息和第一概率分布,第一概率分布用于指示第一预测框内的目标属于多个预测类别的概率。
步骤303,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率。
步骤301至303的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤304,根据第一预测框的第一概率分布和第二预测框的第二概率分布,确定分类蒸馏损失值。
在本公开实施例中,分类蒸馏损失值还可以称为分类蒸馏损失函数的取值。
在本公开实施例中,可以根据第一预测框的第一概率分布和第二预测框的第二概率分布之间的差异,确定分类蒸馏损失值。其中,分类蒸馏损失值与上述差异呈正相关关系(即成正向关系)。
步骤305,根据第一预测框的第一位置信息和第二预测框的第二位置信息,确定回归蒸馏损失值。
在本公开实施例中,回归蒸馏损失值还可以称为回归蒸馏损失函数(或定位蒸馏损失函数)的取值。
在本公开实施例中,可以根据第一预测框的第一位置信息和第二预测框的第二位置信息之间的差异,确定回归蒸馏损失值。其中,回归蒸馏损失值与上述差异呈正相关关系(即成正向关系)。
步骤306,根据分类蒸馏损失值和回归蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
在本公开实施例中,可以根据分类蒸馏损失值和回归蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
作为一种示例,可以将分类蒸馏损失值和回归蒸馏损失值之和,作为第一损失函数的二维蒸馏损失项。
作为另一种示例,可以将分类蒸馏损失值和回归蒸馏损失值进行加权求和,以得到第一损失函数的二维蒸馏损失项。
步骤307,根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。
步骤308,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
步骤307值308的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的目标检测模型的训练方法,同时基于二维检测网络的分类蒸馏损失值和回归蒸馏损失值,确定二维蒸馏损失项,可以提升二维蒸馏损失项计算结果的准确性,从而基于准确的二维蒸馏损失项,对学生检测模型进行训练,可以提升学生检测模型中的二维检测网络的预测精度。
为了清楚说明本公开任一实施例中是如何确定分类蒸馏损失值的,本公开还提出一种目标检测模型的训练方法。
图4为本公开实施例四所提供的目标检测模型的训练方法的流程示意图。
如图4所示,该目标检测模型的训练方法可以包括以下步骤:
步骤401,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
步骤402,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
其中,第一检测信息包括第一预测框对应的第一位置信息和第一概率分布,第一概率分布用于指示第一预测框内的目标属于多个预测类别的概率。
步骤401至402的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,第一二维检测网络中可以包括第一特征提取分支、第一路径聚合分支、第一回归分支(或称为第一定位分支)、第一分类分支,第一检测信息可以通过以下方式预测得到:
首先,采用第一二维检测网络中的第一特征提取分支对第一样本图像进行特征提取,以得到多个尺度的第一图像特征。比如,第一特征提取分支可以为CSPRepResNet(一种特征提取网络,在残差网络ResNet50基础上增加CSPNet(Cross Stage Partial Network,跨阶段局部网络)以及分类网络RepVGG模块)、残差网络等特征提取网络。
之后,可以将多个尺度的第一图像特征输入第一二维检测网络中的第一路径聚合分支PAN或PANet(Path Aggregated Network)进行特征融合,以得到第一路径聚合分支输出的多个尺度的第二图像特征。
作为一种示例,以教师检测模型的结构如图5所示进行示例,可以将第一特征提取分支输出的3个不同尺度的第一图像特征输入至第一PAN进行特征融合,得到3个不同尺度的第二图像特征。
之后,可以将多个第二图像特征输入第一二维检测网络中的第一回归分支进行目标的回归预测,以得到多个第二图像特征中的多个第一特征点所属的第一预测框的第一位置信息。也就是说,可以得到每个第二图像特征中的每个第一特征点所属的第一预测框的第一位置信息。
作为一种示例,仍以教师检测模型的结构如图5所示进行示例,该教师检测模型包括3个2D头部结构Head部分(即图5中的2D head),每个2D head包括一个第一回归分支(图5未示出),一个第一回归分支用于对一个第二图像特征进行目标的回归预测,得到该第二图像特征中的多个第一特征点所属的第一预测框的第一位置信息。
并且,还可以将多个第二图像特征输入第一二维检测网络中的第一分类分支进行目标的类别预测,以得到上述多个第一特征点的第一概率分布,其中,第一概率分布用于指示对应第一特征点属于多个预测类别的概率。从而本公开中,针对每个第一预测框,可以根据该第一预测框内的各特征点的第一概率分布,确定该第一预测框的第一概率分布,进而可以根据该第一预测框的第一概率分布,确定该第一预测框内的目标所属的类别,比如,可以将第一概率分布中的最大的概率所对应的预测类别,作为第一预测框内的目标所属的类别。
仍以教师检测模型的结构如图5所示进行示例,该教师检测模型包括3个2Dhead,每个2D head包括一个第一分类分支(图5未示出),一个第一分类分支用于对一个第二图像特征进行目标的类别预测,得到该第二图像特征中的多个第一特征点的概率分布。
由此,可以实现同时基于多个不同尺度的图像特征,确定每个第一预测框内各特征点的第一位置信息和第一概率分布,可以提升确定结果的准确性和可靠性。
步骤403,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率。
步骤403的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,第二二维检测网络中可以包括第二特征提取分支、第二路径聚合分支、第二回归分支(或称为第二定位分支)、第二分类分支,第三检测信息可以通过以下方式预测得到:
首先,可以采用第二二维检测网络中的第二特征提取分支对第一样本图像进行特征提取,以得到多个尺度的第三图像特征。比如,第三特征提取分支可以为CSPRepResNet、残差网络等特征提取网络。
之后,可以将多个尺度的第三图像特征输入第二二维检测网络中的第二路径聚合分支PAN或PANet进行特征融合,以得到第二路径聚合分支输出的多个尺度的第四图像特征。
作为一种示例,以学生检测模型的结构如图6所示进行示例,可以将第二特征提取分支输出的3个不同尺度的第三图像特征输入至第二PAN进行特征融合,得到3个不同尺度的第四图像特征。
之后,可以将多个第四图像特征输入第二二维检测网络中的第二回归分支进行目标的回归预测,以得到多个第四图像特征中的多个第二特征点所属的第二预测框的第二位置信息。也就是说,可以得到每个第四图像特征中的每个第二特征点所属的第二预测框的第二位置信息。
并且,还可以将多个第四图像特征输入第二二维检测网络中的第二分类分支进行目标的类别预测,以得到上述多个第二特征点的第二概率分布,其中,第二概率分布用于指示对应第二特征点属于多个预测类别的概率。从而本公开中,针对每个第二预测框,可以根据该第二预测框内的各特征点的第二概率分布,确定该第二预测框的第二概率分布,进而可以根据该第二预测框的第二概率分布,确定该第二预测框内的目标所属的类别,比如,可以将第二概率分布中的最大的概率所对应的预测类别,作为第二预测框内的目标所属的类别。
由此,可以实现同时基于多个不同尺度的图像特征,确定每个第二预测框内各特征点的第二位置信息和第二概率分布,可以提升确定结果的准确性和可靠性。
需要说明的是,在第一样本图像上的目标相对较大时,预测框内特征点的个数相对较多,基于较多的特征点,可以准确预测预测框内目标所属的类别,而在第一样本图像的目标相对较小时,预测框内特征点的个数相对较少,基于较少的特征点,来确定预测框内目标所属的类别,可能导致小目标的遗漏检测或误检等。
因此,在本公开的任意一个实施例之中,为了提升学生检测模型对小目标的检测能力,在预测框内的特征点的数量较少的情况下,可以增加该预测框对应的特征点个数,从而可以基于增加后的各个特征点,来检测该预测框内的目标。
作为一种示例,可以根据多个第二特征点所属的第二预测框的第二位置信息,确定任意一个第二预测框内特征点的数量,比如,第二位置信息可以包括W、H、X、Y这四个维度的信息,其中,W是指第二预测框的宽度、H是指第二预测框的高度,X和Y分别为第二预测框的中心点的横轴坐标和纵轴坐标。并判断该第二预测框内的特征点的数量是否小于设定阈值,在该第二预测框内的特征点的数量大于或等于设定阈值的情况下,可以通过上述方式,正常预测该第二预测框内各特征点的第二概率分布;而在第二预测框内的特征点的数量小于设定阈值的情况下,可以在该第二预测框对应的第四图像特征上,以该第二预测框的中心为圆心,设定半径长度画圆,得到目标圆形区域,从而可以采用第二二维检测网络中的第二分类分支对目标圆形区域进行目标的类别预测,以得到第二预测框内各特征点的第二概率分布。
也就是说,在第二预测框内的特征点的数量较少的情况下,可以对该第二预测框进行外扩,基于外扩后的圆形区域内的各个特征点,预测该第二预测框内的目标所属的类别,可以提升类别预测结果的准确性,降低小目标的遗漏检测或误检的概率。
步骤404,根据第一检测信息中多个第一特征点的第一概率分布和第三检测信息中多个第二特征点的第二概率分布之间的差异,确定分类蒸馏损失值。
在本公开实施例中,可以根据第一检测信息中多个第一特征点的概率分布和第三检测信息中的多个第二特征点的第二概率分布之间的差异,确定分类蒸馏损失值。
作为一种示例,标记分类蒸馏损失值为Lcls,则有:
;(1)
其中,LKL是指KL(Kullback-Leibler)散度损失函数。clst(i)是指教师检测模型输出的第i个第一特征点的第一概率分布,clss(i)是指学生检测模型输出的第i个第二特征点的第二概率分布,K1为第一特征点或第二特征点的数量。
步骤405,根据多个第一特征点所属的第一预测框的第一位置信息和多个第二特征点所属的第二预测框的第二位置信息之间的差异,确定回归蒸馏损失值。
在本公开实施例中,可以根据多个第一特征点所属的第一预测框的第一位置信息和多个第二特征点所属的第二预测框的第二位置信息之间的差异,确定回归蒸馏损失值。其中,回归蒸馏损失值与上述差异呈正相关关系(即成正向关系)。
在本公开的任意一个实施例之中,回归蒸馏损失值可以通过以下方式确定:
首先,可以分别将多个第一特征点所属的第一预测框的第一位置信息进行离散化处理,以得到多个第一特征点的第一预测框的离散分布特征。比如,第一位置信息可以包括W、H、X、Y这四个维度的信息,可以将第一位置信息中的每个维度的信息经过卷积输出为n×1的离散分布特征。
之后,可以将多个第一特征点所属的第一预测框的离散分布特征输入归一化指数函数softmax函数,以得到softmax函数输出的多个第一特征点所属的第一预测框的第三概率分布,其中,第三概率分布用于指示对应第一预测框的各条边的分布。也就是说,每个特征点所属的第一预测框包括4个离散分布特征,将该特征点所属的第一预测框的4个离散分布特征输入softmax函数,softmax函数输出的概率分布,用于指示该特征点所属的第一预测框的4条边的分布。
同理,可以分别将多个第二特征点所属的第二预测框的第二位置信息进行离散化处理,以得到多个第二特征点所属的第二预测框的离散分布特征,并将多个第二特征点所属的第二预测框的离散分布特征输入softmax函数,以得到softmax函数输出的多个第二特征点所属的第二预测框的第四概率分布,其中,第四概率分布用于指示对应第二预测框的各条边的分布。
从而本公开中,可以根据多个第一特征点所属的第一预测框的第三概率分布和多个第二特征点所属的第二预测框的第四概率分布之间的差异,确定回归蒸馏损失值。
作为一种示例,标记回归蒸馏损失值为Lreg,则有:
;(2)
其中,regt(i)是指第i个第一特征点所属的第一预测框的第三概率分布,regs(i)是指第i个第二特征点所属的第二预测框的第四概率分布,weigit(i)是指第i个第二特征点对应的第二概率分布中的最大概率。
由此,可以实现根据第一预测框的各条边的分布和第二预测框的各条边的分布之间的差异,对学生检测模型进行训练,使得学生检测模型输出的预测框的各条边与教师检测模型输出的预测框的相同边之间的分布尽量相似,从而提升学生检测模型的预测精度,即,使得学生检测模型预测出更加准确的预测框。
步骤406,根据分类蒸馏损失值和回归蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
步骤407,根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。
步骤408,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
步骤406至408的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的目标检测模型的训练方法,同时基于第一检测信息中多个特征点的第一概率分布和第三检测信息中多个特征点的第二概率分布之间的差异,确定分类蒸馏损失值,可以提升分类蒸馏损失值确定结果的准确性和可靠性。同时基于第一检测信息中多个特征点所属的预测框的第一位置信息和第三检测信息中多个特征点所属的预测框的第二位置信息之间的差异,确定回归蒸馏损失值,可以提升回归蒸馏损失值确定结果的准确性和可靠性,从而,基于准确的分类蒸馏损失值和回归蒸馏损失值,对学生检测模型进行训练,可以提升学生检测模型中的二维检测网络的预测精度。
为了清楚说明本公开任一实施例中是如何确定第一损失函数的二维蒸馏损失项的,本公开还提出一种目标检测模型的训练方法。
图7为本公开实施例五所提供的目标检测模型的训练方法的流程示意图。
如图7所示,该目标检测模型的训练方法可以包括以下步骤:
步骤701,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
步骤702,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
其中,第一检测信息包括第一预测框对应的第一位置信息和第一概率分布,第一概率分布用于指示第一预测框内的目标属于多个预测类别的概率。
步骤703,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率。
步骤704,根据第一预测框的第一概率分布和第二预测框的第二概率分布,确定分类蒸馏损失值。
步骤705,根据第一预测框的第一位置信息和第二预测框的第二位置信息,确定回归蒸馏损失值。
步骤701至705的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤706,对第一检测信息中的多个第二图像特征ci×hi×wi进行特征映射,以得到多个第一映射特征。
其中,i为第二图像特征的序号,wi为第二图像特征中的多个宽度分量,hi为第二图像特征中多个高度分量,ci为第二图像特征中的多个维度分量,多个第一映射特征的维度分量c匹配。
在本公开实施例中,可以将多个第二图像特征进行特征映射,以得到多个第一映射特征,其中,各第一映射特征的维度分量c匹配或相同。
步骤707,对第三检测信息中的多个第四图像特征进行特征映射,以得到多个第二映射特征。
在本公开实施例中,同样可以对多个第四图像特征进行特征映射,以得到多个第二映射特征,其中,多个第二映射特征的维度分量与多个第一映射特征的维度分量匹配。
步骤708,针对任一第一映射特征,从多个第二映射特征中确定与第一映射特征尺寸匹配的目标映射特征。
在本公开实施例中,针对任意一个第一映射特征,可以从多个第二映射特征中确定与该第一映射特征尺度匹配的目标映射特征。
举例而言,假设第一映射特征的个数为2,分别为第一映射特征1(尺度为128×82×46)和第一映射特征2(尺度为128×41×23),则针对第一映射特征1,与其尺寸匹配的目标映射特征的尺度也为128×82×46,针对第一映射特征2,与其尺寸匹配的目标映射特征的尺度也为128×41×23。
步骤709,根据第一映射特征和目标映射特征之间的差异,确定特征蒸馏损失值。
在本公开实施例中,特征蒸馏损失值还可以称为特征蒸馏损失函数的取值。
在本公开实施例中,可以根据第一映射特征和目标映射特征之间的差异,确定特征蒸馏损失值,其中,特征蒸馏损失值与上述差异呈正相关关系。
在本公开的任意一个实施例之中,特征蒸馏损失值可以通过以下方式确定:从第一映射特征中确定属于前景的第三特征点,并从目标映射特征中确定属于前景的第四特征点,从而本公开中,可以根据第三特征点和第四特征点之间的差异,确定特征蒸馏损失值。其中,特征蒸馏损失值与上述差异呈正相关关系。
作为一种示例,标记特征蒸馏损失值为Lembedding,则有:
;(3)
其中,K2是指第三特征点或第四特征点的数量,ti是指第三特征点在第一映射特征中的特征向量,si是指第四特征点在目标映射特征中的特征向量。
综上,由于目标一般存在于图像中的前景区域,基于学生检测模型和教师检测模型提取的特征中的前景特征点之间的差异,确定特征蒸馏损失值,在保证计算精度的基础上,还可以降低计算量。
在本公开实施例的一种可能的实现方式中,前景特征点可以通过以下方式确定:判断第一样本图像是否具有标注信息,其中,标注信息中至少包括第一标注框的标注位置信息,在第一样本图像具有标注信息的情况下,可以根据第一标注框的标注位置信息,从第一映射特征中确定属于前景的第三特征点,及从目标映射特征中确定属于前景的第四特征点。也就是说,可以将第一标注框内的各特征点作为前景特征点。
在第一样本图像未具有标注信息的情况下,可以根据经过训练的教师检测模型输出的至少一个第一预测框的置信度,从至少一个第一预测框中确定目标预测框,比如,可以将置信度高于设定的置信度阈值的第一预测框作为目标预测框,从而可以根据目标预测框的第一位置信息,从第一映射特征中确定属于前景的第三特征点,及从目标映射特征中确定属于前景的第四特征点。也就是说,可以将目标预测框内的各特征点作为前景特征点。
需要说明的是,在第一样本图像未具有标注信息的情况下,上述仅以根据教师检测模型输出的第一预测框,确定前景特征点进行示例,实际应用时,也可以基于其他经过训练的目标检测模型来对第一样本图像进行目标检测,得到至少一个检测框,并至少一个检测框的置信度,从各检测框中确定置信度相对较高的检测框,从而可以将置信度相对较高的检测框中的各特征点,作为前景特征点,本公开对此并不做限制。
由此,无论第一样本图像是否具有标注信息,均可从第一映射特征和目标映射特征中确定属于前景的特征点,提升前景特征点确定的有效性和可靠性。
步骤710,根据分类蒸馏损失值、回归蒸馏损失值和特征蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
在本公开实施例中,可以根据分类蒸馏损失值、回归蒸馏损失值和特征蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
作为一种示例,可以将分类蒸馏损失值、回归蒸馏损失值和特征蒸馏损失值之和,作为第一损失函数的二维蒸馏损失项。
例如,标记二维蒸馏损失项为Lditill2D,则有:
Lditill2D= Lcls+ Lreg+ Lembedding;(4)
作为另一种示例,可以将分类蒸馏损失值、回归蒸馏损失值和特征蒸馏损失值进行加权求和,以得到第一损失函数的二维蒸馏损失项。
步骤711,根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。
步骤712,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
步骤711至712的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的目标检测模型的训练方法,不仅基于分类蒸馏损失值和回归蒸馏损失值,确定二维蒸馏损失项,还基于特征层面的特征蒸馏损失值,来确定二维蒸馏损失项,可以提升二维蒸馏损失项计算结果的准确性,从而基于准确的二维蒸馏损失项,对学生检测模型进行训练,可以提升学生检测模型中的二维检测网络的预测精度。
为了清楚说明本公开任一实施例中是如何对学生检测模型进行训练的,本公开还提出一种目标检测模型的训练方法。
图8为本公开实施例六所提供的目标检测模型的训练方法的流程示意图。
如图8所示,该目标检测模型的训练方法可以包括以下步骤:
步骤801,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
步骤802,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
其中,第二检测信息包括第一预测框内目标的第一朝向角、第一深度和第一尺寸中的至少一项。
步骤801至802的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,第二检测信息可以通过以下方式预测得到:
首先,可以将多个第二图像特征输入第一三维检测网络中的第三路径聚合分支进行特征融合,以得到第三路径聚合分支输出的多个尺度的第五图像特征。
作为一种示例,以教师检测模型的结构如图5所示进行示例,第三路径聚合分支可以为轻量化的PAN(即PAN-Small),第一路径聚合分支为非轻量化的PAN(即PAN-Large),可以将第一路径聚合分支输出的三个第二图像特征(P5、P4和P3)输入第三路径聚合分支进行特征融合,得到3个不同尺度的第五图像特征。
之后,可以将多个第五图像进行尺寸调整,其中,调整后的多个第五图像特征的尺寸匹配,而后,可以将调整后的多个第五图像特征进行融合,以得到融合图像特征。
仍以教师检测模型的结构如图5所示进行示例,可以将3个不同尺度的第五图像特征进行尺寸调整,并对尺寸调整后的各第五图像特征进行拼接,以得到拼接图像特征,之后,可以通过SSFPN(Scale Sequence(S2)Feature Based-Feature Pyramid Network,一种特征金字塔网络)实现不同尺度之间的特征信息融合,得到融合图像特征,其中,SSFPN是由2D+1D卷积实现的。
而后,可以根据第一预测框的第一位置信息,对融合图像特征进行池化操作,以得到与第一预测框关联的第一目标特征,并采用第一三维检测网络中的第一预测分支对第一目标特征进行目标的姿态预测、距离预测和尺寸预测,以得到第一预测框内目标的第一朝向角、第一深度和第一尺寸。
仍以教师检测模型的结构如图5所示进行示例,可以基于第一预测框的第一位置信息,对融合图像特征进行ROI Align操作(感兴趣区域对准操作,属于一种池化操作),以得到第一目标特征,采用3Dhead(本公开记为第一预测分支)中的姿态预测子分支、尺寸预测子分支、距离预测子分支(图5中未示出)分别对第一目标特征进行目标的姿态预测、目标的距离预测和目标的尺寸预测,以得到第一预测框内目标的第一朝向角、第一深度和第一尺寸。
由此,可以实现基于多个尺度的图像特征,预测第一样本图像中目标的朝向角、深度和尺寸,可以提升预测结果的准确性和可靠性。
步骤803,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
其中,第四检测信息包括第二预测框内目标的第二朝向角、第二深度和第二尺寸中的至少一项。
步骤803的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,第四检测信息可以通过以下方式预测得到:
首先,可以根据多个第四图像特征的维度分量,从多个第四图像特征中确定目标图像特征,比如,可以将最大的维度分量c对应的第四图像特征,作为目标图像特征,再比如,可以将最小的维度分量c对应的第四图像特征,作为目标图像特征,再比如,还可以随机选择一个维度分量c对应的第四图像特征,作为目标图像特征,等等,本公开对此并不做限制。
之后,可以根据第二预测框的第二位置信息,对目标图像特征进行池化操作,以得到与第二预测框关联的第二目标特征,并采用第二三维检测网络中的第二预测分支对第二目标特征进行目标的姿态预测、距离预测和尺寸预测,以得到第二预测框内目标的第二朝向角、第二度和第二尺寸。
以学生检测模型的结构如图6所示进行示例,可以将最大的维度分量c对应的第四图像特征P5作为目标图像特征,并基于第二预测框的第二位置信息,对目标图像特征P5进行ROI Align操作,以得到第二目标特征,采用3Dhead(本公开记为第二预测分支)中的姿态预测子分支、尺寸预测子分支、距离预测子分支(图6中未示出)分别对第二目标特征进行目标的姿态预测、目标的距离预测和目标的尺寸预测,以得到第二预测框内目标的第二朝向角、第二深度和第二尺寸。
由此,可以实现基于多个尺度的图像特征,预测第一样本图像中目标的朝向角、深度和尺寸,可以提升预测结果的准确性和可靠性。
步骤804,根据第一检测信息和第三检测信息之间的差异,生成第一损失函数的二维蒸馏损失项。
步骤801至804的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤805,根据第一朝向角和第二朝向角之间的差异,确定姿态蒸馏损失值。
步骤806,根据第一深度和第二深度之间的差异,确定距离蒸馏损失值。
在本公开实施例中,可以根据第一预测框内目标的第一深度和第二预测框内目标的第二深度之间的差异,确定距离蒸馏损失值。其中,距离蒸馏损失值与上述差异呈正相关关系。
步骤807,根据第一尺寸和第二尺寸之间的差异,确定尺寸蒸馏损失值。
在本公开实施例中,可以根据第一预测框内目标的第一尺寸和第二预测框内目标的第二尺寸之间的差异,确定尺寸蒸馏损失值。
作为一种示例,尺寸可以包括:W(宽)、H(高)、L(长)这三个维度的信息,可以分别计算第一尺寸和第二尺寸之间的宽度差异、高度差异和长度差异,根据宽度差异、高度差异和长度差异中的至少一项,确定尺寸蒸馏损失值。其中,尺寸蒸馏损失值与上述各项差异均呈正相关关系。
步骤808,根据姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的至少一项,确定第一损失函数的三维蒸馏损失项。
在本公开实施例中,可以根据姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的至少一项,确定第一损失函数的三维蒸馏损失项。
作为一种示例,可以将姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的任意一项,作为第一损失函数的三维蒸馏损失项。
作为一种示例,可以根据姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的多项,确定第一损失函数的三维蒸馏损失项。
例如,可以将姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的多项之和,作为三维蒸馏损失项,或者,可以对姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的多项进行加权求和,以得到三维蒸馏损失项。
步骤809,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
步骤809的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的目标检测模型的训练方法,可以实现基于学生检测模型和教师检测模型中的三维检测网络输出的目标的姿态之间的差异、距离之间的差异和尺寸之间的差异,确定三维蒸馏损失项,可以提升三维蒸馏损失项计算结果的准确性,从而基于准确的三维蒸馏损失项,对学生检测模型进行训练,可以提升学生检测模型中的三维检测网络的预测精度。
为了清楚说明上述任一实施例中是如何根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型进行训练的,本公开还提出一种目标检测模型的训练方法。
图9为本公开实施例七所提供的目标检测模型的训练方法的流程示意图。
如图9所示,该目标检测模型的训练方法可以包括以下步骤:
步骤901,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
步骤901的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开实施例中,在第一样本图像具有标注信息的情况下,该第一样本图像中可以标注有第一标注框的标注位置信息和第一标注框内目标所属的第一标注类别。
其中,对第一样本图像的标注方式不做限制,比如,可以通过人工标注方式,对第一样本图像进行标注,或者,可以通过机器标注方式,对第一样本图像进行标注,比如,可以采用预测精度较高的目标检测模型对第一样本图像进行目标检测,得到检测结果,并根据该检测结果对第一样本图像进行自动标注。
步骤902,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
步骤903,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率。
步骤904,根据第一检测信息和第三检测信息之间的差异,生成第一损失函数的二维蒸馏损失项。
步骤905,根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。
步骤902至905的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤906,根据第二概率分布,确定第二预测框内目标所属的第一目标类别。
在本公开实施例中,可以根据第二预测框对应的第二概率分布,确定第二预测框内目标所属的第一目标类别。比如,可以将第二概率分布中的最大概率对应的预测类别,作为该第二预测框内目标所属的第一目标类别。
步骤907,根据第一标注框的第一标注类别和第二预测框的第一目标类别之间的差异,生成第二损失函数的回归损失项。
在本公开实施例中,可以根据第一标注框的第一标注类别和第二预测框的第一目标类别之间的差异,生成第二损失函数的回归损失项。
其中,回归损失项与第一标注类别和第一目标类别之间的差异呈正相关关系(即成正向关系)。
步骤908,根据第一标注框的标注位置信息和第二预测框的第二位置信息之间的差异,生成第二损失函数的分类损失项。
在本公开实施例中,可以根据第一标注框的标注位置信息和第二预测框的第二位置信息之间的差异,生成第二损失函数的分类损失项。
其中,分类损失项与标注位置信息和第二位置信息之间的差异呈正相关关系(即成正向关系)。
在本公开实施例的一种可能的实现方式中,还可以通过度量损失函数,来加强学生检测模型区分一些容易混淆的类别。
作为一种示例,可以获取第一图像和第二图像,其中,第一图像中的目标所属的类别与第一标注类别匹配,第二图像中的目标所属的类别与第一标注类别不匹配。举例而言,假设第一样本图像中的目标所属的类别为狗,则第一图像中的目标所属的类别也为狗,第二图像中的目标所属的类别与狗不同,比如可以为车辆、行人等。本公开中,可以根据第一图像和第一样本图像之间的距离,以及根据第二图像和第一样本图像之间的距离,确定第二损失函数的度量学习损失项。
其中,度量学习损失项与第一图像和第一样本图像之间的距离呈正相关关系,即第一图像和第一样本图像之间的距离越小,度量学习损失项的取值越小,反之,第一图像和第一样本图像之间的距离越大,度量学习损失项的取值越大。
其中,度量学习损失项与第二图像和第一样本图像之间的距离呈负相关关系,即第二图像和第一样本图像之间的距离越大,度量学习损失项的取值越小,反之,第二图像和第一样本图像之间的距离越小,度量学习损失项的取值越大。
由此,还可以实现基于度量学习损失项,来加强学生检测模型区分一些容易混淆的类别,提升学生检测模型的分类精度。
步骤909,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,以及根据第二损失函数的回归损失项和分类损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例中,可以根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,以及根据第二损失函数的回归损失项和分类损失项,对学生检测模型中的模型参数进行调整。或者,还可以根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,以及根据第二损失函数的回归损失项、分类损失项和度量学习损失项,对学生检测模型中的模型参数进行调整。
作为一种示例,可以将第一损失函数的各损失项(即二维蒸馏损失项和三维蒸馏损失项)和第二损失函数的各损失项(即回归损失项和分类损失项,或者,回归损失项、分类损失项和度量学习损失项)之和,作为第二损失值,根据第二损失值,对学生检测模型中的模型参数进行调整,以使第二损失值最小化。
作为另一种示例,可以对第一损失函数的各损失项(即二维蒸馏损失项和三维蒸馏损失项)和第二损失函数的各损失项(即回归损失项和分类损失项,或者,回归损失项、分类损失项和度量学习损失项)进行加权求和,以得到第二损失值,根据第二损失值,对学生检测模型中的模型参数进行调整,以使第二损失值最小化。
需要说明的是,上述仅以学生检测模型训练的终止条件为第二损失值最小化进行示例,实际应用时,还可以设置其他终止条件,比如终止条件还可以包括:训练次数达到设定次数,训练时长达到设定时长,等等,本公开对此并不作限制。
本公开实施例的目标检测模型的训练方法,不仅可以实现基于蒸馏损失值对学生检测模型进行训练,还可以实现基于非蒸馏损失值对学生检测模型进行训练,可以提升学生检测模型的训练效果,即提升学生检测模型的预测精度。
为了清楚说明上述任一实施例中是如何根据第一损失函数的各损失项和第二损失函数的各损失项,对学生检测模型进行训练的,本公开还提出一种目标检测模型的训练方法。
图10为本公开实施例八所提供的目标检测模型的训练方法的流程示意图。
如图10所示,该目标检测模型的训练方法可以包括以下步骤:
步骤1001,获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
其中,第一样本图像中标注有第一标注框的标注位置信息和第一标注框内目标所属的第一标注类别,且第一样本图像中还标注有第一标注框内目标的第一标注朝向角、第一标注深度和第一标注尺寸。
步骤1002,采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
步骤1003,采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率。
步骤1004,根据第一检测信息和第三检测信息之间的差异,生成第一损失函数的二维蒸馏损失项。
步骤1005,根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项。
步骤1006,根据第二概率分布,确定第二预测框内目标所属的第一目标类别。
步骤1007,根据第一标注框的第一标注类别和第二预测框的第一目标类别之间的差异,生成第二损失函数的回归损失项。
步骤1008,根据第一标注框的标注位置信息和第二预测框的第二位置信息之间的差异,生成第二损失函数的分类损失项。
步骤1001至1008的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤1009,根据第一标注朝向角和第二朝向角之间的差异,生成第三损失函数的姿态损失项。
在本公开实施例中,可以根据第一标注朝向角和第二朝向角之间的差异,生成第三损失函数的姿态损失项。其中,姿态损失项与上述差异呈正相关关系。
步骤1010,根据第一标注深度和第二深度之间的差异,生成第三损失函数的距离损失项。
在本公开实施例中,可以根据第一标注框的第一标注深度和第二预测框的第二深度之间的差异,生成第三损失函数的距离损失项。其中,距离损失项与上述差异呈正相关关系。
步骤1011,根据第一标注尺寸和第二尺寸之间的差异,生成第三损失函数的尺寸损失项。
在本公开实施例中,可以根据第一标注框的第一标注尺寸和第二预测框的第二尺寸之间的差异,生成第三损失函数的尺寸损失项。
作为一种示例,尺寸可以包括:W(宽)、H(高)、L(长)这三个维度的信息,可以分别计算第一标注尺寸和第二尺寸之间的宽度差异、高度差异和长度差异,根据宽度差异、高度差异和长度差异中的至少一项,确定尺寸损失项。其中,尺寸损失项与上述各项差异均呈正相关关系。
步骤1012,根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项、第二损失函数的回归损失项和分类损失项,以及第三损失函数的姿态损失项、距离损失项和尺寸损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例中,可以根据第一损失函数的各损失项(即二维蒸馏损失项和三维蒸馏损失项)、第二损失函数的各损失项(即回归损失项和分类损失项,或者,回归损失项、分类损失项和度量学习损失项)和第三损失函数的各损失项(即姿态损失项、距离损失项和尺寸损失项),对学生检测模型中的模型参数进行调整。
作为一种示例,可以将第一损失函数的各损失项、第二损失函数的各损失项和第三损失函数的各损失项之和,作为第二损失值,并根据第二损失值,对学生检测模型中的模型参数进行调整,以使第二损失值最小化。
作为另一种示例,可以对第一损失函数的各损失项、第二损失函数的各损失项和第三损失函数的各损失项进行加权求和,以得到第二损失值,并根据第二损失值,对学生检测模型中的模型参数进行调整,以使第二损失值最小化。
需要说明的是,上述仅以学生检测模型训练的终止条件为第二损失值最小化进行示例,实际应用时,还可以设置其他终止条件,比如终止条件还可以包括:训练次数达到设定次数,训练时长达到设定时长,等等,本公开对此并不作限制。
本公开实施例的目标检测模型的训练方法,不仅可以实现基于二维标注信息(标注位置信息和标注类别)对学生检测模型进行训练,还可以基于三维标注信息(标注朝向角、标注深度和标注尺寸)对学生检测模型进行训练,可以提升学生检测模型的训练效果,即提升学生检测模型的预测精度。
在本公开的任意一个实施例之中,可以利用具有标注信息的样本图像和未具有标注信息的样本图像,联合蒸馏2D检测和3D检测,使得蒸馏后的学生检测模型不仅能够保持较低的运行耗时,而且能够具备良好的检测效果。
蒸馏方案主要包含以下几个部分:
第一,输入数据。
除了可以利用具有标注信息的样本图像(后续称为有标注数据)之外,还可以引入未具有标注信息的样本图像(后续称为无标注数据),利用教师检测模型(比如单目3D检测大模型)来蒸馏学生检测模型(比如单目3D检测小模型)。其中,输入数据包括有标注数据和无标注数据,其中,在采用多个批次的样本图像对学生检测模型进行训练时,每个批次中的有标注数据和无标注数据的比例可为3:1。
需要说明的是,针对不同的自动驾驶检测场景,数据配比可以相应调整。同时,有标注数据和无标注数据可以来源于同一个场景(比如交通场景)或分布,或者,也可以来源于关联场景(比如,当目标为行人时,关联场景可以包括交通场景和商场场景),以避免由于分布或场景不同,导致学生检测模型的性能下降的情况发生。
第二,模型组成。
基线 Baseline模型。
1、特征提取分支(骨干网络backbone):目标检测模型小型化通常具有两个模型,一个是大模型,作为教师检测模型,另一个是小模型,作为学生检测模型。作为一种示例,教师检测模型和学生检测模型中的特征提取分支可以为CSPRepResNet,优势在于:CSPRepResNet具有平衡的模型推理速度和参数量,同时可以根据不同的需求场景,灵活配置模型大小。
2、目标检测模型的特征颈部结构Neck部分:采用了PAN结构作为目标检测模型的Neck来加强特征金字塔结构,其中,PAN结构是在传统FPN(Feature Pyramid Networks,特征金字塔网络)结构上的一种改进结构,其融合了bottom-up(是一种归纳方法,从微观逐级上升到宏观,自底向上)设计和top-down(是一种演绎方法,特点从宏观逐级细化到微观,自上而下)设计。
需要说明的是,由于2D任务和3D任务优化的目标不同,在训练目标检测模型的过程中,共享2D特征和3D特征会导致2D任务和3D任务训练冲突,从而导致模型训练不稳定,最终使得3D检测效果不理想的情况。为了解决这个问题,本公开提出一种双Neck任务解耦方法。具体而言,首先针对Neck部分,可以采用PAN结构作为2D检测网络的Neck,如图5中的PAN-Large结构。针对3D检测,可以基于2D检测网络Neck的输出,额外再添加一个新的轻量化的3D Neck结构,设计结构同样采用PAN结构(如图5中的PAN-small),同时,可以融合3DPAN的三层输出,并采用2D+1D卷积进一步融合多个图像特征,得到一个融合图像特征,并在后续的3D属性分类器中对该融合图像特征进行ROI Align操作(如图5中的SSFPN模块)。其次,为了解决2D和3D任务冲突,在3D任务计算得到的损失函数(总损失,比如可以为各个损失项之和)梯度回传更新不同的网络层时,可以采用分而治之的策略,即对2D部分的网络参数进行正常梯度更新,对3D部分的网络参数梯度更新时进行衰减,以缓解2D和3D任务冲突的情况。
比如,针对学生检测模型或教师检测模型中的二维检测网络,可以根据损失函数进行梯度计算,并根据计算的梯度,对二维检测网络的网络参数进行正常梯度更新,针对学生检测模型或教师检测模型中的三维检测网络,可以对梯度乘以衰减系数,并根据衰减后的梯度对三维检测网络的网络参数进行梯度更新。
3、目标检测模型的头部结构Head部分:针对不同任务设计了2D head和3D head。
其中,2D head包括预测2D预测框bbox的回归分支,以及预测bbox类别的分类分支和度量学习分支。针对在实际的目标检测场景中容易混淆的类别,比如塑料袋和小动物,可以引入度量学习方法(例如arcface embedding loss,人脸识别特征损失函数)来增加类别之间的区分度。具体而言,可以在分类分支之前的卷积层,额外增加度量学习分支,通过度量学习损失函数来加强区分一些容易混淆的类别。
此外,为了加强目标检测模型在实际的目标检测场景中对小目标的检测能力,本公开中,可以通过增加小目标对应的预测框内特征点的数量,来缓解不用大小的目标优化不平衡的问题,避免目标检测模型只关注大目标的训练,而忽视了小目标的优化。
其中,3Dhead包含姿态(或朝向角orientation)、尺寸(dimension)、深度(或距离distance)等属性预测分支,来预测目标的3D位置。
第三,蒸馏过程。
如图11所示,可以将2D目标检测蒸馏和3D目标检测蒸馏统一在一个框架之内,并且,通过输出值logits蒸馏和特征蒸馏来提升学生检测模型的性能,具体蒸馏过程如下所示:
(1)首先,训练大模型作为教师检测模型。作为一种示例,教师检测模型可以采用PP-YOLOe(Paddle Paddle You Only Look Once evolved)系列中的PP-YOLOe-x模型,训练数据为有标注数据。在自动驾驶场景中,该教师检测模型可以为任何参数量相对较大的单目3D检测模型。
(2)其次,通过蒸馏框架训练进行模型小型化。除了需要计算正常的单目3D检测模型的损失函数的取值(比如2D分类损失函数的取值(本公开中记为分类损失项)、2D检测框的回归损失函数的取值(本公开中记为回归损失项)、3D检测网络的深度预测损失函数的取值(本公开中记为距离损失项)等)之外,还要额外计算蒸馏损失函数的取值,其过程为:将同样的样本图像分别输入到学生检测模型和教师检测模型中,将教师检测模型和学生检测模型中的2D head的logits输出(一个特征点对应一个logit,比如对于分类分支,该分类分支包括全连接层和softmax层,可以将全连接层的输出,作为各个特征点对应的logits)以及2D head的特征embedding输出(即第一映射特征或第二映射特征)和3D head的logits输出进行蒸馏损失函数计算,使得教师检测模型中的知识转移到学生检测模型中去。
第四,蒸馏损失。
蒸馏部分一共分为两部分损失函数,分别为2D蒸馏损失函数和3D蒸馏损失函数,其中,有标注数据和无标注数据的计算方式相同,计算公式如下所示:
Lditill= Lditill2D+ Lditill3D
其中,Ldistill为总蒸馏损失函数(本公开中记为第一损失函数),Lditill2D为2D蒸馏损失函数,Lditill3D为3D蒸馏损失函数。Lditill2D一共包括分类蒸馏损失函数Lcls、回归蒸馏损失函数Lreg以及特征蒸馏损失函数Lembedding,公式为:
Lditill2D= Lcls+ Lreg+ Lembedding;(4)
本公开中,2D部分,可以采用全蒸馏的技术方案,即对前景和背景一起蒸馏:
(1)分类蒸馏损失函数Lcls
将教师检测模型的2D检测网络输出的logits(分类分支或分类head的全连接层的输出)除以温度系数T(预先设定的超参数)后做softmax变化得到软化的概率分布,公式为:SoftMax(˙/T)。当温度系数T越大时,分类分支输出的概率分布会越平滑,可以增大小概率值所携带的信息,从而避免了信息丢失。然后再通过KL散度来衡量教师检测模型和学生检测模型之间的分类分支输出的概率分布上的差异,得到分类蒸馏损失函数,计算公式为:
;(1)
其中,K1=h*w(特征的尺寸)为分类分支输出的logits数量,clst(i)和clss(i)分别为教师检测模型和学生检测模型的分类分支输出的第i个特征点经过软化后的概率分布。
(2)回归蒸馏损失Lreg
将回归分支(或定位分支、定位head)的输出bbox(即预测框的位置信息)进行离散化成4×n个logits输出值。具体地,每个bbox输出包括四个值(W、H、X、Y),将每个值离散化成n个logits,然后采用带有温度系数的softmax对4n个logits进行软化,随后类似分类head,通过KL散度损失函数使得学生检测模型的定位分布拟合教师检测模型的定位分布,最后为了关注更高质量的伪标签,每个bbox的回归蒸馏损失函数可以乘上对应分类概率的最大值,具体计算公式为:
;(2)
其中,K1为分类head输出的logits数量, regt(i)和regs(i)分别为教师检测模型和学生检测模型的回归分支输出的第i个特征点经过软化后的概率分布,weigit(i)为学生检测模型输出的第i个特征点所属的预测框bbox对应的分类概率的最大值。
其中,reg特征输出的维度大小为w×h×4n,K1为reg特征的w和h的乘积大小。特征点的特征负责预测一个bbox,bbox的表达是[delta_X,delta_Y,delta_W,delta_H],这里的delta_*值是相对特征点的位置的;XY是bbox的中心点坐标,W和H分别是bbox内目标的宽和高。
(3)特征蒸馏损失函数Lembedding
将学生检测模型和教师检测模型中的中间层embedding提取出来,两者具有相同大小的输出,然后最小化两个模型输出的L2范数损失函数,使得学生检测模型学习到教师检测模型中的知识,计算公式为:
;(3)
其中,K2为特征层对应的前景特征点数量,ti和si分别为教师检测模型和学生检测模型的中间层embedding中的前景特征点。
其中,3D蒸馏损失函数Lditill3D一共包括dimension、orientation和distance蒸馏分支,计算公式为:
Lditill3D= Ldimension+ Lorientation+ Ldistance;(5)
其中,Ldimension为尺寸损失函数,Lorientation为姿态损失函数,Ldistance为距离或深度损失函数。
分别计算学生检测模型和教师检测模型中的dimension、orientation和distance分支的输出差异,然后根据输出差异计算对应分支之间的L2损失函数,最终可以让学生检测模型的3D head预测分布拟合教师检测模型中3D head分布,计算公式为:
;(6)
其中,L3D可为Ldimension、Lorientation或Ldistance,K3为dimension、orientation或distance分支输出的前景特征点的数量,Ti和Si分别为教师检测模型和学生检测模型的dimension、orientation或distance分支输出的前景特征点所属检测框的朝向角、尺寸或距离。
综上,当该方法应用于交通场景时,可以对车载摄像头实时采集的图像进行目标(比如交通要素,如车辆、行人、交通标志物等)进行检测,可以广泛应用在智能交通、自动驾驶等场景中。
上述为学生检测模型的训练方法所对应的各实施例,本公开还提出一种学生检测模型的预测方法或应用方法,即目标检测方法。
图12为本公开实施例九所提供的目标检测方法的流程示意图。
如图12所示,该目标检测方法可以包括以下步骤:
步骤1201,获取待检测图像。
在本公开实施例中,待检测图像为需要进行目标检测的图像。
其中,对待检测图像的获取方式不做限制,比如,待检测图像可以从现有的测试集获取,或者,待检测图像可以在线采集,比如可以通过网络爬虫技术,在线采集待检测图像,或者,待检测图像也可以线下采集,或者,待检测图像也可以实时采集(比如通过车载摄像头实时采集待检测图像),或者,待检测图像也可以人工合成,等等,本公开实施例对此并不作限制。
步骤1202,采用经训练的学生检测模型中的第二二维检测网络对待检测图像进行目标检测,以得到第一目标检测信息。
其中,学生检测模型可以是采用上述图1至图10中任一实施例所提供的目标检测模型的训练方法训练得到的。
在本公开实施例中,可以采用经训练的学生检测模型中的第二二维检测网络对待检测图像进行目标检测,以得到第一目标检测信息,比如,可以采用第二二维检测网络对待检测图像进行目标的回归预测和类别预测,得到的第一目标检测信息可以包括检测框的位置信息和检测框内目标所属的类别,其中,检测框的个数可以为至少一个。
步骤1203,采用经训练的学生检测模型中的第二三维检测网络对待检测图像进行目标检测,以得到第二目标检测信息。
在本公开实施例中,还可以采用经训练的学生检测模型中的第二三维检测网络对待检测图像进行目标检测,以得到第二目标检测信息,比如,可以采用第二三维检测网络对待检测图像进行目标的姿态预测、距离预测和尺寸预测,得到的第二目标检测信息可以包括预测朝向角、预测深度和预测尺寸。
本公开实施例的目标检测方法,通过采用经训练的学生检测模型中的第二二维检测网络对待检测图像进行目标检测,以得到第一目标检测信息,并采用经训练的学生检测模型中的第二三维检测网络对待检测图像进行目标检测,以得到第二目标检测信息。由此,基于深度学习技术,预测图像中存在的目标的二维信息(如位置信息和类别)和三维信息(如朝向角、深度和尺寸),可以提升预测结果的准确性和可靠性。
与上述图1至图10实施例提供的目标检测模型的训练方法相对应,本公开还提供一种目标检测模型的训练装置,由于本公开实施例提供的目标检测模型的训练装置与上述图1至图10实施例提供的目标检测模型的训练方法相对应,因此在目标检测模型的训练方法的实施方式也适用于本公开实施例提供的目标检测模型的训练装置,在本公开实施例中不再详细描述。
图13为本公开实施例十所提供的目标检测模型的训练装置的结构示意图。
如图13所示,该目标检测模型的训练装置1300可以包括:获取模块1301、第一检测模块1302、第二检测模块1303以及训练模块1304。
其中,获取模块1301,用于获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像。
第一检测模块1302,用于采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息。
第二检测模块1303,用于采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息。
训练模块1304,用于根据第一检测信息和第三检测信息之间的差异,以及根据第二检测信息和第四检测信息之间的差异,对学生检测模型进行训练。
在本公开实施例的一种可能的实现方式中,训练模块1304,用于:根据第一检测信息和第三检测信息之间的差异,生成第一损失函数的二维蒸馏损失项;根据第二检测信息和第四检测信息之间的差异,生成第一损失函数的三维蒸馏损失项;根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例的一种可能的实现方式中,第一检测信息包括第一预测框对应的第一位置信息和第一概率分布,第一概率分布用于指示第一预测框内的目标属于多个预测类别的概率;第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率;训练模块1304,用于:根据第一预测框的第一概率分布和第二预测框的第二概率分布,确定分类蒸馏损失值;根据第一预测框的第一位置信息和第二预测框的第二位置信息,确定回归蒸馏损失值;根据分类蒸馏损失值和回归蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
在本公开实施例的一种可能的实现方式中,第一检测模块1302,用于:采用第一二维检测网络中的第一特征提取分支对第一样本图像进行特征提取,以得到多个尺度的第一图像特征;将多个尺度的第一图像特征输入第一二维检测网络中第一路径聚合分支进行特征融合,以得到第一路径聚合分支输出的多个尺度的第二图像特征;将多个第二图像特征输入第一二维检测网络中的第一回归分支进行目标的回归预测,以得到多个第二图像特征中多个第一特征点所属的第一预测框的第一位置信息;将多个第二图像特征输入第一二维检测网络中的第一分类分支进行目标的类别预测,以得到多个第一特征点的第一概率分布,其中,第一概率分布用于指示对应第一特征点属于多个预测类别的概率。
在本公开实施例的一种可能的实现方式中,第二检测模块1303,用于:采用第二二维检测网络中的第二特征提取分支对第一样本图像进行特征提取,以得到多个尺度的第三图像特征;将多个尺度的第三图像特征输入第二二维检测网络中第二路径聚合分支进行特征融合,以得到第二路径聚合分支输出的多个尺度的第四图像特征;将多个第四图像特征输入第二二维检测网络中的第二回归分支进行目标的回归预测,以得到多个第四图像特征中多个第二特征点所属的第二预测框的第二位置信息;将多个第四图像特征输入第二二维检测网络中的第二分类分支进行目标的类别预测,以得到多个第二特征点的第二概率分布,其中,第二概率分布用于指示对应第二特征点属于多个预测类别的概率。
在本公开实施例的一种可能的实现方式中,训练模块1304,用于:根据多个第一特征点的第一概率分布和多个第二特征点的第二概率分布之间的差异,确定分类蒸馏损失值;根据多个第一特征点所属的第一预测框的第一位置信息和多个第二特征点所属的第二预测框的第二位置信息之间的差异,确定回归蒸馏损失值。
在本公开实施例的一种可能的实现方式中,训练模块1304,用于:分别将多个第一特征点所属的第一预测框的第一位置信息进行离散化处理,以得到多个第一特征点所属的第一预测框的离散分布特征;将多个第一特征点所属的第一预测框的离散分布特征输入归一化指数函数softmax函数,以得到softmax函数输出的多个第一特征点所属的第一预测框的第三概率分布,其中,第三概率分布用于指示对应第一预测框的各条边的分布;分别将多个第二特征点所属的第二预测框的第二位置信息进行离散化处理,以得到多个第二特征点所属的第二预测框的离散分布特征;将多个第二特征点所属的第二预测框的离散分布特征输入softmax函数,以得到softmax函数输出的多个第二特征点所属的第二预测框的第四概率分布,其中,第四概率分布用于指示对应第二预测框的各条边的分布;根据多个第一特征点所属的第一预测框的第三概率分布和多个第二特征点所属的第二预测框的第四概率分布之间的差异,确定回归蒸馏损失值。
在本公开实施例的一种可能的实现方式中,训练模块1304,用于:对多个第二图像特征ci×hi×wi进行特征映射,以得到多个第一映射特征;其中,i为第二图像特征的序号,wi为第二图像特征中的多个宽度分量,hi为第二图像特征中多个高度分量,ci为第二图像特征中的多个维度分量,多个第一映射特征的维度分量匹配;对多个第四图像特征进行特征映射,以得到多个第二映射特征;其中,多个第二映射特征的维度分量与多个第一映射特征的维度分量匹配;针对任一第一映射特征,从多个第二映射特征中确定与第一映射特征尺寸匹配的目标映射特征;根据第一映射特征和目标映射特征之间的差异,确定特征蒸馏损失值;根据分类蒸馏损失值、回归蒸馏损失值和特征蒸馏损失值,确定第一损失函数的二维蒸馏损失项。
在本公开实施例的一种可能的实现方式中,训练模块1304,用于:从第一映射特征中确定属于前景的第三特征点,并从目标映射特征中确定属于前景的第四特征点;根据第三特征点和第四特征点之间的差异,确定特征蒸馏损失值。
在本公开实施例的一种可能的实现方式中,训练模块1304,用于:判断第一样本图像是否具有标注信息;其中,标注信息中至少包括第一标注框的标注位置信息;在第一样本图像具有标注信息的情况下,根据第一标注框的标注位置信息,从第一映射特征中确定属于前景的第三特征点,及从目标映射特征中确定属于前景的第四特征点;在第一样本图像未具有标注信息的情况下,根据至少一个第一预测框的置信度,从至少一个第一预测框中确定目标预测框;根据目标预测框的第一位置信息,从第一映射特征中确定属于前景的第三特征点,及从目标映射特征中确定属于前景的第四特征点。
在本公开实施例的一种可能的实现方式中,第二检测信息包括第一预测框内目标的第一朝向角、第一深度和第一尺寸中的至少一项,第四检测信息包括第二预测框内目标的第二朝向角、第二深度和第二尺寸中的至少一项;训练模块1304,用于:根据第一朝向角和第二朝向角之间的差异,确定姿态蒸馏损失值;根据第一深度和第二深度之间的差异,确定距离蒸馏损失值;根据第一尺寸和第二尺寸之间的差异,确定尺寸蒸馏损失值;根据姿态蒸馏损失值、距离蒸馏损失值和尺寸蒸馏损失值中的至少一项,确定第一损失函数的三维蒸馏损失项。
在本公开实施例的一种可能的实现方式中,第一检测模块1302,用于:将多个第二图像特征输入第一三维检测网络中的第三路径聚合分支进行特征融合,以得到第三路径聚合分支输出的多个尺度的第五图像特征;将多个第五图像特征进行尺寸调整,并将调整后的多个第五图像特征进行融合,以得到融合图像特征;其中,调整后的多个第五图像特征的尺寸匹配;根据第一预测框的第一位置信息,对融合图像特征进行池化操作,以得到与第一预测框关联的第一目标特征;采用第一三维检测网络中的第一预测分支对第一目标特征进行目标姿态预测、目标距离预测和目标尺寸预测,以得到第一朝向角、第一深度和第一尺寸。
在本公开实施例的一种可能的实现方式中,第二检测模块1303,用于:根据多个第四图像特征的维度分量,从多个第四图像特征中确定目标图像特征;根据第二预测框的第二位置信息,对目标图像特征进行池化操作,以得到与第二预测框关联的第二目标特征;采用第二三维检测网络中的第二预测分支对第二目标特征进行目标姿态预测、目标距离预测和目标尺寸预测,以得到第二朝向角、第二度和第二尺寸。
在本公开实施例的一种可能的实现方式中,第二检测模块1303,用于:根据多个第二特征点所属的第二预测框的第二位置信息,确定任一第二预测框内特征点的数量;在数量小于设定阈值的情况下,在第二预测框对应的第四图像特征上,以第二预测框的中心为圆心,设定半径长度画圆,得到目标圆形区域;采用第二二维检测网络中的第二分类分支对目标圆形区域进行目标的类别预测,以得到第二预测框内各特征点的第二概率分布。
在本公开实施例的一种可能的实现方式中,第一样本图像中标注有第一标注框的标注位置信息和第一标注框内目标所属的第一标注类别,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率;训练模块1304,用于:根据第二概率分布,确定第二预测框内目标所属的第一目标类别;根据第一标注框的第一标注类别和第二预测框的第一目标类别之间的差异,生成第二损失函数的回归损失项;根据第一标注框的标注位置信息和第二预测框的第二位置信息之间的差异,生成第二损失函数的分类损失项;根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,以及根据第二损失函数的回归损失项和分类损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例的一种可能的实现方式中,训练模块1304,具体用于:获取第一图像和第二图像,其中,第一图像中的目标所属的类别与第一标注类别匹配,第二图像中的目标所属的类别与第一标注类别不匹配;根据第一图像和第一样本图像之间的距离,以及第二图像和第一样本图像之间的距离,确定第二损失函数的度量学习损失项;根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项,以及根据第二损失函数的回归损失项、分类损失项和度量学习损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例的一种可能的实现方式中,第一样本图像中还标注有第一标注框内目标的第一标注朝向角、第一标注深度和第一标注尺寸,训练模块1304,用于:根据第一标注朝向角和第二朝向角之间的差异,生成第三损失函数的姿态损失项;根据第一标注深度和第二深度之间的差异,生成第三损失函数的距离损失项;根据第一标注尺寸和第二尺寸之间的差异,生成第三损失函数的尺寸损失项;根据第一损失函数的二维蒸馏损失项和三维蒸馏损失项、第二损失函数的回归损失项和分类损失项,以及第三损失函数的姿态损失项、距离损失项和尺寸损失项,对学生检测模型中的模型参数进行调整。
在本公开实施例的一种可能的实现方式中,获取模块1301,用于:获取第二样本图像;其中,第二样本图像上标注有第一标注信息和/或第二标注信息;采用初始的教师检测模型中的第一二维检测网络对第二样本图像进行目标检测,以得到第一预测信息;采用初始的教师检测模型中的第一三维检测网络对第二样本图像进行目标检测,以得到第二预测信息;根据第一标注信息和第一预测信息之间的差异,和/或,根据第二标注信息和第二预测信息之间的差异,对初始的教师检测模型进行训练,以得到预训练的教师检测模型。
本公开实施例的目标检测模型的训练装置,通过采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息,并采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息;根据第一检测信息和第三检测信息之间的差异,以及根据第二检测信息和第四检测信息之间的差异,对学生检测模型进行训练。由此,可以实现联合蒸馏二维检测网络和三维检测网络,使得蒸馏后的学生检测模型不仅能够保持较低的运行耗时,而且还可以具有较好的检测效果。并且,即使样本图像未具有标注信息,也可以实现基于参数量相对较大的教师检测模型对参数量相对较小的学生检测模型进行蒸馏学习,提升学生检测模型的预测精度,以及提升该方法的适用性。
与上述图12实施例提供的目标检测方法相对应,本公开还提供一种目标检测装置,由于本公开实施例提供的目标检测装置与上述图12实施例提供的目标检测方法相对应,因此在目标检测方法的实施方式也适用于本公开实施例提供的目标检测装置,在本公开实施例中不再详细描述。
图14为本公开实施例十一所提供的目标检测装置的结构示意图。
如图14所示,该目标检测装置1400可以包括:获取模块1401、第一预测模块1402以及第二预测模块1403。
其中,获取模块1401,用于获取待检测图像。
第一预测模块1402,用于采用经训练的学生检测模型中的第二二维检测网络对待检测图像进行目标检测,以得到第一目标检测信息。
第二预测模块1403,用于采用经训练的学生检测模型中的第二三维检测网络对待检测图像进行目标检测,以得到第二目标检测信息。
其中,经训练的学生检测模型是采用图13实施例所提供的目标检测模型的训练装置训练得到的。
本公开实施例的目标检测装置,通过采用经训练的学生检测模型中的第二二维检测网络对待检测图像进行目标检测,以得到第一目标检测信息,并采用经过训练的学生检测模型中的第二三维检测网络对待检测图像进行目标检测,以得到第二目标检测信息。由此,基于深度学习技术,预测图像中存在的目标的二维信息(如位置信息和类别)和三维信息(如朝向角、深度和尺寸),可以提升预测结果的准确性和可靠性。
为了实现上述实施例,本公开还提供一种电子设备,该电子设备可以包括至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开上述任一实施例提出的目标检测模型的训练方法或目标检测方法。
为了实现上述实施例,本公开还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开上述任一实施例提出的目标检测模型的训练方法或目标检测方法。
为了实现上述实施例,本公开还提供一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序在被处理器执行时实现本公开上述任一实施例提出的目标检测模型的训练方法或目标检测方法。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图15示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。其中,电子设备可以包括上述实施例中的服务端、客户端。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图15所示,电子设备1500包括计算单元1501,其可以根据存储在ROM(Read-OnlyMemory,只读存储器)1502中的计算机程序或者从存储单元1508加载到RAM(Random AccessMemory,随机访问/存取存储器)1503中的计算机程序,来执行各种适当的动作和处理。在RAM 1503中,还可存储电子设备1500操作所需的各种程序和数据。计算单元1501、ROM 1502以及RAM 1503通过总线1504彼此相连。I/O(Input/Output,输入/输出)接口1505也连接至总线1504。
电子设备1500中的多个部件连接至I/O接口1505,包括:输入单元1506,例如键盘、鼠标等;输出单元1507,例如各种类型的显示器、扬声器等;存储单元1508,例如磁盘、光盘等;以及通信单元1509,例如网卡、调制解调器、无线通信收发机等。通信单元1509允许电子设备1500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1501的一些示例包括但不限于CPU(Central Processing Unit,中央处理单元)、GPU(Graphic Processing Units,图形处理单元)、各种专用的AI(Artificial Intelligence,人工智能)计算芯片、各种运行机器学习模型算法的计算单元、DSP(Digital SignalProcessor,数字信号处理器)、以及任何适当的处理器、控制器、微控制器等。计算单元1501执行上文所描述的各个方法和处理,例如上述目标检测模型的训练方法或目标检测方法。例如,在一些实施例中,上述目标检测模型的训练方法或目标检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1502和/或通信单元1509而被载入和/或安装到电子设备1500上。当计算机程序加载到RAM 1503并由计算单元1501执行时,可以执行上文描述的目标检测模型的训练方法或目标检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元1501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述目标检测模型的训练方法或目标检测方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(Application-Specific Integrated Circuit,专用集成电路)、ASSP(Application Specific StandardProduct,专用标准产品)、SOC(System On Chip,芯片上系统的系统)、CPLD(ComplexProgrammable Logic Device,复杂可编程逻辑设备)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、RAM、ROM、EPROM(Electrically Programmable Read-Only-Memory,可擦除可编程只读存储器)或快闪存储器、光纤、CD-ROM(Compact Disc Read-Only Memory,便捷式紧凑盘只读存储器)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode-Ray Tube,阴极射线管)或者LCD(Liquid Crystal Display,液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:LAN(LocalArea Network,局域网)、WAN(Wide Area Network,广域网)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(VirtualPrivate Server,虚拟专用服务器)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
深度学习是机器学习领域中一个新的研究方向。它是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
根据本公开实施例的技术方案,通过采用教师检测模型中的第一二维检测网络和第一三维检测网络对第一样本图像进行目标检测,以得到第一二维检测网络输出的第一检测信息和第一三维检测网络输出的第二检测信息,并采用学生检测模型中的第二二维检测网络和第二三维检测网络对第一样本图像进行目标检测,以得到第二二维检测网络输出的第三检测信息和第二三维检测网络输出的第四检测信息;根据第一检测信息和第三检测信息之间的差异,以及根据第二检测信息和第四检测信息之间的差异,对学生检测模型进行训练。由此,可以实现联合蒸馏二维检测网络和三维检测网络,使得蒸馏后的学生检测模型不仅能够保持较低的运行耗时,而且还可以具有较好的检测效果。并且,即使样本图像未具有标注信息,也可以实现基于参数量相对较大的教师检测模型对参数量相对较小的学生检测模型进行蒸馏学习,提升学生检测模型的预测精度,以及提升该方法的适用性。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提出的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (20)

1.一种目标检测模型的训练方法,所述方法包括:
获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像,其中,所述第一样本图像中标注有第一标注框的标注位置信息和所述第一标注框内目标所属的第一标注类别;
采用所述教师检测模型中的第一二维检测网络和第一三维检测网络对所述第一样本图像进行目标检测,以得到所述第一二维检测网络输出的第一检测信息和所述第一三维检测网络输出的第二检测信息,其中,所述第一检测信息包括第一预测框对应的第一位置信息和第一概率分布,所述第一概率分布用于指示所述第一预测框内的目标属于多个预测类别的概率;
采用所述学生检测模型中的第二二维检测网络和第二三维检测网络对所述第一样本图像进行目标检测,以得到所述第二二维检测网络输出的第三检测信息和所述第二三维检测网络输出的第四检测信息,其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率;
根据所述第一预测框的第一概率分布和所述第二预测框的第二概率分布,确定分类蒸馏损失值;
根据所述第一预测框的第一位置信息和所述第二预测框的第二位置信息,确定回归蒸馏损失值;
根据所述分类蒸馏损失值和所述回归蒸馏损失值,确定第一损失函数的二维蒸馏损失项;
根据所述第二检测信息和所述第四检测信息之间的差异,生成所述第一损失函数的三维蒸馏损失项;
根据所述第二概率分布,确定所述第二预测框内目标所属的第一目标类别;
根据所述第一标注框的第一标注类别和所述第二预测框的第一目标类别之间的差异,生成第二损失函数的回归损失项;
根据所述第一标注框的标注位置信息和所述第二预测框的第二位置信息之间的差异,生成所述第二损失函数的分类损失项;
根据所述第一损失函数的所述二维蒸馏损失项和所述三维蒸馏损失项,以及根据所述第二损失函数的所述回归损失项和所述分类损失项,对所述学生检测模型中的模型参数进行调整。
2.根据权利要求1所述的方法,其中,所述采用所述教师检测模型中的第一二维检测网络对所述第一样本图像进行目标检测,以得到所述第一二维检测网络输出的第一检测信息,包括:
采用所述第一二维检测网络中的第一特征提取分支对所述第一样本图像进行特征提取,以得到多个尺度的第一图像特征;
将所述多个尺度的第一图像特征输入所述第一二维检测网络中第一路径聚合分支进行特征融合,以得到所述第一路径聚合分支输出的多个尺度的第二图像特征;
将所述多个第二图像特征输入所述第一二维检测网络中的第一回归分支进行目标的回归预测,以得到所述多个第二图像特征中多个第一特征点所属的第一预测框的第一位置信息;
将所述多个第二图像特征输入所述第一二维检测网络中的第一分类分支进行目标的类别预测,以得到所述多个第一特征点的第一概率分布,其中,所述第一概率分布用于指示对应第一特征点属于多个预测类别的概率。
3.根据权利要求2所述的方法,其中,所述采用所述学生检测模型中的第二二维检测网络对所述第一样本图像进行目标检测,以得到所述第二二维检测网络输出的第三检测信息,包括:
采用所述第二二维检测网络中的第二特征提取分支对所述第一样本图像进行特征提取,以得到多个尺度的第三图像特征;
将所述多个尺度的第三图像特征输入所述第二二维检测网络中第二路径聚合分支进行特征融合,以得到所述第二路径聚合分支输出的多个尺度的第四图像特征;
将所述多个第四图像特征输入所述第二二维检测网络中的第二回归分支进行目标的回归预测,以得到所述多个第四图像特征中多个第二特征点所属的第二预测框的第二位置信息;
将所述多个第四图像特征输入所述第二二维检测网络中的第二分类分支进行目标的类别预测,以得到所述多个第二特征点的第二概率分布,其中,所述第二概率分布用于指示对应第二特征点属于多个预测类别的概率。
4.根据权利要求3所述的方法,其中,所述根据所述第一预测框的第一概率分布和所述第二预测框的第二概率分布,确定分类蒸馏损失值,包括:
根据所述多个第一特征点的第一概率分布和所述多个第二特征点的第二概率分布之间的差异,确定分类蒸馏损失值;
所述根据所述第一预测框的第一位置信息和所述第二预测框的第二位置信息,确定回归蒸馏损失值,包括:
根据所述多个第一特征点所属的第一预测框的第一位置信息和所述多个第二特征点所属的第二预测框的第二位置信息之间的差异,确定回归蒸馏损失值。
5.根据权利要求4所述的方法,其中,所述根据所述多个第一特征点所属的第一预测框的第一位置信息和所述多个第二特征点所属的第二预测框的第二位置信息之间的差异,确定回归蒸馏损失值,包括:
分别将所述多个第一特征点所属的第一预测框的第一位置信息进行离散化处理,以得到所述多个第一特征点所属的第一预测框的离散分布特征;
将所述多个第一特征点所属的第一预测框的离散分布特征输入归一化指数函数softmax函数,以得到所述softmax函数输出的所述多个第一特征点所属的第一预测框的第三概率分布,其中,所述第三概率分布用于指示对应第一预测框的各条边的分布;
分别将所述多个第二特征点所属的第二预测框的第二位置信息进行离散化处理,以得到所述多个第二特征点所属的第二预测框的离散分布特征;
将所述多个第二特征点所属的第二预测框的离散分布特征输入softmax函数,以得到所述softmax函数输出的所述多个第二特征点所属的第二预测框的第四概率分布,其中,所述第四概率分布用于指示对应第二预测框的各条边的分布;
根据所述多个第一特征点所属的第一预测框的第三概率分布和所述多个第二特征点所属的第二预测框的第四概率分布之间的差异,确定所述回归蒸馏损失值。
6.根据权利要求3所述的方法,其中,所述根据所述分类蒸馏损失值和所述回归蒸馏损失值,确定所述第一损失函数的二维蒸馏损失项,包括:
对所述多个第二图像特征ci×hi×wi进行特征映射,以得到多个第一映射特征;其中,i为第二图像特征的序号,wi为所述第二图像特征中的多个宽度分量,hi为所述第二图像特征中多个高度分量,ci为所述第二图像特征中的多个维度分量,所述多个第一映射特征的维度分量匹配;
对所述多个第四图像特征进行特征映射,以得到多个第二映射特征;其中,所述多个第二映射特征的维度分量与所述多个第一映射特征的维度分量匹配;
针对任一第一映射特征,从所述多个第二映射特征中确定与所述第一映射特征尺寸匹配的目标映射特征;
根据所述第一映射特征和所述目标映射特征之间的差异,确定特征蒸馏损失值;
根据所述分类蒸馏损失值、所述回归蒸馏损失值和所述特征蒸馏损失值,确定所述第一损失函数的二维蒸馏损失项。
7.根据权利要求6所述的方法,其中,所述根据所述第一映射特征和所述目标映射特征之间的差异,确定特征蒸馏损失值,包括:
从所述第一映射特征中确定属于前景的第三特征点,并从所述目标映射特征中确定属于前景的第四特征点;
根据所述第三特征点和所述第四特征点之间的差异,确定所述特征蒸馏损失值。
8.根据权利要求7所述的方法,其中,所述从所述第一映射特征中确定属于前景的第三特征点,并从所述目标映射特征中确定属于前景的第四特征点,包括:
判断所述第一样本图像是否具有标注信息;其中,所述标注信息中至少包括第一标注框的标注位置信息;
在所述第一样本图像具有所述标注信息的情况下,根据所述第一标注框的标注位置信息,从所述第一映射特征中确定属于前景的第三特征点,及从所述目标映射特征中确定属于前景的第四特征点;
在所述第一样本图像未具有标注信息的情况下,根据至少一个所述第一预测框的置信度,从所述至少一个第一预测框中确定目标预测框;
根据所述目标预测框的第一位置信息,从所述第一映射特征中确定属于前景的第三特征点,及从所述目标映射特征中确定属于前景的第四特征点。
9.根据权利要求3所述的方法,其中,所述第二检测信息包括第一预测框内目标的第一朝向角、第一深度和第一尺寸中的至少一项,所述第四检测信息包括第二预测框内目标的第二朝向角、第二深度和第二尺寸中的至少一项;
所述根据所述第二检测信息和所述第四检测信息之间的差异,生成所述第一损失函数的三维蒸馏损失项,包括:
根据所述第一朝向角和所述第二朝向角之间的差异,确定姿态蒸馏损失值;
根据所述第一深度和所述第二深度之间的差异,确定距离蒸馏损失值;
根据所述第一尺寸和所述第二尺寸之间的差异,确定尺寸蒸馏损失值;
根据所述姿态蒸馏损失值、所述距离蒸馏损失值和所述尺寸蒸馏损失值中的至少一项,确定所述第一损失函数的三维蒸馏损失项。
10.根据权利要求9所述的方法,其中,所述采用所述教师检测模型中的第一三维检测网络对所述第一样本图像进行目标检测,以得到所述第一三维检测网络输出的第二检测信息,包括:
将所述多个第二图像特征输入所述第一三维检测网络中的第三路径聚合分支进行特征融合,以得到所述第三路径聚合分支输出的多个尺度的第五图像特征;
将所述多个第五图像特征进行尺寸调整,并将调整后的所述多个第五图像特征进行融合,以得到融合图像特征;其中,调整后的所述多个第五图像特征的尺寸匹配;
根据所述第一预测框的第一位置信息,对所述融合图像特征进行池化操作,以得到与所述第一预测框关联的第一目标特征;
采用所述第一三维检测网络中的第一预测分支对所述第一目标特征进行目标姿态预测、目标距离预测和目标尺寸预测,以得到第一朝向角、第一深度和第一尺寸。
11.根据权利要求9所述的方法,其中,所述采用所述学生检测模型中的第二三维检测网络对所述第一样本图像进行目标检测,以得到所述第二三维检测网络输出的第四检测信息,包括:
根据所述多个第四图像特征的维度分量,从所述多个第四图像特征中确定目标图像特征;
根据所述第二预测框的第二位置信息,对所述目标图像特征进行池化操作,以得到与所述第二预测框关联的第二目标特征;
采用所述第二三维检测网络中的第二预测分支对所述第二目标特征进行目标姿态预测、目标距离预测和目标尺寸预测,以得到第二朝向角、第二度和第二尺寸。
12.根据权利要求3-11中任一项所述的方法,其中,所述将所述多个第四图像特征输入所述第二二维检测网络中的第二分类分支进行目标的类别预测,以得到所述多个第二特征点的第二概率分布,包括:
根据所述多个第二特征点所属的第二预测框的第二位置信息,确定任一所述第二预测框内特征点的数量;
在所述数量小于设定阈值的情况下,在所述第二预测框对应的第四图像特征上,以所述第二预测框的中心为圆心,设定半径长度画圆,得到目标圆形区域;
采用所述第二二维检测网络中的第二分类分支对所述目标圆形区域进行目标的类别预测,以得到所述第二预测框内各特征点的第二概率分布。
13.根据权利要求1所述的方法,其中,所述根据所述第一损失函数的所述二维蒸馏损失项和所述三维蒸馏损失项,以及根据所述第二损失函数的所述回归损失项和所述分类损失项,对所述学生检测模型中的模型参数进行调整,包括:
获取第一图像和第二图像,其中,所述第一图像中的目标所属的类别与所述第一标注类别匹配,所述第二图像中的目标所属的类别与所述第一标注类别不匹配;
根据所述第一图像和所述第一样本图像之间的距离,以及所述第二图像和所述第一样本图像之间的距离,确定所述第二损失函数的度量学习损失项;
根据所述第一损失函数的所述二维蒸馏损失项和所述三维蒸馏损失项,以及根据所述第二损失函数的所述回归损失项、所述分类损失项和所述度量学习损失项,对所述学生检测模型中的模型参数进行调整。
14.根据权利要求1所述的方法,其中,所述第一样本图像中还标注有所述第一标注框内目标的第一标注朝向角、第一标注深度和第一标注尺寸;
所述根据所述第一损失函数的所述二维蒸馏损失项和所述三维蒸馏损失项,以及根据所述第二损失函数的所述回归损失项和所述分类损失项,对所述学生检测模型中的模型参数进行调整,包括:
根据所述第一标注朝向角和第二朝向角之间的差异,生成第三损失函数的姿态损失项;
根据所述第一标注深度和第二深度之间的差异,生成所述第三损失函数的距离损失项;
根据所述第一标注尺寸和第二尺寸之间的差异,生成所述第三损失函数的尺寸损失项;
根据所述第一损失函数的所述二维蒸馏损失项和所述三维蒸馏损失项、所述第二损失函数的所述回归损失项和所述分类损失项,以及所述第三损失函数的所述姿态损失项、所述距离损失项和所述尺寸损失项,对所述学生检测模型中的模型参数进行调整。
15.根据权利要求1所述的方法,其中,所述获取预训练的教师检测模型,包括:
获取第二样本图像;其中,所述第二样本图像上标注有第一标注信息和/或第二标注信息;
采用初始的教师检测模型中的第一二维检测网络对所述第二样本图像进行目标检测,以得到第一预测信息;
采用所述初始的教师检测模型中的第一三维检测网络对所述第二样本图像进行目标检测,以得到第二预测信息;
根据所述第一标注信息和所述第一预测信息之间的差异,和/或,根据所述第二标注信息和所述第二预测信息之间的差异,对所述初始的教师检测模型进行训练,以得到预训练的教师检测模型。
16.一种目标检测方法,所述方法包括:
获取待检测图像;
采用经训练的学生检测模型中的第二二维检测网络对所述待检测图像进行目标检测,以得到第一目标检测信息;
采用经训练的学生检测模型中的第二三维检测网络对所述待检测图像进行目标检测,以得到第二目标检测信息;
其中,所述经训练的学生检测模型是采用权利要求1-15中任一所述的方法训练得到的。
17.一种目标检测模型的训练装置,所述装置包括:
获取模块,用于获取预训练的教师检测模型、待训练的学生检测模型和第一样本图像,其中,所述第一样本图像中标注有第一标注框的标注位置信息和所述第一标注框内目标所属的第一标注类别;
第一检测模块,用于采用所述教师检测模型中的第一二维检测网络和第一三维检测网络对所述第一样本图像进行目标检测,以得到所述第一二维检测网络输出的第一检测信息和所述第一三维检测网络输出的第二检测信息,其中,所述第一检测信息包括第一预测框对应的第一位置信息和第一概率分布,所述第一概率分布用于指示所述第一预测框内的目标属于多个预测类别的概率;
第二检测模块,用于采用所述学生检测模型中的第二二维检测网络和第二三维检测网络对所述第一样本图像进行目标检测,以得到所述第二二维检测网络输出的第三检测信息和所述第二三维检测网络输出的第四检测信息,其中,第三检测信息包括第二预测框对应的第二位置信息和第二概率分布,第二概率分布用于指示第二预测框内的目标属于多个预测类别的概率;
训练模块,用于根据所述第一检测信息和所述第三检测信息之间的差异,以及根据所述第二检测信息和所述第四检测信息之间的差异,对所述学生检测模型进行训练;
其中,所述训练模块,用于:
根据所述第一预测框的第一概率分布和所述第二预测框的第二概率分布,确定分类蒸馏损失值;
根据所述第一预测框的第一位置信息和所述第二预测框的第二位置信息,确定回归蒸馏损失值;
根据所述分类蒸馏损失值和所述回归蒸馏损失值,确定第一损失函数的二维蒸馏损失项;
根据所述第二检测信息和所述第四检测信息之间的差异,生成所述第一损失函数的三维蒸馏损失项;
根据所述第二概率分布,确定第二预测框内目标所属的第一目标类别;
根据第一标注框的第一标注类别和所述第二预测框的第一目标类别之间的差异,生成第二损失函数的回归损失项;
根据第一标注框的标注位置信息和第二预测框的第二位置信息之间的差异,生成第二损失函数的分类损失项;
根据所述第一损失函数的二维蒸馏损失项和三维蒸馏损失项,以及根据所述第二损失函数的回归损失项和分类损失项,对所述学生检测模型中的模型参数进行调整。
18.一种目标检测装置,所述装置包括:
获取模块,用于获取待检测图像;
第一预测模块,用于采用经训练的学生检测模型中的第二二维检测网络对所述待检测图像进行目标检测,以得到第一目标检测信息;
第二预测模块,用于采用经训练的学生检测模型中的第二三维检测网络对所述待检测图像进行目标检测,以得到第二目标检测信息;
其中,所述经训练的学生检测模型是采用权利要求17所述的装置训练得到的。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-15中任一项所述的目标检测模型的训练方法,或者,执行权利要求16所述的目标检测方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-15中任一项所述的目标检测模型的训练方法,或者,执行根据权利要求16所述的目标检测方法。
CN202310062206.6A 2023-01-19 2023-01-19 目标检测模型的训练和目标检测方法、装置、设备和介质 Active CN115797736B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310062206.6A CN115797736B (zh) 2023-01-19 2023-01-19 目标检测模型的训练和目标检测方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310062206.6A CN115797736B (zh) 2023-01-19 2023-01-19 目标检测模型的训练和目标检测方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN115797736A CN115797736A (zh) 2023-03-14
CN115797736B true CN115797736B (zh) 2023-05-09

Family

ID=85429777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310062206.6A Active CN115797736B (zh) 2023-01-19 2023-01-19 目标检测模型的训练和目标检测方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN115797736B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116664576B (zh) * 2023-07-31 2023-11-03 厦门微图软件科技有限公司 一种电池外壳焊道的异常检测方法、装置以及设备
CN116758301A (zh) * 2023-08-14 2023-09-15 腾讯科技(深圳)有限公司 一种图像处理方法以及相关设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109784333B (zh) * 2019-01-22 2021-09-28 中国科学院自动化研究所 基于点云带权通道特征的三维目标检测方法及系统
CN113378712B (zh) * 2021-06-10 2023-07-04 北京百度网讯科技有限公司 物体检测模型的训练方法、图像检测方法及其装置
CN113469073B (zh) * 2021-07-06 2024-02-20 西安电子科技大学 一种基于轻量级深度学习的sar图像舰船检测方法及系统
CN113920307A (zh) * 2021-09-29 2022-01-11 北京百度网讯科技有限公司 模型的训练方法、装置、设备、存储介质及图像检测方法
CN115147831A (zh) * 2022-06-30 2022-10-04 北京百度网讯科技有限公司 三维目标检测模型的训练方法和装置
CN115359455A (zh) * 2022-08-22 2022-11-18 西安电子科技大学 一种基于深度学习的轻量级车辆检测方法

Also Published As

Publication number Publication date
CN115797736A (zh) 2023-03-14

Similar Documents

Publication Publication Date Title
US9965719B2 (en) Subcategory-aware convolutional neural networks for object detection
CN115797736B (zh) 目标检测模型的训练和目标检测方法、装置、设备和介质
CN111598164B (zh) 识别目标对象的属性的方法、装置、电子设备和存储介质
CN112906502A (zh) 目标检测模型的训练方法、装置、设备以及存储介质
US20220058818A1 (en) Object-centric three-dimensional auto labeling of point cloud data
CN110348437B (zh) 一种基于弱监督学习与遮挡感知的目标检测方法
US20230041943A1 (en) Method for automatically producing map data, and related apparatus
CN114463603B (zh) 图像检测模型的训练方法、装置、电子设备及存储介质
CN111368634B (zh) 基于神经网络的人头检测方法、系统及存储介质
CN114519853A (zh) 一种基于多模态融合的三维目标检测方法及系统
CN110909656B (zh) 一种雷达与摄像机融合的行人检测方法和系统
CN115100741A (zh) 一种点云行人距离风险检测方法、系统、设备和介质
Zhang et al. PSNet: Perspective-sensitive convolutional network for object detection
CN113724388B (zh) 高精地图的生成方法、装置、设备以及存储介质
Sun et al. IRDCLNet: Instance segmentation of ship images based on interference reduction and dynamic contour learning in foggy scenes
CN112270671B (zh) 图像检测方法、装置、电子设备及存储介质
CN113128564A (zh) 一种基于深度学习的复杂背景下典型目标检测方法及系统
CN115294176B (zh) 一种双光多模型长时间目标跟踪方法、系统及存储介质
CN114429631B (zh) 三维对象检测方法、装置、设备以及存储介质
CN115719436A (zh) 模型训练方法、目标检测方法、装置、设备以及存储介质
CN115205806A (zh) 生成目标检测模型的方法、装置和自动驾驶车辆
CN112069997B (zh) 一种基于DenseHR-Net的无人机自主着陆目标提取方法及装置
CN114998387A (zh) 一种物体距离监测方法、装置、电子设备和存储介质
Shi et al. Anchor Free remote sensing detector based on solving discrete polar coordinate equation
CN114140660A (zh) 一种车辆检测方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant