位姿估计网络模型的训练方法、位姿估计方法及装置与流程

文档序号:31714361发布日期:2022-10-04 21:05阅读:162来源:国知局
位姿估计网络模型的训练方法、位姿估计方法及装置与流程

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.图1是本公开一示例性实施例提供的相机的位姿估计方法的流程示意图。
29.图2是本公开一示例性实施例提供的位姿估计网络模型的训练方法的流程示意图。
30.图3是本公开图2所示的实施例中步骤202的一流程示意图。
31.图4是本公开图3所示的实施例中步骤2021的一流程示意图。
32.图5是本公开图2所示的实施例中步骤203的一流程示意图。
33.图6是本公开一示例性实施例提供的位姿估计网络模型的训练装置的结构示意图。
34.图7是本公开另一示例性实施例提供的位姿估计网络模型的训练装置的结构示意图。
35.图8是本公开一示例性实施例提供的相机的位姿估计装置的结构示意图。
36.图9是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
37.下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
38.应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
39.本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
40.还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
41.还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
42.另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
43.还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
44.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
45.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
46.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
47.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
48.本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
49.终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
50.申请概述
51.在实现本公开的过程中,发明人发现,现有技术中依赖于深度传感器等硬件设备进行相机姿态的估计,该技术方案至少存在以下问题:对硬件设备有较高的要求,需要深度传感器具有较高的精度。
52.示例性应用
53.图1是本公开一示例性实施例提供的相机的位姿估计方法的流程示意图。如图1所示,本实施例提供的方法可应用在车机端、客户端等电子设备上,包括:
54.步骤101,获取目标图像。
55.其中,目标图像为相机在移动设备的预设位置采集得到。
56.可选地,移动设备可以为车辆等设备,此时,本实施例提供的位姿估计方法可以应用在自动驾驶领域中,为自动驾驶提供三维重建中的相机位姿估计信息;相机可以包括一个或多个相机,当包括多个相机时,每个相机在移动设备上的位置通常不同,例如,其可以为设置在车辆前方的前视相机,或者可以为设置在车辆的周身位置的环视相机;通过多个相机中的每个相机在该相机对应的预设位置上进行图像采集,得到对应该相机的目标图像。
57.步骤102,利用位姿估计网络模型对目标图像进行处理,得到相机相对于地面的至少一个姿态角。
58.其中,姿态角包括俯仰角和/或旋转角。
59.可选地,位姿估计网络模型可基于以下任一实施例提供的训练方法训练得到,或者,位姿估计网络模型可基于相关技术中任意一种适用的训练方法训练得到,使该位姿估计网络模型实现输入为目标图像,输出为该目标图像对应的相机相对于地面的至少一个姿态角。
60.本实施例中,通过位姿估计网络模型实现将目标图像作为输入,直接输出相机相对于地面的俯仰角和/或旋转角,由于计算过程简单,并且仅基于单帧图像实现估计,省去了耗时较长的例如特征点提取等步骤,使位姿估计的速度更快,而基于单帧图像直接预测得到当前时刻的姿态角,克服了基于多帧图像预测时的误差累加问题;并且,本实施例仅基于相机实现,不依赖其他例如深度传感器、惯性传感器等硬件设备,克服了现有技术中估计相机位姿时对硬件设备的依赖问题,节省了成本,降低了部署难度。
61.示例性方法
62.图2是本公开一示例性实施例提供的位姿估计网络模型的训练方法的流程示意图。本实施例可应用在电子设备上,如图2所示,包括如下步骤:
63.步骤201,利用位姿估计网络模型对样本图像进行位姿预测,得到相机的预测姿态角。
64.其中,样本图像为相机在移动设备的预设位置采集得到。
65.本实施例中提供的位姿估计网络模型用于基于图像,确定采集该图像时相机在移动设备的预设位置对应的姿态角,得到预测姿态角,当样本图像的数量为多个时,分别利用位姿估计网络模型进行预测,得到每个样本图像在该样本图像所处的预设位置对应的预测姿态角,其中,每个样本图像对应的预设位置可以相同或不同,例如,多个样本图像为设置在车辆(移动设备的一个示例)上不同预设位置的相机采集得到,或者,多个样本图像为设置在车辆上同一预设位置的相机在多个时刻(不同时刻姿态角可能发生变化)采集得到,又或者,多个样本图像分别为设置在不同车辆上的预设位置的相机采集得到;可选地,预测姿态角可以包括俯仰角和/或旋转角;本实施例中的位姿估计网络模型的网络结构可以与相关技术中的位姿估计网络模型相同或相似,本实施例不限制位姿估计网络模型的具体网络结构。
66.步骤202,基于预测姿态角,确定样本图像对应的预测深度信息。
67.在一实施例中,在得到预测姿态角之后,可将预测姿态角转换为旋转矩阵,结合相机采集样本图像时对应的预测位置,可知相机相对于地面的高度信息,基于该高度信息和上述的旋转矩阵,即可得到样本图像对应的预测深度信息,该样本图像对应的预测深度信息是样本图像中各像素对应的地面、相对于相机的预测深度信息。
68.步骤203,基于样本图像对应的监督深度信息和预测深度信息,确定模型损失。
69.可选地,样本图像的监督深度信息可以通过预设确定,或通过神经网络对样本图像对应的深度图(利用深度传感器获得)进行处理确定,例如,通过语义分割网络确定深度图中表示地面的像素点(将样本图像输入语义分割网络,确定样本图像中表示地面的像素点,结合深度图与样本图像之间的对应关系,从深度图中确定表示地面的像素点),基于表示地面的像素点对应的深度信息确定监督深度信息;通过监督深度信息和预测深度信息之间的差异,确定模型损失,其中,具体可以采用现有技术中任意一种计算网络模型损失的方法确定模型损失。
70.步骤204,基于模型损失,训练位姿估计网络模型。
71.可选地,可基于任意现有神经网络模型的损失训练方法,利用模型损失对位姿估计网络模型进行训练,例如,梯度下降法等;直到达到预设条件时,得到训练后的位姿估计网络模型,可选地,预设条件可以包括但不限于:模型损失小于预设值,训练次数达到预设次数,连续两次确定的模型损失之间的差值小于预设差值等。
72.基于本公开上述实施例提供的一种位姿估计网络模型的训练方法,利用预测深度信息和监督深度信息对位姿估计网络模型进行训练,相对于以位姿信息作为监督信息,本实施例简化了监督信息,提升了网络模型的训练效率,并且,训练后的位姿估计网络模型无需依赖除相机外的其他硬件设备,实现了节省成本和降低部署难度的技术效果。
73.如图3所示,在上述图2所示实施例的基础上,步骤202可包括如下步骤:
74.步骤2021,基于预测姿态角,确定预设位置对应的观察坐标系与样本图像对应的像素坐标系之间的投影矩阵。
75.本实施例中的投影矩阵用于实现将观察坐标系投影到像素坐标系,该投影矩阵可基于预测姿态角确定的旋转矩阵、相机对应的设定位置坐标、相机的内参矩阵,以及表示像素坐标系转换到观察坐标系的方向旋转矩阵确定。
76.此外,上述的地面与观察坐标系的xy平面平行,该观察坐标系包括x轴、y轴和z轴,将移动设备的中心线作为x轴,移动设备移动的方向作为x轴的正向;y轴与x轴垂直,并以向左为正向,y轴与x轴处于与地面平行的同一水平面;z轴与xy平面垂直,并以向上为正向。在一些可选示例中,当移动设备为车辆时,观察坐标系为整车坐标系(vehicle coordinate system),整车坐标系是以车辆的中心线作为x轴,车辆行驶的方向为x轴的正向;y轴与x轴垂直,并以向左为正向,y轴与x轴在同一水平面且与地面平行;z轴与xy平面垂直,并以向上为正向。
77.步骤2022,基于投影矩阵和样本图像中地面像素点的二维坐标信息,确定样本图像中地面像素点对应的预测深度信息。
78.可选地,可通过语义分割网络模型或其他神经网络模型识别样本图像中表示地面的像素点,确定为地面像素点,从样本图像中可得到这些地面像素点在图像坐标系下的二
维坐标信息,基于投影矩阵将地面像素点的二维坐标信息投影到观察坐标系(三维坐标系)中,即可确定每个地面像素点对应的预测深度信息。
79.本实施例中,由于基于监督深度信息作为位姿估计网络模型训练的监督信息,因此,需要与该监督深度信息相对应的预测深度信息,来计算网络损失,而位姿估计网络模型预测的结果是预测姿态角,因此通过本实施例提供的方法,可基于预测姿态角以及坐标系之间的转换,确定预测深度信息,实现了位姿估计网络模型训练过程中的信息对应,简化了监督信息,提升了网络模型的训练效率。
80.如图4所示,在上述图3所示实施例的基础上,步骤2021可包括如下步骤:
81.步骤401,基于预测姿态角,确定相机对应的旋转矩阵。
82.可选地,基于预测姿态角,通过计算将欧拉角转化得到旋转矩阵;例如,预测姿态角包括预测俯仰角pitch和预测旋转角roll,此时航向角yaw由于应用范围较少,在车载情况基本不变化,因此可以设置为0;旋转矩阵是用来描述三维空间中两个不同笛卡尔坐标系之间姿态(不含位置)关系的一个矩阵,在本实施例中,通过旋转矩阵表示相机对应的相机坐标系与世界坐标系之间的姿态变化,例如,可将旋转矩阵表达为
83.其中,旋转矩阵r中的每个元素分别为:
84.r
11
:cos(yaw)cos(pitch);
85.r
12
:cos(yaw)sin(pitch)sin(roll)-cos(roll)sin(yaw);
86.r
13
:sin(yaw)sin(roll)+cos(yaw)cos(roll)sin(pitch);
87.r
21
:cos(pitch)sin(yaw);
88.r
22
:cos(yaw)cos(roll)+sin(yaw)sin(pitch)sin(roll);
89.r
23
:cos(roll)sin(yaw)sin(pitch)-cos(yaw)sin(roll);
90.r
31
:-sin(pitch);
91.r
32
:cos(pitch)sin(roll);
92.r
33
:cos(pitch)cos(roll)。
93.步骤402,基于设定位置,确定相机在观察坐标系中的坐标矩阵。
94.可选地,由于相机采集样本图像时,设定位置为已知位置,因此,该坐标矩阵为已知的,例如,可表达为其中,t
x
,ty,tz分别表示设定位置在观察坐标系中的x轴,y轴,z轴的坐标。
95.步骤403,确定观察坐标系与样本图像对应的像素坐标系之间的方向旋转矩阵。
96.本实施例中,方向旋转矩阵表示观察坐标系与像素坐标系之间的姿态变化,因此,不考虑原点的位置,只对x轴、y轴和z轴的方向进行转换,观察坐标系中的x轴对应相机朝正前方的方向,y轴对应相机向左的方向,z轴对应相机向上的方向;而像素坐标系中x轴对应相机朝右的方向,y轴对应相机向下的方向,z轴对应相机朝正前方的方向;因此,一个可选
示例中,方向旋转矩阵可以表示为:通过该方向旋转矩阵可实现观察坐标系对应的坐标轴方向转换到像素坐标系对应的坐标轴方向。
97.步骤404,基于旋转矩阵、坐标矩阵、方向旋转矩阵和预设相机内参,确定观察坐标系与像素坐标系之间的投影矩阵。
98.本实施例中,在已知预设相机内参(为相机的已知参数)时,可确定该相机对应的内参矩阵,例如,相机内参矩阵表示为其中,fu表示使用像素来描述x轴方向焦距的长度,fv表示使用像素来描述y轴方向焦距的长度,cu和cv表示主点的实际位置,单位是像素。
99.在已知上述旋转矩阵、坐标矩阵、方向旋转矩阵和预设相机内参的前提下,则图像坐标系的点(x,y),及其对应三维坐标(x1,y1,z1)满足以下公式(1):
[0100][0101]
其中,z2为比例系数(可预设取值);kar表示内参矩阵k与方向旋转矩阵a和相机对应的旋转矩阵r依次执行矩阵乘法;kart表示内参矩阵k与方向旋转矩阵a、相机对应的旋转矩阵r以及坐标矩阵t依次执行矩阵乘法;p表示投影矩阵;通过以上公式(1)可确定投影矩阵结合该投影矩阵即可确定图像中的图像坐标点(例如,地面坐标点等)对应的深度值,可选地,本实施例中以x1表示图像坐标为x,y的图像坐标点对应的预测深度值,考虑地面坐标点的高度为0,因此z1=0,等效为投影矩阵p去掉第三列,同时考虑投影矩阵p中的第四行等,那么可以去掉投影矩阵p去掉第三列和第四行,得到大小为3x3的矩阵p0,对p0的求逆,可得到如下公式(2):
[0102][0103]
即可以得到图像坐标系点(x,y)对应的深度x1。
[0104]
可选地,在上述实施例的基础上,步骤401还可以包括:
[0105]
基于预测俯仰角和预测旋转角,确定相机对应的旋转矩阵。
[0106]
其中,预测姿态角包括预测俯仰角和预测旋转角。
[0107]
本实施例中,在移动设备移动过程中,例如,车辆行驶过程中,航向角yaw由于应用范围较少,在车载情况基本不变化,因此可以设置为0;因此,可将上述实施例中提供的旋转矩阵中的航向角yaw置为0,得到旋转矩阵
通过简化的旋转矩阵可以更快速的确定观察坐标系与像素坐标系之间的投影矩阵,提升确定投影矩阵的计算效率。
[0108]
可选地,在上述图3所示的实施例的基础上,在执行步骤2022之前,还可以包括:
[0109]
对样本图像进行语义分割,确定样本图像中包括的地面像素点。
[0110]
可选地,可基于语义分割网络模型对样本图像进行语义分割,将样本图像中对应不同语义类别(具体包括哪些语义类别可以根据预设确定,预设确定多个语义类别之后,根据这些类别对语义分割网络模型进行训练,使训练后的语义分割网络模型能够很好的实现对图像中这些语义类别进行分割)的像素点分割为不同部分,例如,将语义为“地面”的所有像素点聚合为一个集合,将该集合中的像素点作为地面像素点;本实施例中通过分割确定样本图像中对应地面语义的像素点,由于确定的地面像素点的高度为0,即可实现在步骤2022中结合投影矩阵确定地面像素点在观察坐标系中的预测深度信息,以实现基于预测姿态角确定与监督深度信息对应的预测深度信息,进而确定模型损失。
[0111]
如图5所示,在上述图2所示实施例的基础上,步骤203可包括如下步骤:
[0112]
步骤2031,基于样本图像的语义分割结果和样本图像对应的深度图,确定三维图像中的参考地面像素点。
[0113]
可选地,可通过深度传感器(例如,深度相机等)获得样本图像对应的深度图,该深度图的获得过程可包括:通过深度传感器在获得样本图像的相机对应的预设位置,在采集样本图像的同时,采集图像内容与样本图像中完全相同的具有深度信息的深度图,即深度图中的每个像素点与样本图像中的每个像素点一一对应;可选地,可直接利用上述实施例中步骤202对样本图像进行语义分割得到的语义分割结果确定样本图像中的地面像素点,以确定的地面像素点以及样本图像与深度图之间的像素对应关系,可确定三维图像中的语义为地面的参考地面像素点;或者,可基于语义分割网络模型对样本图像进行语义分割,将样本图像中对应不同语义类别(具体包括哪些语义类别可以根据预设确定,预设确定多个语义类别之后,根据这些类别对语义分割网络模型进行训练,使训练后的语义分割网络模型能够很好的实现对样本图像中这些语义类别进行分割)的像素点分割为不同部分,例如,将语义为“地面”的所有像素点聚合为一个集合,基于该集合,以及样本图像与深度图之间的像素对应关系,可确定三维图像中的语义为地面的参考地面像素点。
[0114]
步骤2032,基于参考地面像素点对应的深度信息,确定监督深度信息。
[0115]
本实施例中,由于深度图中的每个像素点均具有深度信息,因此,在基于样本图像的语义分割结果确定深度图中的参考地面像素点之后,可基于深度图的深度信息,确定参考地面像素点对应的监督深度信息。
[0116]
步骤2033,基于监督深度信息和预测深度信息,确定模型损失。
[0117]
由于深度图与样本图像中的像素点一一对应,因此,参考地面像素点与样本图像中的地面像素点也一一对应,可知,监督深度信息与预测深度信息一一对应,此时通过样本图像对应的预测深度信息与监督深度信息之间的差异即可确定模型损失,基于该模型损失对位姿估计网络模型进行训练,实现了基于深度信息作为监督的位姿估计网络模型的网络
训练,由于是基于深度信息确定的模型损失,克服了直接通过姿态角作为监督信息时,由于姿态角较难获取,并且,在移动设备移动过程中,姿态角会随着移动发生变化,因此导致无法准确获得监督信息的问题;本实施例通过对位姿估计网络模型预测的预测姿态角经过处理得到预测深度信息,结合仅依赖于深度传感器确定的监督深度信息确定的模型损失,不依赖其他例如深度传感器、惯性传感器等硬件设备,可以节省成本,降低部署难度。
[0118]
本公开实施例提供的任一种位姿估计网络模型的训练及位姿估计方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:终端设备和服务器等。或者,本公开实施例提供的任一种位姿估计网络模型的训练及位姿估计方法可以由处理器执行,如处理器通过调用存储器存储的相应指令来执行本公开实施例提及的任一种位姿估计网络模型的训练及位姿估计方法。下文不再赘述。
[0119]
示例性装置
[0120]
图6是本公开一示例性实施例提供的位姿估计网络模型的训练装置的结构示意图。如图6所示,本实施例提供的装置包括:
[0121]
位姿估计模块61,用于利用位姿估计网络模型对样本图像进行位姿预测,得到相机的预测姿态角;其中,所述样本图像为相机在移动设备的预设位置采集得到;
[0122]
深度预测模块62,用于基于所述位姿估计模块61确定的所述预测姿态角,确定所述样本图像对应的预测深度信息;
[0123]
损失确定模块63,用于基于所述样本图像对应的监督深度信息和所述深度预测模块62确定的所述预测深度信息,确定模型损失;
[0124]
模型训练模块64,基于所述损失确定模块63确定的所述模型损失,训练所述位姿估计网络模型。
[0125]
基于本公开上述实施例提供的一种位姿估计网络模型的训练装置,利用预测深度信息和监督深度信息对位姿估计网络模型进行训练,简化了监督信息,提升了网络模型的训练效率,并且,训练后的位姿估计网络模型无需依赖除相机外的其他硬件设备,实现了节省成本和降低部署难度的技术效果。
[0126]
图7是本公开另一示例性实施例提供的位姿估计网络模型的训练装置的结构示意图。如图7所示,本实施例提供的装置包括:
[0127]
深度预测模块62,包括:
[0128]
投影矩阵确定单元621,用于基于所述预测姿态角,确定所述预设位置对应的观察坐标系与所述样本图像对应的像素坐标系之间的投影矩阵;
[0129]
地面深度预测单元622,用于基于所述投影矩阵和所述样本图像中地面像素点的二维坐标信息,确定所述样本图像中地面像素点对应的预测深度信息。
[0130]
可选地,投影矩阵确定单元621,具体用于基于所述预测姿态角,确定所述相机对应的旋转矩阵;基于所述设定位置,确定所述相机在所述观察坐标系中的坐标矩阵;确定所述观察坐标系与所述样本图像对应的像素坐标系之间的方向旋转矩阵;基于所述旋转矩阵、所述坐标矩阵、所述方向旋转矩阵和预设相机内参,确定所述观察坐标系与所述像素坐标系之间的投影矩阵。
[0131]
投影矩阵确定单元621在基于所述预测姿态角,确定所述相机对应的旋转矩阵时,用于基于所述预测俯仰角和所述预测旋转角,确定所述相机对应的所述旋转矩阵;其中,所
述预测姿态角包括预测俯仰角和预测旋转角。
[0132]
深度预测模块62,还包括:
[0133]
语义分割单元623,用于对所述样本图像进行语义分割,确定所述样本图像中包括的地面像素点。
[0134]
在一些可选的实施例中,损失确定模块63,包括:
[0135]
深度图分割单元631,用于基于所述样本图像的语义分割结果和样本图像对应的深度图,确定所述三维图像中的参考地面像素点;
[0136]
监督信息确定单元632,用于基于所述参考地面像素点对应的深度信息,确定所述监督深度信息;
[0137]
模型损失单元633,用于基于所述监督深度信息和所述预测深度信息,确定所述模型损失。
[0138]
图8是本公开一示例性实施例提供的相机的位姿估计装置的结构示意图。如图8所示,本实施例提供的装置包括:
[0139]
图像获取模块81,用于获取目标图像。
[0140]
其中,目标图像为相机在移动设备的预设位置采集得到。
[0141]
姿态角估计模块82,用于利用位姿估计网络模型对图像获取模块81得到的目标图像进行处理,得到相机相对于地面的至少一个姿态角。
[0142]
本实施例中,通过位姿估计网络模型实现将目标图像作为输入,直接输出相机相对于地面的俯仰角和/或旋转角,由于计算过程简单,并且仅基于单帧图像实现估计,省去了耗时较长的例如特征点提取等步骤,使位姿估计的速度更快,并且单帧图像直接预测得到当前时刻的姿态角,克服了基于多帧图像预测时的误差累加问题;并且,本实施例仅基于相机实现,不依赖其他例如深度传感器、惯性传感器等硬件设备,克服了现有技术中估计相机位姿时对硬件设备的依赖问题,并且节省了成本,降低了部署难度。
[0143]
示例性电子设备
[0144]
下面,参考图9来描述根据本公开实施例的电子设备。该电子设备可以是第一设备100和第二设备200中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
[0145]
图9图示了根据本公开实施例的电子设备的框图。
[0146]
如图9所示,电子设备90包括一个或多个处理器91和存储器92。
[0147]
处理器91可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备90中的其他组件以执行期望的功能。
[0148]
存储器92可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器91可以运行所述程序指令,以实现上文所述的本公开的各个实施例的位姿估计网络模型的训练方法及位姿估计方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
[0149]
在一个示例中,电子设备90还可以包括:输入装置93和输出装置94,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
[0150]
例如,在该电子设备是第一设备100或第二设备200时,该输入装置93可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置93可以是通信网络连接器,用于从第一设备100和第二设备200接收所采集的输入信号。
[0151]
此外,该输入装置93还可以包括例如键盘、鼠标等等。
[0152]
该输出装置94可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置94可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
[0153]
当然,为了简化,图9中仅示出了该电子设备90中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备90还可以包括任何其他适当的组件。
[0154]
示例性计算机程序产品和计算机可读存储介质
[0155]
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的位姿估计网络模型的训练方法及位姿估计方法中的步骤。
[0156]
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
[0157]
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的位姿估计网络模型的训练方法及位姿估计方法中的步骤。
[0158]
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0159]
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
[0160]
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到
的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0161]
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
[0162]
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0163]
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1