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

一种对象检测方法、装置、计算机设备和存储介质

文献发布时间:2023-06-19 10:48:02


一种对象检测方法、装置、计算机设备和存储介质

技术领域

本公开涉及计算机视觉技术领域,具体而言,涉及一种对象检测方法、装置、计算机设备和存储介质。

背景技术

目前应用于自动驾驶领域中的单目3D目标检测技术,在固定的相机坐标系下已经具有十分可靠的检测精度,但是,在自动驾驶的实际应用中,受路面的整齐度以及坡度的影响,单目相机的姿态在拍摄行驶过程中的路面图像时将发生改变,进而将引起相机坐标系的改变。

基于已改变的相机坐标系继续对物体进行检测,检测结果的精度将会下降,进而将产生单目3D目标检测的可靠性和精准性降低的问题。

发明内容

本公开实施例至少提供一种对象检测方法、装置、计算机设备和存储介质。

第一方面,本公开实施例提供了一种对象检测方法,包括:

获取目标图像;

基于所述目标图像,确定拍摄所述目标图像的摄像装置在拍摄所述目标图像的过程中的姿态变化信息;

基于所述姿态变化信息对所述目标图像的初始图像特征进行修正,得到所述目标图像的目标图像特征;

基于所述目标图像特征,确定所述目标图像中的对象的位姿信息。

通过拍摄的目标图像获取摄像装置的姿态变化信息,对目标图像的初始图像特征进行修正,从而避免了摄像装置的位姿变化对图像特征的影响,也就是说,得到的各个目标图像特征都在同一位姿下,不再受摄像装置的位姿的影响,继而在利用该目标图像特征进行对象检测时,能够提高对象检测的准确性和可靠性。

在一种可能的实施方式中,所述基于所述目标图像,确定拍摄所述目标图像的摄像装置在拍摄所述目标图像的过程中的姿态变化信息,包括:

基于所述目标图像的初始图像特征,确定所述目标图像中的地平线信息;

基于所述地平线信息,确定所述摄像装置在拍摄所述目标图像的过程中的姿态变化信息。

利用地平线信息能够较为准确地确定摄像装置的姿态变化信息,利用该姿态变化信息能够提高对象检测的准确性。

在一种可能的实施方式中,所述地平线信息包括地平线的位置信息;所述姿态变化信息包括所述摄像装置在水平面上的第一旋转角度信息;

所述基于所述地平线信息,确定所述摄像装置在拍摄所述目标图像的过程中的姿态变化信息,包括:

基于所述地平线的位置信息,确定所述摄像装置的所述第一旋转角度信息。

这样,基于目标图像中地平线的位置信息能够较为准确的确定摄像装置在水平面上的角度变化。

在一种可能的实施方式中,所述地平线信息包括消失点的位置信息;所述姿态变化信息包括所述摄像装置在竖直平面上的第二旋转角度信息;

所述基于所述地平线信息,确定所述摄像装置在拍摄所述目标图像的过程中的姿态变化信息,包括:

基于所述消失点的位置信息,确定所述摄像装置的所述第二旋转角度信息。

这样,基于目标图像中消失点的位置信息,能够较为准确地确定摄像装置在竖直平面上的角度变化。

在一种可能的实施方式中,所述基于所述目标图像特征,确定所述目标图像中的对象的位姿信息,包括:

基于所述目标图像特征,确定所述目标图像中的对象在标定坐标系下的位姿信息;

基于所述标定坐标系和世界坐标系之间的转换关系,确定所述对象在所述世界坐标系中的位姿信息。

这样,基于转换关系,能够较为准确地将目标图像中的对象的位姿信息转换到世界坐标系中,得到对象在世界坐标系中的位姿信息。

在一种可能的实施方式中,所述姿态变化信息利用第一神经网络确定。

在一种可能的实施方式中,所述第一神经网络采用以下步骤训练得到:

获取第一训练样本;所述第一训练样本包括第一样本图像和所述第一样本图像中的标注地平线信息;

将所述第一样本图像输入待训练的第一神经网络,得到预测地平线信息;

基于所述标注地平线信息和所述预测地平线信息,确定第一损失;

利用所述第一损失对所述待训练的第一神经网络进行训练,得到训练完成的第一神经网络。

这样,利用标注地平线信息和预测地平线信息确定的第一损失对第一神经网络进行训练,能够保证训练得到的第一神经网络能够确定较为准确的地平线信息,从而能够得到较为准确的姿态变化信息。

在一种可能的实施方式中,所述目标图像特征利用第二神经网络确定。

在一种可能的实施方式中,所述第二神经网络采用以下步骤训练得到:

获取第二训练样本;所述第二训练样本包括原始图像、校准图像以及拍摄所述原始图像的摄像装置的标注姿态变化信息;所述校准图像对应的摄像装置的姿态为标准姿态;

提取所述原始图像中的图像特征,得到原始图像特征;

基于所述校准图像,确定所述校准图像的图像内容特征;

基于所述原始图像特征、所述图像内容特征和所述标注姿态变化信息,训练所述第二神经网络。

由于图像特征中的图像内容特征,受摄像装置姿态变化影响较大,因此利用标准姿态下的摄像装置对应的校准图像中的图像内容特征,以及摄像装置的标注姿态变化信息等来训练第二神经网络,不仅能够保证训练得到的第二神经网络能够准确的确定摄像装置所发生的姿态变化信息,还能够降低训练所用的数据量,提高训练效率。

在一种可能的实施方式中,所述基于所述原始图像特征、所述图像内容特征和所述标注姿态变化信息,训练所述第二神经网络,包括:

将所述原始图像特征和所述标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

利用所述预测图像特征和所述图像内容特征,确定第二损失;

利用所述第二损失对所述待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

由于修正后的预测图像特征应贴近校准图像的图像内容特征,因此利用预测图像特征与校准图像对应的图像内容特征来确定第二损失,并用第二损失来训练第二神经网络,能够提高第二神经网络对图像特征中的图像内容特征的修正能力,得到与标准姿态相符的图像内容特征,从而能够提高位姿信息的精度。

在一种可能的实施方式中,所述方法还包括:基于所述原始图像,确定所述原始图像的第一风格特征;

所述训练第二神经网络的步骤还包括:

基于所述原始图像特征、所述第一风格特征和所述标注姿态变化信息,训练所述第二神经网络。

这样,能够实现在风格特征上对第二神经网络进行进一步地训练,进而可以提高第二神经网络在风格特征上的预测精度。

在一种可能的实施方式中,所述基于所述原始图像特征、所述第一风格特征和所述标注姿态变化信息,训练所述第二神经网络,包括:

将所述原始图像特征和所述标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

基于所述预测图像特征和所述第一风格特征,确定第三损失;

利用所述第三损失对所述待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

由于图像特征中的第一风格特征,受摄像装置姿态变化影响不大,因此第二神经网络中,修正后的预测图像特征应贴近原始图像的第一风格特征,因此利用预测图像特征与第一风格特征来确定第三损失,并用第三损失来训练第二神经网络,能够保证第二神经网络对图像特征中的第一风格特征不进行较大幅度的调整,保证第二神经网络对第一风格特征的修正精度,从而能够提高位姿信息的精度。

在一种可能的实施方式中,所述方法还包括:基于所述校准图像,确定所述校准图像的第二风格特征;

所述训练第二神经网络的步骤还包括:

基于所述原始图像特征、所述第二风格特征和所述标注姿态变化信息,训练所述第二神经网络。

这样,能够实现在风格特征上对第二神经网络进行训练,进而可以提高第二神经网络在风格特征上的预测精度。

在一种可能的实施方式中,所述基于所述原始图像特征、所述第二风格特征和所述标注姿态变化信息,训练所述第二神经网络,包括:

将所述原始图像特征和所述标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

利用所述预测图像特征和所述第二风格特征,确定第四损失;

利用所述第四损失对所述待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

由于修正后的预测图像特征应贴近校准图像的第二风格特征,因此利用预测图像特征与第二风格特征来确定第四损失,并用第四损失来训练第二神经网络,能够保证第二神经网络对图像特征中的图像风格特征不进行较大幅度的调整,保证第二神经网络对图像风格特征的修正精度,从而能够提高位姿信息的精度。

在一种可能的实施方式中,在确定所述目标图像中的对象的位姿信息之后,还包括:

基于所述对象的位姿信息,控制行驶装置或发出提示信息;所述行驶装置安装有所述摄像装置。

基于对行驶装置的控制,能够实现行驶装置行驶的过程中,准确的规避对象或给出提示信息,以提高自动驾驶以及对象的安全性,或者,通过发出提示信息的方式,对驾驶所述行驶装置的司机提出预警。

第二方面,本公开实施例还提供一种对象检测装置,包括:

获取模块,用于获取目标图像;

第一确定模块,用于基于所述目标图像,确定拍摄所述目标图像的摄像装置在拍摄所述目标图像的过程中的姿态变化信息;

调整模块,用于基于所述姿态变化信息对所述目标图像的初始图像特征进行修正,得到所述目标图像的目标图像特征;

第二确定模块,用于基于所述目标图像特征,确定所述目标图像中的对象的位姿信息。

第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。

第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。

关于上述对象检测装置、计算机设备、及计算机可读存储介质的效果描述参见上述对象检测方法的说明,这里不再赘述。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开实施例所提供的一种对象检测方法的流程图;

图2示出了本公开实施例所提供的一种摄像装置的姿态发生变化时的检测示意图;

图3示出了本公开实施例所提供的一种四个神经网络的执行示意图;

图4示出了本公开实施例所提供的一种训练第一神经网络的方法的流程图;

图5示出了本公开实施例所提供的一种训练第二神经网络的方法的流程图;

图6示出了本公开实施例所提供的一种对待训练的第二神经网络进行训练的示意图;

图7示出了本公开实施例所提供的一种对象检测装置的示意图;

图8示出了本公开实施例所提供的一种计算机设备结构示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

另外,本公开实施例中的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。

在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

经研究发现,目前应用于自动驾驶领域中的单目3D目标检测技术,在固定的相机坐标系下已经具有十分可靠的检测精度,但是,在自动驾驶的实际应用中,受路面的整齐度以及坡度的影响,单目相机的姿态在拍摄行驶过程中的路面图像时将发生改变,进而将引起相机坐标系的改变。基于已改变的相机坐标系继续对物体进行检测,检测结果的精度将会下降,进而将产生单目3D目标检测的可靠性和精准性降低的问题。

基于上述研究,本公开提供了一种对象检测方法、装置、计算机设备和存储介质,通过拍摄的目标图像获取摄像装置的姿态变化信息,对目标图像的初始图像特征进行修正,从而避免了摄像装置的位姿变化对图像特征的影响,也就是说,得到的各个目标图像特征都在同一位姿下,不再受摄像装置的位姿的影响,继而在利用该目标图像特征进行对象检测时,能够提高检测得到的位姿信息的准确性和可靠性。

针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

需要说明的是,本公开实施例中所提到的特定名词包括:

CNN(Convolutional Neural Networks,卷积神经网络)是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种对象检测方法进行详细介绍,本公开实施例所提供的对象检测方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该对象检测方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

下面以执行主体为计算机设备为例对本公开实施例提供的对象检测方法加以说明。

如图1所示,为本公开实施例提供的一种对象检测方法的流程图,可以包括以下步骤:

S101:获取目标图像。

S102:基于目标图像,确定拍摄目标图像的摄像装置在拍摄目标图像的过程中的姿态变化信息。

S103:基于姿态变化信息对目标图像的初始图像特征进行修正,得到目标图像的目标图像特征。

S104:基于目标图像特征,确定目标图像中的对象的位姿信息。

这里,目标图像中的对象可以包括车辆、树木、人体和障碍物等,目标图像可以是在车辆行驶过程中,安装在车辆上的摄像装置拍摄的路面的实时场景图像,并且,该对象检测方法对应的执行主体可以是四个神经网络,分别为骨干神经网络、第一神经网络、第二神经网络和单目3D目标检测网络。

其中,骨干神经网络用于提取目标图像的初始图像特征,第一神经网络用于基于初始图像特征,确定拍摄目标图像的摄像装置的姿态变化信息,第二神经网络用于按照姿态变化信息,对初始图像特征进行修正,得到目标图像的目标图像特征,单目3D目标检测网络用于基于修正得到的目标图像特征确定目标图像中的对象的位姿信息。

具体实施时,为了对本公开实施例进行理解,首先对本公开实施例的所提供的对象检测方法的应用场景进行介绍,在自动驾驶技术领域,车辆在实际行驶过程中,可能会由于路面不平而产生颠簸,造成安装在车辆上的摄像装置拍摄目标图像时的姿态发生变化,或者,由于路面坡度的变化,造成摄像装置拍摄目标图像时的姿态发生变化,进而,将会导致拍摄时的相机坐标系和地面坐标系出现偏差。

对于单目相机而言,摄像装置所在的车辆由于道路的不平整、相机发生松动等原因,发生了外参扰动,基于标定的相机坐标系对目标图像进行对象位姿检测,将会造成检测结果的精度降低的问题,进而,检测结果精度的降低,在自动驾驶过程中可能会造成严重的行驶事故,如图2所示,为本公开实施例所提供的一种摄像装置的姿态发生变化时的检测示意图,其中,i坐标系表示地面坐标系,j坐标系表示相机坐标系,side view为拍摄时的侧面图,Detection target表示目标图像中的对象,Heat map为单目3D目标检测网络输出的热力图,(U

为了解决上述问题,本公开实施了提供了一种对象检测方法,能够基于摄像装置的姿态变化信息对目标图像的特征进行修正,得到符合摄像装置的标准姿态的目标图像特征,然后再基于目标图像特征确定检测结果,这样,能够提升检测结果的精度和可靠性,进而可以提高自动驾驶技术的应用安全性。

具体实施时,首先需要获取摄像装置拍摄的目标图像,其中,摄像装置可以是单目相机,目标图像中包括待检测的对象,对象可以包括一个或多个,每一个对象在目标图像对应的相机坐标系中分别对应于一个位姿信息,例如,位姿信息可以包括对象坐标、对象尺寸和对象朝向角。在获取目标图像之后,可以按照以下步骤确定姿态变化信息:

步骤一、基于目标图像的初始图像特征,确定目标图像中的地平线信息;

步骤二、基于地平线信息,确定摄像装置在拍摄目标图像的过程中的姿态变化信息。

这里,在获取目标图像之后,可以将目标图像输入骨干神经网络,然后骨干神经网络可以提取出目标图像的初始图像特征,其中,初始图像特征可以包括目标图像的内容特征和风格特征,例如,内容特征可以为目标图像中包括的对象的轮廓、边线的位置等,并且与单目相机的拍摄姿态紧密相关,会根据拍摄姿态的变化而变化;风格特征可以为目标图像的纹理、材质信息等,但是受拍摄姿态的影响较小,基本保持不变。

进一步的,可以将获取的初始图像特征输入第一神经网络,其中,第一神经网络已经被训练完成,具有一定的预测精准度,第一神经网络可以对初始图像特征进行处理,确定目标图像中的地平线信息,然后根据确定的地平线信息,可以确定出摄像装置在拍摄目标图像的过程中的姿态变化信息。具体实施时,根据地平线信息确定姿态变化信息的过程可以是第一神经网络进行处理的,也可以是计算机设备基于预设的转化函数确定的,这里不进行限定。

在一种实施方式中,地平线信息可以包括地平线的位置信息;姿态变化信息可以包括摄像装置在水平面上的第一旋转角度信息,基于地平线的位置信息,可以确定摄像装置的第一旋转角度信息。

具体实施时,地平线的位置信息可以由从目标图像中确定的地平线信息中对应的地平线所包括的各个点在图像坐标系下的坐标确定,进而,基于地平线的位置信息,可以确定目标图像中的地平线与标准姿态下的地平线之间第一旋转角度信息,其中,第一旋转角度信息可以为目标图像的地平线在水平面上的翻转角度信息,该翻转角度信息可以准确的反映单目相机在拍摄目标图像时,在水平面上的角度变化信息,即可以反映出在水平面上的姿态变化信息,因此,可以将该翻转角度信息作为摄像装置在水平面上的翻转角度信息,并将该翻转角度信息作为摄像装置在拍摄目标图像的过程中的姿态变化信息。

在另一种实施方式中,为了更好的反映摄像装置的姿态变化信息,地平线信息可以包括消失点的位置信息,相应的,姿态变化信息包括摄像装置在竖直平面上的第二旋转角度信息,进而,可以确定出目标图像中的消失点与标准姿态下的消失点之间第二旋转角度信息。

具体实施时,消失点可以为目标图像对应的地平线上的一点,因此,在获取地平线的位置信息之后,需要确定消失点在地平线上的位置,然后,可以确定该位置在图像坐标系下的坐标信息,并将该坐标信息作为消失点的位置信息,然后基于消失点的位置信息可以确定摄像装置在竖直平面上的第二旋转角度信息,其中第二旋转角度信息能够反应摄像装置的俯仰角度信息,进而可以将第二旋转角度信息作为摄像装置的第二旋转角度信息,并将第二旋转角度信息与第一旋转角度信息一起作为摄像装置的姿态变化信息。这样,基于摄像装置在水平面上和竖直平面上的角度变化信息,确定摄像装置的姿态变化信息,提高了确定的姿态变化信息的准确性。

另外,在基于目标图像确定姿态变化信息的过程中,可以同时使用目标图像中的地平线的位置信息和消失点的位置信息进行确定,也可以只使用一种地平线信息进行确定,这里不进行限定。

进一步的,可以将姿态变化信息输入第二神经网络,第二神经网络基于姿态变化信息对目标图像的初始图像特征进行修正,得到目标图像的目标图像特征,其中,目标图像特征为目标图像在标准姿态下的特征。

具体实施时,以姿态变化信息包括第一旋转角度信息和第二旋转角度信息为例,根据第一旋转角度信息,可以实现对初始图像特征在水平面上的修正,然后根据第二旋转角度信息,可以实现对初始图像特征在竖直平面上的修正,基于此,可以得到目标图像的目标图像特征。

然后,将目标图像特征输入到单目3D目标检测网络,单目3D目标检测网络可以基于目标图像特征对目标图像中的每一个对象进行检测,确定每一个对象在标定坐标系的位姿信息,然后再基于标定坐标系和世界坐标系之间的转换关系,将每一个对象的位姿信息进行转换,确定每一个对象在世界坐标系中的真实位置信息,并将每一个真实位置信息作为每一个对象的位姿信息,并且,具体实施时,输出的位姿信息可以包括对象坐标、对象尺寸和对象朝向角等信息,对象尺寸用于表征对象在现实世界中的大小,对象朝向角用于表征对象在现实世界中的朝向。其中,标定坐标系为摄像装置在标定时的姿态(即标准姿态)下的坐标系。

如图3所示,为本公开实施例所提供的一种四个神经网络的执行示意图,其中,backbone为骨干神经网络,Regression Network为第一神经网络,pose为姿态变化信息,Transfer Network为第二神经网络,Monocular 3D Detection Network为单目3D目标检测网络,3D result为输出的位姿信息。

由于本公开实施例所提供的对象检测方法是由4个不同的神经网络完成的,为了提高该对象检测方法的检测结果的可靠性和精确度,本公开实施例还提供了对部分神经网络进行训练的方法,具体实施时,骨干神经网络和单目3D目标检测网络可以为现有的神经网络,第一神经网络和第二神经网络为本公开实施例所提供的特有的神经网络,需要进行训练才可以达到预期的检测效果,因此,下面分别对第一神经网络和第二神经网络的训练过程进行详细介绍。

如图4所示,为本公开实施例所提供的一种训练第一神经网络的方法的流程图,可以包括以下步骤:

S401:获取第一训练样本。

S402:将第一样本图像输入待训练的第一神经网络,得到预测地平线信息。

S403:基于标注地平线信息和预测地平线信息,确定第一损失。

S404:利用第一损失对待训练的第一神经网络进行训练,得到训练完成的第一神经网络。

这里,第一训练样本包括第一样本图像和第一样本图像中的标注地平线信息,第一样本图像可以为摄像装置在姿态变化时拍摄的图像,预测地平线信息为第一神经网络预测输出的第一样本图像中的地平线信息,标注地平线信息为摄像装置在拍摄第一样本图像的位置处,利用标准姿态拍摄的标准样本图像中的地平线信息。

在获取到第一训练样本之后,首先需要利用骨干神经网络进行处理,得到第一训练样本中的第一样本图像的样本初始特征,其中,样本初始特征可以对应于一个样本初始特征图,即骨干神经网络可以输出一个样本初始特征图,然后将样本初始特征图输入到待训练的第一神经网络,待训练的第一神经网络基于样本初始特征图,可以确定第一样本图像中的地平线信息,其中,地平线信息可以包括预测地平线的位置信息和预测消失点的位置信息,相应的,基于第一样本图像中的标注地平线信息,可以确定标注地平线信息中的标注地平线的位置信息和标注消失点的位置信息,具体实施时,标注地平线信息可以是直接输入的,也可以是将标准样本图像输入到骨干神经网络中,基于骨干神经网络输出的标准样本特征图确定的,关于标注地平线信息的确定方式,这里不进行限定。

之后,可以根据预测地平线的位置信息和预测消失点的位置信息以及对应的标注地平线的位置信息和标注消失点的位置信息,确定第一损失,其中,第一损失可以为构建的第一损失函数的值,然后利用第一损失对待训练的第一神经网络进行训练,可以得到训练完成的第一神经网络,训练完成的第一神经网络可以在应用过程中,输出贴近标注地平线信息的预测地平线信息,即输出准确的预测地平线信息。

具体实施时,可以利用公式一确定预测地平线信息,利用公式二构建第一损失:

其中,

其中,L

另外,待训练的第一神经网络和训练完成的第一神经网络都还可以根据预测地平线的位置信息和预测消失点的位置信息以及对应的标注地平线的位置信息和标注消失点的位置信息,确定摄像装置的预测姿态变化信息。具体实施时,可以利用预测地平线的位置信息和标注地平线的位置信息之间的位置信息偏差,确定地平线在水平面上的翻转角度信息,即确定摄像装置在水平面上的第一旋转角度信息;根据预测消失点的位置信息和标注消失点的位置信息之间的位置信息偏差,确定地平线在竖直平面上的俯仰角度信息,即确定摄像装置在竖直平面上的第二旋转角度信息,进而,基于第一旋转角度信息和第二旋转角度信息,可以确定摄像装置的预测姿态变化信息。

这样,利用标注地平线信息和预测地平线信息确定的第一损失对第一神经网络进行训练,能够保证训练得到的第一神经网络能够确定较为准确的地平线信息,利用该地平线信息,能够得到较为准确的姿态变化信息。

如图5所示,为本公开实施例所提供的一种训练第二神经网络的方法的流程图,可以包括以下步骤:

S501:获取第二训练样本。

S502:提取原始图像中的图像特征,得到原始图像特征。

S503:基于校准图像,确定校准图像的图像内容特征。

S504:基于原始图像特征、图像内容特征和标注姿态变化信息,训练第二神经网络。

这里,第二训练样本包括原始图像、校准图像以及拍摄原始图像的摄像装置的标注姿态变化信息,原始图像为摄像装置在姿态发生变化的情况下拍摄的图像,校准图像对应的摄像装置的姿态为标准姿态,即校准图像为摄像装置在拍摄原始图像的位置处,利用标准姿态拍摄的图像,标注姿态变化信息为利用骨干神经网络和第一神经网络对原始图像进行检测,确定的摄像装置在拍摄原始图像的过程中的姿态变化信息。

在另一种实施方式中,校准图像还可以根据确定的标注姿态变化信息,对原始图像进行修正得到。

具体实施时,在获取第二训练样本之后,可以将其中的原始图像和校准图像输入到骨干神经网络中,利用骨干神经网络提取原始图像中的图像特征,得到原始图像特征,其中,原始图像特征可以包括原始图像对应的图像内容特征和第一风格特征,同时,利用骨干神经网络提取校准图像中校准图像特征,校准图像特征中也包括校准图像对应的图像内容特征和第二风格特征。

在一种可能的实施方式中,可以按照以下步骤训练待训练的第二神经网络:

步骤一、将原始图像特征和标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

步骤二、利用预测图像特征和图像内容特征,确定第二损失;

步骤三、利用第二损失对待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

这里,第二损失为待训练的第二神经网络针对输入的原始图像特征和标注姿态变化信息、输出的预测图像特征和校准图像对应的图像内容特征之间的内容损失L

具体实施时,将获取的原始图像特征对应的原始图像特征图H

这里,如果校准图像是根据确定的标注姿态变化信息,对原始图像进行修正得到,那么在将校准图像输入到骨干神经网络之后,骨干神经网络可以基于原始图像对应的标注姿态变化信息

其中,f

基于此,在确定H

以f

其中,

基于上述公式四可以确定第二损失L

进一步的,为了进一步提高训练完成的第二神经网络输出的预测图像特征的精准度,在确定第二损失L

步骤一、将原始图像特征和标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

步骤二、利用预测图像特征和图像风格特征,确定第三损失;

步骤三、利用第三损失对待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

由于图像风格特征H

在一种实施方式中,在确定第三损失L

其中,c和c′表示同一特征图中的不同channel(通道),

基于公式五可以确定H

其中,其中,

进一步的,可以利用第二损失L

另外,还可以根据第二损失L

由于图像特征中的图像风格特征,受摄像装置姿态变化影响不大,因此第二神经网络中,修正后的预测图像特征应贴近原始图像的原始图像特征,因此利用预测图像特征与原始图像特征的第一风格特征来确定第三损失,并用第三损失来训练第二神经网络,能够保证第二神经网络对图像特征中的图像风格特征不进行较大幅度的调整,保证第二神经网络对图像风格特征的修正精度,从而能够提高位姿信息的精度。

在另一种实施方式中,还可以利用校准图像对应的第二风格特征对第二神经网络进行训练,具体实施时,可以按照利用原始图像的第一风格特征和H

这样,修正后的预测图像特征应贴近校准图像的第二风格特征,因此利用预测图像特征与第二风格特征来确定第四损失,并用第四损失来训练第二神经网络,能够保证第二神经网络对图像特征中的图像风格特征不进行较大幅度的调整,保证第二神经网络对图像风格特征的修正精度,从而能够提高位姿信息的精度。

具体实施时,关于对待训练的第二神经网络进行训练的方式,可以利用第二损失和第三损失对其进行训练,也可以利用第二损失和第四损失对其进行训练,这里不进行限定。

另外,针对对第一神经网络和第二神经网络进行的训练,可以先分别对待训练的第一神经网络进行训练和待训练的第二神经网络进行训练,在待训练的第一神经网络和待训练的第二神经网络都达到预设的收敛值时,再将待训练的第一神经网络和待训练的第二神经网络进行联合训练,得到训练完成的第一神经网络和训练完成的第二神经网络。也可以直接对待训练的第一神经网络和待训练的第二神经网络进行联合训练,得到训练完成的第一神经网络和训练完成的第二神经网络,这里不进行限定。也可以分别对待训练的第一神经网络和待训练的第二神经网络进行训练,得到训练完成的第一神经网络和训练完成的第二神经网络。

如图6所示,为本公开实施例所提供的一种对待训练的第二神经网络,即变换神经网络进行训练的示意图,其中,图像A表示原始图像,图像B表示校准图像,backbone骨干神经网络。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一发明构思,本公开实施例中还提供了与对象检测方法对应的对象检测装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述对象检测方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

如图7所示,为本公开实施例提供的一种对象检测装置的示意图,包括:

获取模块701,用于获取目标图像;

第一确定模块702,用于基于所述目标图像,确定拍摄所述目标图像的摄像装置在拍摄所述目标图像的过程中的姿态变化信息;

调整模块703,用于基于所述姿态变化信息对所述目标图像的初始图像特征进行修正,得到所述目标图像的目标图像特征;

第二确定模块704,用于基于所述目标图像特征,确定所述目标图像中的对象的位姿信息。

在一种可能的实施方式中,所述第一确定模块702,用于基于所述目标图像的初始图像特征,确定所述目标图像中的地平线信息;

基于所述地平线信息,确定所述摄像装置在拍摄所述目标图像的过程中的姿态变化信息。

在一种可能的实施方式中,所述地平线信息包括地平线的位置信息;所述姿态变化信息包括所述摄像装置在水平面上的第一旋转角度信息;

所述第一确定模块702,用于基于所述地平线的位置信息,确定所述摄像装置的所述第一旋转角度信息。

在一种可能的实施方式中,所述地平线信息包括消失点的位置信息;所述姿态变化信息包括所述摄像装置在竖直平面上的第二旋转角度信息;

所述第一确定模块702,用于基于所述消失点的位置信息,确定所述摄像装置的所述第二旋转角度信息。

在一种可能的实施方式中,所述第二确定模块704,用于基于所述目标图像特征,确定所述目标图像中的对象在标定坐标系下的位姿信息;

基于所述标定坐标系和世界坐标系之间的转换关系,确定所述对象在所述世界坐标系中的位姿信息。

在一种可能的实施方式中,所述姿态变化信息利用第一神经网络确定。

在一种可能的实施方式中,所述装置还包括第一训练模块705,用于获取第一训练样本;所述第一训练样本包括第一样本图像和所述第一样本图像中的标注地平线信息;

将所述第一样本图像输入待训练的第一神经网络,得到预测地平线信息;

基于所述标注地平线信息和所述预测地平线信息,确定第一损失;

利用所述第一损失对所述待训练的第一神经网络进行训练,得到训练完成的第一神经网络。

在一种可能的实施方式中,所述目标图像特征利用第二神经网络确定。

在一种可能的实施方式中,所述装置还包括第二训练模块706,用于获取第二训练样本;所述第二训练样本包括原始图像、校准图像以及拍摄所述原始图像的摄像装置的标注姿态变化信息;所述校准图像对应的摄像装置的姿态为标准姿态;

提取所述原始图像中的图像特征,得到原始图像特征;

基于所述校准图像,确定所述校准图像的图像内容特征;

基于所述原始图像特征、所述图像内容特征和所述标注姿态变化信息,训练所述第二神经网络。

在一种可能的实施方式中,所述第二训练模块706,用于将所述原始图像特征和所述标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

利用所述预测图像特征和所述图像内容特征,确定第二损失;

利用所述第二损失对所述待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

在一种可能的实施方式中,所述第二训练模块706,基于所述原始图像,确定所述原始图像的第一风格特征;

基于所述原始图像特征、所述第一风格特征和所述标注姿态变化信息,训练所述第二神经网络。

在一种可能的实施方式中,所述第二训练模块706,用于将所述原始图像特征和所述标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

基于所述预测图像特征和所述第一风格特征,确定第三损失;

利用所述第三损失对所述待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

在一种可能的实施方式中,所述第二训练模块706,还用于基于所述校准图像,确定所述校准图像的第二风格特征;

基于所述原始图像特征、所述第二风格特征和所述标注姿态变化信息,训练所述第二神经网络。

在一种可能的实施方式中,所述第二训练模块706,用于将所述原始图像特征和所述标注姿态变化信息输入待训练的第二神经网络,得到修正后的预测图像特征;

利用所述预测图像特征和所述第二风格特征,确定第四损失;

利用所述第四损失对所述待训练的第二神经网络进行训练,得到训练完成的第二神经网络。

在一种可能的实施方式中,所述装置还包括控制模块707,用于在所述第二确定模块704确定所述目标图像中的对象的位姿信息之后,基于所述对象的位姿信息,控制行驶装置或发出提示信息;所述行驶装置安装有所述摄像装置。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

本公开实施例还提供了一种计算机设备,如图8所示,为本公开实施例提供的一种计算机设备结构示意图,包括:

处理器81和存储器82;所述存储器82存储有处理器81可执行的机器可读指令,处理器81用于执行存储器82中存储的机器可读指令,所述机器可读指令被处理器81执行时,处理器81执行下述步骤:S101:获取目标图像;S102:基于目标图像,确定拍摄目标图像的摄像装置在拍摄目标图像的过程中的姿态变化信息;S103:基于姿态变化信息对目标图像的初始图像特征进行修正,得到目标图像的目标图像特征以及S104:基于目标图像特征,确定目标图像中的对象的位姿信息。或者,处理器81可以执行本公开实施例的任一种对象检测方法的步骤。

上述存储器82包括内存821和外部存储器822;这里的内存821也称内存储器,用于暂时存放处理器81中的运算数据,以及与硬盘等外部存储器822交换的数据,处理器81通过内存821与外部存储器822进行数据交换。

上述指令的具体执行过程可以参考本公开实施例中所述的对象检测方法的步骤,此处不再赘述。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的对象检测方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例所提供对象检测方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的对象检测方法的步骤,具体可参见上述方法实施例,在此不再赘述。

该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

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

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 对象检测模型训练及对象检测方法、装置、计算机设备和存储介质
  • 对象检测方法、装置、计算机可读存储介质和计算机设备
技术分类

06120112684743