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

道路三维重建方法、装置、存储介质及电子设备

文献发布时间:2023-06-19 11:57:35


道路三维重建方法、装置、存储介质及电子设备

技术领域

本公开涉及计算机技术领域,具体地,涉及一种道路三维重建方法、装置、存储介质及电子设备。

背景技术

目前,在自动驾驶场景中,需要对车辆周边的道路环境进行三维重建。一般来说,用于道路环境三维重建的方式主要有两类,一类是基于车载激光雷达的三维点云和RTK定位系统进行三维环境的重建,另一类则是基于车载相机的图像特征点的三维重建。其中,图像三维重建技术分为稀疏重建和稠密重建两个阶段,稀疏重建用于负责相机位姿的恢复,稠密重建则会把图像中所有的像

发明内容

本公开的目的是提供一种道路三维重建方法、装置、存储介质及电子设备,以提升道路三维重建的鲁棒性和成功率。

为了实现上述目的,根据本公开的第一方面,提供一种道路三维重建方法,所述方法包括:

获取目标路段对应的多个关键帧图像,所述关键帧图像取自经过所述目标路段的车辆在所述目标路段行驶期间所拍摄的视频;

根据所述多个关键帧图像,对所述目标路段进行稀疏重建,以获得拍摄各个所述关键帧图像的相机位姿信息;

对每一所述关键帧图像进行路面区域提取处理,获得各个关键帧图像对应的路面图像;

根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,以获得所述目标路段的路面三维重建结果。

可选地,所述多个关键帧图像通过如下方式获得:

获取与所述目标路段对应的行车视频,所述行车视频是经过所述目标路段的车辆在所述目标路段行驶期间拍摄的;

对所述行车视频进行抽帧处理,获得多帧备选图像;

确定每一所述备选图像对应的车道信息;

根据各个所述备选图像对应的车道信息,从所述备选图像中筛选出多个关键帧图像,以使所述多个关键帧图像覆盖所述目标路段的所有车道。

可选地,所述行车视频中每一帧图像携带有拍摄位置信息和行车角度信息,其中,拍摄位置信息为拍摄该图像时车辆所在的位置,行车角度信息为拍摄该图像时车辆的行车角度;

所述对所述行车视频进行抽帧处理,获得多帧备选图像,包括:

按照预设的抽帧频率从所述行车视频中抽取多帧第一图像;

根据所述第一图像的拍摄位置信息和行车角度信息,从多帧第一图像中抽取多帧备选图像。

可选地,所述根据所述第一图像的拍摄位置信息和行车角度信息,从多帧第一图像中抽取多帧备选图像,包括:

若所述第一图像中存在满足以下条件中的任意一者的目标图像,将所述目标图像抽取为备选图像:

拍摄目标图像时车辆所在的位置相比于拍摄已抽取的备选图像时车辆所在的位置变化指定距离;

拍摄目标图像时车辆的行车角度相比于拍摄已抽取的备选图像时车辆的行车角度变化指定角度。

可选地,所述确定每一所述备选图像对应的车道信息,包括:

针对每一所述备选图像,利用车道识别模型,确定该备选图像对应的车道信息,其中,所述车道识别模型通过深度学习训练得到。

可选地,所述根据各个所述备选图像对应的车道信息,从所述备选图像中筛选出多个关键帧图像,以使所述多个关键帧图像覆盖所述目标路段的所有车道,包括:

分别将所述目标路段包含的每一车道作为目标车道,并执行如下操作:

根据每一所述备选图像对应的车道信息,从所述备选图像中筛选出至少一个目标备选图像,作为对应于所述目标车道的关键帧图像,其中,目标备选图像为车道信息与所述目标车道的车道信息相符合的备选图像。

可选地,所述目标车道的关键帧图像数量为2。

可选地,所述根据所述多个关键帧图像,对所述目标路段进行稀疏重建,以获得拍摄各个所述关键帧图像的相机位姿信息,包括:

对每一所述关键帧图像进行动态对象擦除处理,获得各个关键帧图像对应的第二图像;

对每一所述第二图像进行sift特征提取,获得每一第二图像的sift特征提取结果;

根据所述第二图像的sift特征提取结果,对第二图像进行特征匹配,以获得多个第二图像之间的特征匹配结果;

基于所述特征匹配结果进行稀疏重建。

可选地,所述根据所述第二图像的sift特征提取结果,对第二图像进行特征匹配,以获得多个第二图像之间的特征匹配结果,包括:

按照预设条件,将各个第二图像归类到不同分组,以获得多组图像集;

分别对每一组图像集进行特征匹配,得到每一组图像集对应的特征匹配结果,以获得多个第二图像之间的特征匹配结果。

可选地,所述预设条件为:

同一图像集内的第二图像均来自同一行车视频;或者,

同一图像集内的第二图像的位置均处于预设范围内。

可选地,所述根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,以获得所述目标路段的路面三维重建结果,包括:

根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,获得所述目标路段的路面稠密点云;

根据所述路面稠密点云,利用平面拟合技术,确定所述目标路段的第一路面重建结果;

根据所述相机位姿信息,确定所述目标路段的第二路面重建结果;

根据所述第一路面重建结果和所述第二路面重建结果,获得所述路面三维重建结果。

可选地,所述根据所述路面稠密点云,利用平面拟合技术,确定所述目标路段的第一路面重建结果,包括:

对所述路面稠密点云进行ransac平面拟合,得到所述目标路段的地面方程和第一地面法向量,作为所述第一路面重建结果。

可选地,所述根据所述相机位姿信息,确定所述目标路段的第二路面重建结果,包括:

根据所述相机位姿信息和相机距离地面的高度,确定所述目标路段的第二地面法向量,作为所述第二路面重建结果。

可选地,所述第一路面重建结果包括地面方程和第一地面法向量,所述第二路面重建结果包括第二地面法向量;

所述根据所述第一路面重建结果和所述第二路面重建结果,获得所述路面三维重建结果,包括:

将所述第一地面法向量和所述第二地面法向量中的一者确定为目标地面法向量;

将所述地面方程和所述目标地面法向量确定为所述路面三维重建结果。

可选地,所述将所述第一地面法向量和所述第二地面法向量中的一者确定为目标地面法向量,包括:

确定所述第一地面法向量和所述第二地面法向量之间的角度差值;

若所述角度差值小于预设阈值,将所述第一地面法向量确定为所述目标地面法向量;

若所述角度差值大于所述预设阈值,将所述第二地面法向量确定为所述目标地面法向量。

根据本公开的第二方面,提供一种道路三维重建装置,所述装置包括:

第一获取模块,用于获取目标路段对应的多个关键帧图像,所述关键帧图像取自经过所述目标路段的车辆在所述目标路段行驶期间所拍摄的视频;

稀疏重建模块,用于根据所述多个关键帧图像,对所述目标路段进行稀疏重建,以获得拍摄各个所述关键帧图像的相机位姿信息;

路面提取模块,用于对每一所述关键帧图像进行路面区域提取处理,获得各个关键帧图像对应的路面图像;

稠密重建模块,用于根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,以获得所述目标路段的路面三维重建结果。

可选地,所述装置通过如下模块获得所述多个关键帧图像:

第二获取模块,用于获取与所述目标路段对应的行车视频,所述行车视频是经过所述目标路段的车辆在所述目标路段行驶期间拍摄的;

抽帧模块,用于对所述行车视频进行抽帧处理,获得多帧备选图像;

确定模块,用于确定每一所述备选图像对应的车道信息;

筛选模块,用于根据各个所述备选图像对应的车道信息,从所述备选图像中筛选出多个关键帧图像,以使所述多个关键帧图像覆盖所述目标路段的所有车道。

可选地,所述行车视频中每一帧图像携带有拍摄位置信息和行车角度信息,其中,拍摄位置信息为拍摄该图像时车辆所在的位置,行车角度信息为拍摄该图像时车辆的行车角度;

所述抽帧模块,包括:

第一抽取子模块,用于按照预设的抽帧频率从所述行车视频中抽取多帧第一图像;

第二抽取子模块,用于根据所述第一图像的拍摄位置信息和行车角度信息,从多帧第一图像中抽取多帧备选图像。

可选地,所述第二抽取子模块用于若所述第一图像中存在满足以下条件中的任意一者的目标图像,将所述目标图像抽取为备选图像:

拍摄目标图像时车辆所在的位置相比于拍摄已抽取的备选图像时车辆所在的位置变化指定距离;

拍摄目标图像时车辆的行车角度相比于拍摄已抽取的备选图像时车辆的行车角度变化指定角度。

可选地,所述确定模块用于针对每一所述备选图像,利用车道识别模型,确定该备选图像对应的车道信息,其中,所述车道识别模型通过深度学习训练得到。

可选地,所述筛选模块用于分别将所述目标路段包含的每一车道作为目标车道,并执行如下操作:

根据每一所述备选图像对应的车道信息,从所述备选图像中筛选出至少一个目标备选图像,作为对应于所述目标车道的关键帧图像,其中,目标备选图像为车道信息与所述目标车道的车道信息相符合的备选图像。

可选地,所述目标车道的关键帧图像数量为2。

可选地,所述稀疏重建模块,包括:

动态擦除子模块,用于对每一所述关键帧图像进行动态对象擦除处理,获得各个关键帧图像对应的第二图像;

特征提取子模块,用于对每一所述第二图像进行sift特征提取,获得每一第二图像的sift特征提取结果;

特征匹配子模块,用于根据所述第二图像的sift特征提取结果,对第二图像进行特征匹配,以获得多个第二图像之间的特征匹配结果;

稀疏重建子模块,用于基于所述特征匹配结果进行稀疏重建。

可选地,所述特征匹配子模块用于:

按照预设条件,将各个第二图像归类到不同分组,以获得多组图像集;分别对每一组图像集进行特征匹配,得到每一组图像集对应的特征匹配结果,以获得多个第二图像之间的特征匹配结果。

可选地,所述预设条件为:

同一图像集内的第二图像均来自同一行车视频;或者,

同一图像集内的第二图像的位置均处于预设范围内。

可选地,所述稠密重建模块,包括:

稠密重建子模块,用于根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,获得所述目标路段的路面稠密点云;

第一路面重建子模块,用于根据所述路面稠密点云,利用平面拟合技术,确定所述目标路段的第一路面重建结果;

第二路面重建子模块,用于根据所述相机位姿信息,确定所述目标路段的第二路面重建结果;

结果确定子模块,用于根据所述第一路面重建结果和所述第二路面重建结果,获得所述路面三维重建结果。

可选地,所述第一路面重建子模块用于对所述路面稠密点云进行ransac平面拟合,得到所述目标路段的地面方程和第一地面法向量,作为所述第一路面重建结果。

可选地,所述第二路面重建子模块用于根据所述相机位姿信息和相机距离地面的高度,确定所述目标路段的第二地面法向量,作为所述第二路面重建结果。

可选地,所述第一路面重建结果包括地面方程和第一地面法向量,所述第二路面重建结果包括第二地面法向量;

所述结果确定子模块,包括:

第一确定子模块,用于将所述第一地面法向量和所述第二地面法向量中的一者确定为目标地面法向量;

第二确定子模块,用于将所述地面方程和所述目标地面法向量确定为所述路面三维重建结果。

可选地,所述第一确定子模块用于:

确定所述第一地面法向量和所述第二地面法向量之间的角度差值;若所述角度差值小于预设阈值,将所述第一地面法向量确定为所述目标地面法向量;若所述角度差值大于所述预设阈值,将所述第二地面法向量确定为所述目标地面法向量。

根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。

根据本公开的第四方面,提供一种电子设备,包括:

存储器,其上存储有计算机程序;

处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。

通过上述技术方案,获取目标路段对应的多个关键帧图像,根据多个关键帧图像对目标路段进行稀疏重建,以获得拍摄各个关键帧图像的相机位姿信息,之后,对每一关键帧图像进行路面区域提取处理,获得各个关键帧图像对应的路面图像,并根据相机位姿和路面图像对目标路段进行稠密重建,以获得目标路段的路面三维重建结果。由此,针对目标路段选取合适的关键帧图像,有利于提升后续三维重建的成功率,并且,提取出关键帧图像中的路面区域,并结合稀疏重建还原出的相机位姿信息进行稠密重建,从而仅需重建路面区域的稠密点云,并且能够有效提升三维重建的鲁棒性和成功率。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据本公开的一种实施方式提供的道路三维重建方法的流程图;

图2是根据本公开提供的道路三维重建方法中,获得关键帧图像的示例性的流程图;

图3是根据本公开提供的道路三维重建方法中,对目标路段进行稀疏重建的步骤的示例性的流程图;

图4是根据本公开提供的道路三维重建方法中,对目标路段进行稠密重建的步骤的示例性的流程图;

图5是根据本公开提供的道路三维重建方法中,获得路面三维重建结果的步骤的示例性的流程图;

图6是根据本公开的一种实施方式提供的道路三维重建装置的框图;

图7是根据一示例性实施例示出的一种电子设备的框图;

图8是根据一示例性实施例示出的一种电子设备的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

图1是根据本公开的一种实施方式提供的道路三维重建方法的流程图。如图1所示,该方法可以包括步骤11~步骤14。

在步骤11中,获取目标路段对应的多个关键帧图像。

其中,关键帧图像取自经过目标路段的车辆在目标路段行驶期间所拍摄的视频,也就是经过目标路段的车辆在目标路段行驶期间拍摄的行车视频。行车视频一般由安装于车辆的图像采集设备进行拍摄,示例地,图像采集设备可以为行车记录仪。

在本公开中,可以根据卫星图选取需进行三维重建的路段link作为目标路段,其中,link指一段道路,它是导航系统中道路模型的基本单位。

在一种可能的实施例中,如图2所示,目标路段对应的多个关键帧图像可以通过如下步骤21~步骤24获得。

在步骤21中,获取与目标路段对应的行车视频。

其中,如上文所述,行车视频就是经过目标路段的车辆在目标路段行驶期间拍摄的视频。目标路段对应的行车视频为车辆在目标路段行驶期间所拍摄到的景象,它能够反映在不同拍摄位置的目标路段的图像内容。

示例地,目标路段对应有位置信息,行车视频对应有拍摄位置信息,也就是拍摄行车视频时车辆所在的位置,从而,可以从已有的行车视频中查找拍摄位置信息与目标路段的位置信息相符合的行车视频,并将查找到的视频作为与目标路段对应的行车视频。

在步骤22中,对行车视频进行抽帧处理,获得多帧备选图像。

车辆行驶过程中,在拍摄行车视频的同时,车辆也在实时地进行定位,并不断地获取行车参数,因此,行车视频中的每一帧图像均携带有拍摄位置信息和行车角度信息。其中,图像的拍摄位置信息为拍摄该图像时车辆所在的位置,图像的行车角度信息为拍摄该图像时车辆的行车角度。示例地,行车角度信息可以为车辆的方向盘转角。

在一种可能的实施例中,步骤22可以包括以下步骤:

按照预设的抽帧频率从行车视频中抽取多帧图像作为备选图像。

示例地,预设的抽帧频率可以为5hz。也就是说,按照行车视频内各帧图像的先后顺序,按照预设的抽帧频率从中抽取图像,作为备选图像,这样能够十分迅速地获得备选图像。

在另一种可能的实施例中,步骤22可以包括以下步骤:

按照预设的抽帧频率从行车视频中抽取多帧第一图像;

根据第一图像的拍摄位置信息和行车角度信息,从多帧第一图像中抽取多帧备选图像。

示例地,预设的抽帧频率可以为5hz。

由于行车视频有多个,且每个行车视频本身包含较多帧图像,因此按照预设的抽帧频率从行车视频中抽取第一图像后,第一图像的数量也是很多的,为了提升后续的数据处理速度,可以基于第一图像进一步进行抽取,以减少备选图像的总数量。

示例地,若第一图像中存在满足以下条件中的任意一者的目标图像,可以将该目标图像抽取为备选图像:

位置相比于已抽取的备选图像变化指定距离;

行车角度相比于已抽取的备选图像变化指定角度。

针对多个第一图像,初始情况下,可以从其中选择一者或几者作为备选图像,之后,根据其他第一图像被拍摄时车辆所在的位置相比于备选图像被拍摄时车辆所在的位置,或者,根据其他第一图像被拍摄时车辆的行车角度相比于备选图像被拍摄时车辆的行车角度,从剩余的第一图像中抽取出备选图像。抽取原则是,若某个第一图像被拍摄时车辆所在的位置相比于已抽取的备选图像被拍摄时车辆所在的位置变化指定距离,就将该第一图像抽取为备选图像,或者,若某个第一图像被拍摄时车辆的行车角度相比于已抽取的备选图像被拍摄时车辆的行车角度变化指定角度,就将该第一图像抽取为备选图像。示例地,指定距离可以为5米。再例如,指定角度可以为1度。

通过上述方式,结合拍摄位置信息和行车角度信息,能够筛选出具有足够多信息量的备选图像,有利于后续数据处理的成功率,同时,能够有效减少备选图像的数量,有利于后续数据处理的效率。

在步骤23中,确定每一备选图像对应的车道信息。

在一种可能的实施方式中,步骤23可以包括以下步骤:

针对每一备选图像,利用车道识别模型,确定该备选图像对应的车道信息。

其中,车道识别模型通过深度学习训练得到。在训练车道识别模型的过程中,可以收集目标路段中各车道的图像,并对每一图像对应的车道进行标注,从而,基于目标路段中各车道的图像和标注信息,利用深度学习训练出车道识别模型,训练得到的车道识别模型具有识别车道的能力。从而,针对给定的图像,车道识别模型能够识别出该图像对应的车道。

在步骤24中,根据各个备选图像对应的车道信息,从备选图像中筛选出多个关键帧图像,以使多个关键帧图像覆盖目标路段的所有车道。

在一种可能的实施方式中,步骤24可以分别将目标路段包含的每一车道作为目标车道,并执行如下操作:

根据每一备选图像对应的车道信息,从备选图像中筛选出至少一个目标备选图像,作为对应于目标车道的关键帧图像。

其中,目标备选图像为车道信息与目标车道的车道信息相符合的备选图像。也就是说,针对目标路段中包含的每一车道,分别从备选图像中筛选出若干数量的目标备选图像,作为对应于该车道的关键帧图像。这样,针对目标路段筛选出的关键帧图像能够覆盖目标路段的所有车道,有利于提升后续的路面重建的成功率。

示例地,在选取目标车道的关键帧图像时,可以根据每一备选图像对应的车道信息,从备选图像中筛选出两个目标备选图像,作为对应于目标车道的关键帧图像。这样,在保证关键帧图像覆盖了的同时,还有效控制了关键帧图像的数量,有利于提升后续的数据处理效率。

参见图1,在步骤12中,根据多个关键帧图像,对目标路段进行稀疏重建,以获得拍摄各个关键帧图像的相机位姿信息。

其中,相机的位姿信息可以包含相机的六自由度(物体在空间具有六个自由度,即沿x、y、z三个直角坐标轴方向的移动自由度和绕这三个坐标轴的转动自由度)信息,即,包含相机的三个方位角和三个旋转角数据。

在一种可能的实施方式中,步骤12可以包括步骤31~步骤34,如图3所示。

在步骤31中,对每一关键帧图像进行动态对象擦除处理,获得各个关键帧图像对应的第二图像。

动态对象擦除处理可以认为是一种图像分割方法,也就是删除图像中被识别为动态对象的像素点,保留图像中被识别为静态对象的像素点,使得第二图像中仅包含原图像中的静态对象。

动态对象擦除处理可以基于深度学习实现,在前期准备过程中,可以收集多张训练图像,并标记其中各个像素点的类别(包括静态类别和动态类别),之后,基于训练图像和标记信息,利用深度学习对动态像素点和静态像素点的识别能力进行学习,从而,针对给定的图像,可以识别出其中的动态像素点和静态像素点,进而,将给定图像中的动态像素点删除,就完成了动态对象擦除处理。

基于上述思路,针对每一关键帧图像,均能获得仅含静态像素点的擦除结果,作为对应的第二图像。

通过上述方式,提取出三维重建中最关注的静态像素点,有利于提升后续三维重建的成功率。

在步骤32中,对每一第二图像进行sift特征提取,获得每一第二图像的sift特征提取结果。

针对每一第二图像,进行sift特征提取,获得每一第二图像所包含的sift特征点,即获得了第二图像的sift特征提取结果。其中,针对给定图像进行sift特征提取的技术属于公知常识,此处不做详细说明。

在步骤33中,根据第二图像的sift特征提取结果,对第二图像进行特征匹配,以获得多个第二图像之间的特征匹配结果。

在这里,特征匹配的目的在于找出sift特征点在不同第二图像之间的对应关系(即,特征匹配结果),有利于实现后续的稀疏重建。

在一种可能的实施方式中,步骤33可以包括以下步骤:

按照预设条件,将各个第二图像归类到不同分组,以获得多组图像集;

分别对每一组图像集进行特征匹配,得到每一组图像集对应的特征匹配结果,以获得多个第二图像之间的特征匹配结果。

示例地,预设条件可以为:

同一图像集内的第二图像均来自同一行车视频;

或者,同一图像集内的第二图像的位置均处于预设范围内。

也就是说,一方面,针对同一行车视频内的关键帧图像进行特征匹配,获得特征匹配结果,同时,另一方面,针对同一预设范围(位置范围)内的关键帧图像进行特征匹配,获得特征匹配结果,最后,结合两方面的特征匹配结果,获得多个第二图像之间的特征匹配结果。这样,能够使特征匹配结果更加全面。

其中,不同的图像集所包含的第二图像可以部分重合。

在步骤34中,基于特征匹配结果进行稀疏重建。

基于多个第二图像之间的特征匹配结果,进行稀疏重建,能够获得拍摄各个关键帧图像的相机位姿信息,同时,也能够获得稀疏点云,也就是目标路段的路面稀疏点云。

参见图1,在步骤13中,对每一关键帧图像进行路面区域提取处理,获得各个关键帧图像对应的路面图像。

其中,对图像进行路面区域提取处理可以通过深度学习实现。在前期准备过程中,可以收集多张带有路面的图像,并标记其中各个像素点的类别(包括路面类别和非路面类别),之后,基于收集到的图像和标记信息,利用深度学习对路面像素点和非路面像素点的识别能力进行学习,从而,针对给定的图像,可以识别出其中的路面像素点和非路面像素点,进而,将给定图像中的非路面像素点删除,就完成了路面区域提取处理。

在步骤14中,根据相机位姿信息和路面图像,对目标路段进行稠密重建,以获得目标路段的路面三维重建结果。

在一种可能的实施方式中,步骤14可包括步骤41~步骤44,如图4所示。

在步骤41中,根据相机位姿信息和路面图像,对目标路段进行稠密重建,获得目标路段的路面稠密点云。

将相机位姿信息和路面图像作为输入信息,利用稠密重建技术,可以获得稠密点云,也就是路面稠密点云。其中,由于路面图像仅包含路面区域,因此,稠密重建仅需重建路面区域的点云,能够有效提升稠密重建的效率及成功率。

在步骤42中,根据路面稠密点云,利用平面拟合技术,确定目标路段的第一路面重建结果。

示例地,可以对路面稠密点云进行ransac平面拟合,得到目标路段的地面方程和第一地面法向量,作为第一路面重建结果。

在步骤43中,根据相机位姿信息,确定目标路段的第二路面重建结果。

在一种可能的实施例中,步骤43可以包括以下步骤:

根据相机位姿信息和相机距离地面的高度,确定目标路段的第二地面法向量,作为第二路面重建结果。

由于车辆与地面的相对位置通常是不变的,因此可以认为相机离地面的高度不变,基于这一假设,可以根据相机的位姿推导出地面的法向量。在这一方式中,认为相机距离地面的高度不变、且地面与相机平行,因此,根据相机位姿信息和相机距离地面的高度,就可以推知出一个地面法向量,作为第二地面法向量。

在步骤44中,根据第一路面重建结果和第二路面重建结果,获得路面三维重建结果。

在一种可能的实施方式中,步骤44可以包括以下步骤51和步骤52,如图5所示。

在步骤51中,将第一地面法向量和第二地面法向量中的一者确定为目标地面法向量。

在一种可能的实施例中,可随机选择第一地面法向量和第二地面法向量中的一者作为目标地面法向量。

在另一种可能的实施方式中,可以通过如下步骤确定目标地面法向量:

确定第一地面法向量和第二地面法向量之间的角度差值;

若角度差值小于预设阈值,将第一地面法向量确定为目标地面法向量;

若角度差值大于预设阈值,将第二地面法向量确定为目标地面法向量。

示例地,预设阈值可以为2度。

一般情况下,基于相机位姿信息估计出的第二地面法向量虽然精度不高,但是大体是准确的,而基于稠密点云确定出的第一地面法向量可能会因为点云数据的缺失而存在较大误差。因此,通常将第二地面法向量作为最低精度标准,将第一地面法向量与第二地面法向量进行比较,若二者较为相近,说明获得第一地面法向量时不存在点云数据缺失的问题,因此,选择精度更高的第一地面法向量作为目标地面法向量,而若二者不相近,说明获得第一地面法向量时存在点云数据缺失的问题,第一地面法向量误差很大,将不予参考,从而将大体准确的第二地面法向量作为目标地面法向量。

在步骤52中,将地面方程和目标地面法向量确定为路面三维重建结果。

通过上述技术方案,获取目标路段对应的多个关键帧图像,根据多个关键帧图像对目标路段进行稀疏重建,以获得拍摄各个关键帧图像的相机位姿信息,之后,对每一关键帧图像进行路面区域提取处理,获得各个关键帧图像对应的路面图像,并根据相机位姿和路面图像对目标路段进行稠密重建,以获得目标路段的路面三维重建结果。由此,针对目标路段选取合适的关键帧图像,有利于提升后续三维重建的成功率,并且,提取出关键帧图像中的路面区域,并结合稀疏重建还原出的相机位姿信息进行稠密重建,从而仅需重建路面区域的稠密点云,并且能够有效提升三维重建的鲁棒性和成功率。

图6是根据本公开的一种实施方式提供的道路三维重建装置的框图。如图6所示,装置60包括:

第一获取模块61,用于获取目标路段对应的多个关键帧图像,所述关键帧图像取自经过所述目标路段的车辆在所述目标路段行驶期间所拍摄的视频;

稀疏重建模块62,用于根据所述多个关键帧图像,对所述目标路段进行稀疏重建,以获得拍摄各个所述关键帧图像的相机位姿信息;

路面提取模块63,用于对每一所述关键帧图像进行路面区域提取处理,获得各个关键帧图像对应的路面图像;

稠密重建模块64,用于根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,以获得所述目标路段的路面三维重建结果。

可选地,所述装置60通过如下模块获得所述多个关键帧图像:

第二获取模块,用于获取与所述目标路段对应的行车视频,所述行车视频是经过所述目标路段的车辆在所述目标路段行驶期间拍摄的;

抽帧模块,用于对所述行车视频进行抽帧处理,获得多帧备选图像;

确定模块,用于确定每一所述备选图像对应的车道信息;

筛选模块,用于根据各个所述备选图像对应的车道信息,从所述备选图像中筛选出多个关键帧图像,以使所述多个关键帧图像覆盖所述目标路段的所有车道。

可选地,所述行车视频中每一帧图像携带有拍摄位置信息和行车角度信息,其中,拍摄位置信息为拍摄该图像时车辆所在的位置,行车角度信息为拍摄该图像时车辆的行车角度;

所述抽帧模块,包括:

第一抽取子模块,用于按照预设的抽帧频率从所述行车视频中抽取多帧第一图像;

第二抽取子模块,用于根据所述第一图像的拍摄位置信息和行车角度信息,从多帧第一图像中抽取多帧备选图像。

可选地,所述第二抽取子模块用于若所述第一图像中存在满足以下条件中的任意一者的目标图像,将所述目标图像抽取为备选图像:

拍摄目标图像时车辆所在的位置相比于拍摄已抽取的备选图像时车辆所在的位置变化指定距离;

拍摄目标图像时车辆的行车角度相比于拍摄已抽取的备选图像时车辆的行车角度变化指定角度。

可选地,所述确定模块用于针对每一所述备选图像,利用车道识别模型,确定该备选图像对应的车道信息,其中,所述车道识别模型通过深度学习训练得到。

可选地,所述筛选模块用于分别将所述目标路段包含的每一车道作为目标车道,并执行如下操作:

根据每一所述备选图像对应的车道信息,从所述备选图像中筛选出至少一个目标备选图像,作为对应于所述目标车道的关键帧图像,其中,目标备选图像为车道信息与所述目标车道的车道信息相符合的备选图像。

可选地,所述目标车道的关键帧图像数量为2。

可选地,所述稀疏重建模块62,包括:

动态擦除子模块,用于对每一所述关键帧图像进行动态对象擦除处理,获得各个关键帧图像对应的第二图像;

特征提取子模块,用于对每一所述第二图像进行sift特征提取,获得每一第二图像的sift特征提取结果;

特征匹配子模块,用于根据所述第二图像的sift特征提取结果,对第二图像进行特征匹配,以获得多个第二图像之间的特征匹配结果;

稀疏重建子模块,用于基于所述特征匹配结果进行稀疏重建。

可选地,所述特征匹配子模块用于:

按照预设条件,将各个第二图像归类到不同分组,以获得多组图像集;分别对每一组图像集进行特征匹配,得到每一组图像集对应的特征匹配结果,以获得多个第二图像之间的特征匹配结果。

可选地,所述预设条件为:

同一图像集内的第二图像均来自同一行车视频;或者,

同一图像集内的第二图像的位置均处于预设范围内。

可选地,所述稠密重建模块64,包括:

稠密重建子模块,用于根据所述相机位姿信息和所述路面图像,对所述目标路段进行稠密重建,获得所述目标路段的路面稠密点云;

第一路面重建子模块,用于根据所述路面稠密点云,利用平面拟合技术,确定所述目标路段的第一路面重建结果;

第二路面重建子模块,用于根据所述相机位姿信息,确定所述目标路段的第二路面重建结果;

结果确定子模块,用于根据所述第一路面重建结果和所述第二路面重建结果,获得所述路面三维重建结果。

可选地,所述第一路面重建子模块用于对所述路面稠密点云进行ransac平面拟合,得到所述目标路段的地面方程和第一地面法向量,作为所述第一路面重建结果。

可选地,所述第二路面重建子模块用于根据所述相机位姿信息和相机距离地面的高度,确定所述目标路段的第二地面法向量,作为所述第二路面重建结果。

可选地,所述第一路面重建结果包括地面方程和第一地面法向量,所述第二路面重建结果包括第二地面法向量;

所述结果确定子模块,包括:

第一确定子模块,用于将所述第一地面法向量和所述第二地面法向量中的一者确定为目标地面法向量;

第二确定子模块,用于将所述地面方程和所述目标地面法向量确定为所述路面三维重建结果。

可选地,所述第一确定子模块用于:

确定所述第一地面法向量和所述第二地面法向量之间的角度差值;若所述角度差值小于预设阈值,将所述第一地面法向量确定为所述目标地面法向量;若所述角度差值大于所述预设阈值,将所述第二地面法向量确定为所述目标地面法向量。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图7是根据一示例性实施例示出的一种电子设备700的框图。如图7所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。

其中,处理器701用于控制该电子设备700的整体操作,以完成上述的道路三维重建方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。

在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的道路三维重建方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的道路三维重建方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的道路三维重建方法。

图8是根据一示例性实施例示出的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器。参照图8,电子设备1900包括处理器1922,其数量可以为一个或多个,以及存储器1932,用于存储可由处理器1922执行的计算机程序。存储器1932中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器1922可以被配置为执行该计算机程序,以执行上述的道路三维重建方法。

另外,电子设备1900还可以包括电源组件1926和通信组件1950,该电源组件1926可以被配置为执行电子设备1900的电源管理,该通信组件1950可以被配置为实现电子设备1900的通信,例如,有线或无线通信。此外,该电子设备1900还可以包括输入/输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如WindowsServer

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的道路三维重建方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器1932,上述程序指令可由电子设备1900的处理器1922执行以完成上述的道路三维重建方法。

在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的道路三维重建方法的代码部分。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

相关技术
  • 实景三维道路重建方法及装置、存储介质、电子设备
  • 实景三维道路重建方法及装置、存储介质、电子设备
技术分类

06120113114573