CN113808196A - 平面融合定位方法、装置、电子设备及存储介质 - Google Patents
平面融合定位方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113808196A CN113808196A CN202111059313.0A CN202111059313A CN113808196A CN 113808196 A CN113808196 A CN 113808196A CN 202111059313 A CN202111059313 A CN 202111059313A CN 113808196 A CN113808196 A CN 113808196A
- Authority
- CN
- China
- Prior art keywords
- point
- image frame
- constraint condition
- plane
- sparse
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种平面融合定位方法、装置、电子设备及存储介质,其中,该平面融合定位方法包括:采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标三维网格与稀疏平面的第一关联信息;根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。本申请实施例有利于提升SLAM***中的定位精度。
Description
技术领域
本申请涉及计算机视觉技术领域,尤其涉及一种平面融合定位方法、装置、电子设备及存储介质。
背景技术
随着计算机视觉技术的发展,SLAM(Simultaneous Localization And Mapping,同时定位与地图构建)技术的研究工作取得了突出成就,并被广泛应用于AR(AugmentedReality,增强现实)或VR(Virtual Reality,虚拟现实)产品、无人机、机器人和自动驾驶中。结构化平面的构建和优化是SLAM技术中的关键环节,目前在结构化平面优化方面,受选取特征点和平面约束条件的影响,生成的平面的精度和稳定性有限,从而会导致定位的精度较低。
发明内容
本申请实施例提供了一种平面融合定位方法、装置、电子设备及存储介质。
本申请实施例第一方面提供了一种平面融合定位方法,该方法包括:
采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标三维网格与稀疏平面的第一关联信息;
根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;
根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。
结合第一方面,在一种可能的实施方式中,根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件,包括:
获取基于上一帧得到的历史稀疏点云构建的历史稀疏平面与前端基于上一帧生成的历史三维网格的第二关联信息,以及载体在上一帧的第二位姿;
采用第一关联信息、第一位姿、第二关联信息和第二位姿构建点面优化模型,得到第一点面约束条件。
结合第一方面,在一种可能的实施方式中,根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值,包括:
获取至少一个第二点面约束条件,至少一个第二点面约束条件包括第一点面约束条件,至少一个第二点面约束条件中除第一点面约束条件外的点面约束条件是基于目标关联信息得到的,目标关联信息是基于图像帧的前预设数量的第一历史帧得到的关联信息;
优化第一位姿,将满足至少一个第二点面约束条件、重投影约束条件和深度约束条件的位姿估计值作为优化值。
结合第一方面,在一种可能的实施方式中,该方法还包括:
边缘化基于第一历史帧之前的第二历史帧得到的点面约束条件。
结合第一方面,在一种可能的实施方式中,在采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面之前,该方法还包括:
对图像帧进行均匀采样,得到至少一个二维特征点;
确定至少一个二维特征点在图像帧对应的深度图中的点;
将至少一个二维特征点在图像帧对应的深度图中的点映射到三维空间,得到稀疏点云。
结合第一方面,在一种可能的实施方式中,在得到至少一个二维特征点之后,该方法还包括:
采用至少一个二维特征点构建二维网格;
采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,包括:
基于二维网格中的二维特征点与稀疏点云中的三维点的对应关系,采用三维点构建与二维网格对应的三维网格;
基于第一位姿对三维网格进行聚类,得到稀疏平面。
结合第一方面,在一种可能的实施方式中,对图像帧进行均匀采样,得到至少一个二维特征点,包括:
去除图像帧的边缘像素点;
根据图像帧的大小和预设采样数量计算得到采样距离;
按照采样距离对图像帧中未被去除的像素点进行采样,得到至少一个二维特征点。
结合第一方面,在一种可能的实施方式中,获取前端基于图像帧生成的目标三维网格与稀疏平面的第一关联信息,包括:
获取目标三维网格与稀疏平面的方向的差值;
在差值小于或等于预设值,且构成目标三维网格的至少一个三维点在稀疏平面上的情况下,将目标三维网格与稀疏平面关联,得到第一关联信息。
本申请实施例第二方面提供了一种平面融合定位装置,该装置包括获取单元和处理单元;
获取单元,用于采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标三维网格与稀疏平面的第一关联信息;
处理单元,用于根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;
处理单元,还用于根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。
本申请实施例第三方面提供了一种电子设备,该电子设备包括输入设备和输出设备,还包括处理器,适于实现一条或多条指令;以及,计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如上述第一方面所述方法中的步骤。
本申请实施例第四方面提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如上述第一方面所述方法中步骤。
本申请实施例第五方面提供了一种计算机程序产品,其中,上述计算机程序产品包括计算机程序,上述计算机程序可操作来使计算机执行如上述第一方面所述方法中的步骤。该计算机程序产品可以为一个软件安装包。
可以看出,本申请实施例中采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标三维网格与稀疏平面的第一关联信息;根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。由于当前输入的图像帧是RGBD图像采集设备采集的RGBD图像,而RGBD图像通常包含观测到的二维数据,比如深度传感器提供的数据,观测到的二维数据相对比较准确,那么,基于该二维数据得到的稀疏点云相比估计得到的三维数据准确度更高,从而使得构建的稀疏平面的精度更高,有利于提升点面关联(即第一关联信息)的精度,另外,在SLAM***前端给出重投影约束和深度约束的基础上,还加入了基于点面关联和第一位姿得到的点面约束(即第一点面约束条件),通过不断优化第一位姿以使载体的位姿满足上述三个约束条件,从而有利于缩小位姿的估计值与观测值之间的偏差,进而提升定位精度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用环境的架构图;
图2为本申请实施例提供的一种平面融合定位方法的流程示意图;
图3为本申请实施例提供的一种点面关联的可视化示意图;
图4为本申请实施例提供的一种获取第一点面约束条件的流程示意图;
图5为本申请实施例提供的一种获取第一位姿的优化值的流程示意图;
图6为本申请实施例提供的一种特征点采样的示意图;
图7为本申请实施例提供的另一种平面融合定位方法的流程示意图;
图8为本申请实施例提供的一种平面融合定位装置的结构示意图;
图9为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请说明书、权利要求书和附图中出现的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。此外,术语“第一”、“第二”和“第三”等是用于区别不同的对象,而并非用于描述特定的顺序。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请实施例提出一种平面融合定位方法,可基于图1所示的应用环境实施,如图1所示,该应用环境包括电子设备101、与电子设备101通信连接的图像采集设备102和终端设备103。其中,电子设备101支持SLAM***前端和后端的运行,本申请实施例所涉及到的电子设备101可以包括各种具有程序代码运行能力和通信能力的设备,比如电子设备101可以是独立的物理服务器,也可以是服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、以及大数据和人工智能平台等基础云计算服务的云服务器,或者电子设备101还可以是各种机器人、车载设备和可穿戴设备,等等。
其中,图像采集设备102可以是RGBD图像采集设备,在一些场景中,其具体可以是设置于电子设备101上的RGBD图像采集设备。图像采集设备102用于将采集的RGBD图像数据发送到电子设备101,以使得电子设备101可基于该图像数据进行稀疏平面的构建,并将前端构建的三维网格(3Dmesh)中的三维点与稀疏平面进行关联,基于相邻帧的点面关联信息和载体的位姿(pose)构建点面优化模型,从而得到点面约束条件,不断优化载体的位姿,以使其满足该点面约束条件、SLAM***前端给出的重投影约束条件和深度约束条件,从而提高SLAM***中的定位精度。
其中,终端设备103可用于对图像采集设备102采集的图像数据、电子设备101构建的二维网格(2Dmesh)、3Dmesh、地图和SLAM***中的定位结果进行可视化。终端设备103可以是带显示功能的设备,比如电脑、AR(Augmented Reality,增强现实)或VR(VirtualReality,虚拟现实)眼镜,也可以是独立的显示器。
以下结合相关附图对本申请实施例提供的平面融合定位方法进行详细阐述。
请参见图2,图2为本申请实施例提供的一种平面融合定位方法的流程示意图,该方法应用于电子设备,如图2所示,包括步骤201-204:
步骤201:采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息。
本申请实施例中,当前输入的图像帧是指图像采集设备采集的最新的RGBD图像,示例性的,对于该图像帧,电子设备对其进行均匀采样,得到至少一个二维(2D)特征点,如图3中b图所示,应理解,RGBD图像通常存在对应的深度图,该至少一个2D特征点均可确定出其在对应的深度图中的点,将该至少一个2D特征点在对应的深度图中的点映射到三维(3D)空间,即得到用于构建稀疏平面的稀疏点云。该实施方式中,由于深度图中的点是深度传感器观测到的数据,相对比较准确,采用根据这些点得到的稀疏点云构建出的稀疏平面,相比较采用稠密点云构建出的平面,精度和稳定性更高。
示例性的,在得到至少一个2D特征点之后,该方法还包括:采用至少一个2D特征点构建2Dmesh。比如可对该至少一个2D特征点进行三角剖分,以构建出2Dmesh,或者通过采样时确定的2Dmesh的直角边采样距离构建出2Dmesh,比如,三个2D特征点已知两条直角边,则加上斜边就构成一个2Dmesh。
示例性的,采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,包括:
基于2Dmesh中的2D特征点与稀疏点云中的3D点的对应关系,采用3D点构建与2Dmesh对应的3Dmesh;
基于第一位姿对3Dmesh进行聚类,得到稀疏平面。
本申请实施例中,对于2Dmesh中的每个2D特征点在稀疏点云中均有与之对应的3D点,如图3中b图所示的点和f图所示的点,其对应关系(或者映射关系)可通过相同的标识体现,比如2D特征点A、B、C构成一个2Dmesh,则可采用A、B、C对应的3D点构成3Dmesh。应理解,SLAM***可基于载体的位姿对构建的3Dmesh中的任意两个3Dmesh的距离进行估算,电子设备可将该距离小于或等于一定阈值的3Dmesh聚类,得到最终构建的稀疏平面,其在3D空间可如图3中d图所示,在2D空间可如图3中f图所示。该实施方式中,基于观测到的准确度更高的2D特征点构建稀疏平面,有利于提升平面的稳定性和精度。
其中,目标3Dmesh是SLAM的前端基于选取的3D点构建的3Dmesh,其在3D空间可如图3中c图所示,在2D空间可如图3中e图所示,SLAM***的前端可对图像帧进行特征提取得到前端2D特征点,如图3中a图所示,然后将这些2D特征点映射为3D点。其中,SLAM***的前端可以是视觉里程计(VisualOdometry)。
示例性的,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息,包括:
获取目标3Dmesh与稀疏平面的方向的差值;
在差值小于或等于预设值,且构成目标3Dmesh的至少一个3D点在稀疏平面上的情况下,将目标3Dmesh与稀疏平面关联,得到第一关联信息。
本申请实施例中,平面的关联需要具备两个条件:一是方向相近,当目标3Dmesh与稀疏平面的方向的差值小于或等于预设值时,则可确定二者方向相近,其中,预设值可根据经验值设定;二是目标3Dmesh的至少一个3D点在稀疏平面上,即目标3Dmesh的至少一个3D点满足稀疏平面的平面方程。在满足上述两个条件的情况下,认为目标3Dmesh与稀疏平面属于同一个平面,则可将目标3Dmesh中的3D点与稀疏平面进行关联,得到第一关联信息,该第一关联信息可以理解为对稀疏平面进行扩展得到的平面。该实施方式中,由于SLAM***的前端选取的2D特征点具有速度快的特性,采用该类特征点对应的3D点来扩展稀疏平面,有利于提升平面关联或扩展的速度。
步骤202:根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件。
本申请实施例中,如图4所示,根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件,包括步骤401-402:
步骤401:获取基于上一帧得到的历史稀疏点云构建的历史稀疏平面与前端基于上一帧生成的历史3Dmesh的第二关联信息,以及载体在上一帧的第二位姿;
步骤402:采用第一关联信息、第一位姿、第二关联信息和第二位姿构建点面优化模型,得到第一点面约束条件。
其中,历史稀疏点云是指基于上一帧中的至少一个2D特征点得到的稀疏点云,历史稀疏平面是指基于该历史稀疏点云构建的稀疏平面,历史3D mesh是指前端基于上一帧构建的3D mesh,第二关联信息是指历史稀疏平面与历史3D mesh的关联信息,其获取方式与第一关联信息相同,即采用稀疏点云构建稀疏平面,再将前端构建的3Dmesh与稀疏平面进行关联。其中,第一位姿是指当前时刻前端给出的位姿,第二位姿是指上一帧的时刻前端给出的位姿,SLAM***中前端可以得到每个时刻的位姿。由于一个平面上的点可能被多个相邻帧观测到,比如第一关联信息中的点可能在其上一帧也被观测到,如图3中P点在当前图像帧中的观测位置为Py,在上一帧中的观测位置为px,基于这样的关系,电子设备采用第一关联信息、第一位姿、第二关联信息和第二位姿构建如下所示的点面优化初始模型:
其中,和分别表示上一帧c1和当前图像帧c2坐标系下h点的3D坐标,该点可以是同一点在第一关联信息和第二关联信息中观测到的点,和分别表示上一帧c1和当前图像帧c2子世界坐标系W下的旋转,和分别表示上一帧c1和当前图像帧c2在世界坐标系W下的位置,可分别由第一位姿和第二位姿得到,n和d表示基于当前图像帧构建的稀疏平面的参数,n表示平面的方向,d表示平面的距离,E表示单位矩阵,T表示转置。
应理解,相邻帧中的点通常满足单应性变换,对于上述初始模型,可求取一个单应矩阵H对其进行简化,则简化后的点面优化模型如下:
则第一点面约束条件可表示为:
其中,Error表示在载体的平面坐标系下,h点在上一帧c1和当前图像帧c2中观测到的位置误差,电子设备可通过不断优化SLAM***的前端给出的初始位姿(即第一位姿),以使得载体的位姿的估计值让误差Error更小(更接近于0)。该实施方式中,在构建的点面约束条件中加入单应性Homograph约束(即单应矩阵H),有利于提高约束的精度,在算法定位或追踪中能够降低对3D点精度的依赖。
步骤203:根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。
本申请实施例中,与第一点面约束条件相同,电子设备还基于当前图像帧和上一帧得到重投影约束条件和深度约束条件,SLAM***的前端可通过一系列的观测和运动来估计载体的位姿,这些观测和运动可以提供约束力,使得位姿同时满足这些约束,其中,这些约束就包括SLAM***的前端提供深度约束条件和重投影约束条件,深度约束条件用于使相邻帧中同一点的观测点的深度误差更小,重投影约束条件用于使相邻帧中同一点的观测点的重投影误差更小。
示例性的,如图5所示,根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值,包括步骤501-502:
步骤501:获取至少一个第二点面约束条件,至少一个第二点面约束条件包括第一点面约束条件,至少一个第二点面约束条件中除第一点面约束条件外的点面约束条件是基于目标关联信息得到的,目标关联信息是基于图像帧的前预设数量的第一历史帧得到的关联信息;
步骤502:优化第一位姿,将满足至少一个第二点面约束条件、重投影约束条件和深度约束条件的位姿估计值作为优化值。
其中,至少一个第二点面约束条件是基于当前图像帧和离当前图像帧最近的预设数量的第一历史帧得到的,比如当前的图像帧为第11帧,则至少一个第二点面约束条件是基于第1帧至第11帧得到的,第一历史帧是指前面的第1帧至第10帧,其中,目标关联信息是指基于第1帧、第2帧……第10帧得到的关联信息。比如,基于第1帧的点面关联信息和第1帧时的位姿、第2帧的点面关联信息和第2帧时的位姿可构建一个第二点面约束条件,基于第2帧的点面关联信息和第2帧时的位姿、第3帧的点面关联信息和第3帧时的位姿可构建一个第二点面约束条件……基于第10帧(即当前图像帧的上一帧)的点面关联信息和第10帧时的位姿(即第二位姿)、第11帧(即当前图像帧)的点面关联信息(即第一关联信息)和第11帧时的位姿(即第一位姿)可构建一个第二点面约束条件(即第一点面约束条件)。
在SLAM***中,通常会认为当前的图像帧的前预设帧为较新的帧,基于这些帧构建的点面约束条件对当前的定位仍会产生影响,因此,在优化第一位姿时,应使位姿的估计值尽量满足该至少一个第二点面约束条件、重投影约束条件和深度约束条件,当然,在该至少一个第二点面约束条件中,主要是需要满足第一点面约束条件,最终得到能够使第一点面约束条件、重投影约束条件和深度约束条件中的误差最小的优化值。
示例性的,该方法还包括:边缘化基于第一历史帧之前的第二历史帧得到的点面约束条件。其中,第二历史帧是比第一历史帧更早的帧,比如当前的图像帧为第11帧,第一历史帧是第3帧至第10帧,那么第3帧之前的帧均为第二历史帧。由于第二历史帧是比较老的帧,基于这些帧得到的点面约束条件对当前的定位或追踪的影响不大,因此,可以对其进行边缘化,以保证点面约束条件的时效性。
示例性的,对图像帧进行均匀采样,得到至少一个2D特征点,包括:
去除图像帧的边缘像素点;
根据图像帧的大小和预设采样数量计算得到采样距离;
按照采样距离对图像帧中未被去除的像素点进行采样,得到至少一个2D特征点。
本申请实施例中,如图6所示,假设当前的图像帧的大小为M*N像素,将处于图像帧边缘的S个像素点去除,S为大于等于1的整数,则剩余的像素点表示为(M-S)*(N-S),预设采样数量为Q,Q为大于等于3的整数,则采样距离为按照该采样距离对图像帧中未被去除的像素点进行均匀采样,得到如图6中所示的至少一个2D特征点。
可以看出,本申请实施例中采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。由于当前输入的图像帧是RGBD图像采集设备采集的RGBD图像,而RGBD图像通常包含观测到的2D数据,比如深度传感器提供的数据,观测到的2D数据相对比较准确,那么,基于该2D数据得到的稀疏点云相比估计得到的3D数据准确度更高,从而使得构建的稀疏平面的精度更高,有利于提升点面关联(即第一关联信息)的精度,另外,在SLAM***前端给出重投影约束和深度约束的基础上,还加入了基于点面关联和第一位姿得到的点面约束(即第一点面约束条件),通过不断优化第一位姿以使载体的位姿满足上述三个约束条件,从而有利于缩小位姿的估计值与观测值之间的偏差,进而提升定位精度。
请参见图7,图7为本申请实施例提供的另一种平面融合定位方法的流程示意图,如图7所示,包括步骤701-705:
701:采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面;
702:获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;
703:获取基于该图像帧的上一帧得到的历史稀疏点云构建的历史稀疏平面与前端基于该上一帧生成的历史3Dmesh的第二关联信息,以及载体在上一帧的第二位姿;
704:采用第一关联信息、第一位姿、第二关联信息和第二位姿构建点面优化模型,得到第一点面约束条件;
705:根据第一点面约束条件、基于该图像帧和该图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。
其中,步骤701-705的具体实施方式在图2所示的实施例中已有相关说明,此处不再赘述。
可以看出,本申请实施例采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面;获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;获取基于该图像帧的上一帧得到的第二关联信息和载体在上一帧的第二位姿;采用第一关联信息、第一位姿、第二关联信息和第二位姿构建点面优化模型,得到第一点面约束条件;根据第一点面约束条件、基于该图像帧和该图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。由于当前输入的图像帧是RGBD图像采集设备采集的RGBD图像,而RGBD图像通常包含观测到的2D数据,比如深度传感器提供的数据,观测到的2D数据相对比较准确,那么,基于该2D数据得到的稀疏点云相比估计得到的3D数据准确度更高,从而使得构建的稀疏平面的精度更高,有利于提升当前输入的图像帧和其相邻帧(即上一帧)各自的点面关联的精度,从而使得构建的第一点面约束条件的精度更高;另外,在SLAM***前端给出重投影约束和深度约束的基础上,还加入了基于点面关联和第一位姿得到的第一点面约束条件,通过不断优化第一位姿以使载体的位姿满足上述三个约束条件,从而有利于缩小位姿的估计值与观测值之间的偏差,进而提升定位精度。
基于图2或图7所示方法实施例的描述,本申请实施例还提供一种平面融合定位装置,请参见图8,图8为本申请实施例提供的一种平面融合定位装置的结构示意图,如图8所示,该装置包括:获取单元801和处理单元802;
获取单元801,用于采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;
处理单元802,用于根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;
处理单元802,还用于根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。
在一种可能的实施方式中,在根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件方面,处理单元802具体用于:
获取基于上一帧得到的历史稀疏点云构建的历史稀疏平面与前端基于上一帧生成的历史3Dmesh的第二关联信息,以及载体在上一帧的第二位姿;
采用第一关联信息、第一位姿、第二关联信息和第二位姿构建点面优化模型,得到第一点面约束条件。
在一种可能的实施方式中,在根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值方面,处理单元802具体用于:
获取至少一个第二点面约束条件,至少一个第二点面约束条件包括第一点面约束条件,至少一个第二点面约束条件中除第一点面约束条件外的点面约束条件是基于目标关联信息得到的,目标关联信息是基于图像帧的前预设数量的第一历史帧得到的关联信息;
优化第一位姿,将满足至少一个第二点面约束条件、重投影约束条件和深度约束条件的位姿估计值作为优化值。
在一种可能的实施方式中,处理单元802还用于:边缘化基于第一历史帧之前的第二历史帧得到的点面约束条件。
在一种可能的实施方式中,处理单元802还用于:
对图像帧进行均匀采样,得到至少一个2D特征点;
确定至少一个2D特征点在图像帧对应的深度图中的点;
将至少一个2D特征点在图像帧对应的深度图中的点映射到3D空间,得到稀疏点云。
在一种可能的实施方式中,处理单元802还用于:采用至少一个2D特征点构建2Dmesh;
在采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面方面,处理单元802具体用于:
基于2Dmesh中的2D特征点与稀疏点云中的3D点的对应关系,采用3D点构建与2Dmesh对应的3Dmesh;
基于第一位姿对3Dmesh进行聚类,得到稀疏平面。
在一种可能的实施方式中,在对图像帧进行均匀采样,得到至少一个2D特征点方面,处理单元802具体用于:
去除图像帧的边缘像素点;
根据图像帧的大小和预设采样数量计算得到采样距离;
按照采样距离对图像帧中未被去除的像素点进行采样,得到至少一个2D特征点。
在一种可能的实施方式中,在获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息方面,处理单元802具体用于:
获取目标3Dmesh与稀疏平面的方向的差值;
在差值小于或等于预设值,且构成目标3Dmesh的至少一个3D点在稀疏平面上的情况下,将目标3Dmesh与稀疏平面关联,得到第一关联信息。
可以看出,在图8所示的平面融合定位装置中,采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。由于当前输入的图像帧是RGBD图像采集设备采集的RGBD图像,而RGBD图像通常包含观测到的2D数据,比如深度传感器提供的数据,观测到的2D数据相对比较准确,那么,基于该2D数据得到的稀疏点云相比估计得到的3D数据准确度更高,从而使得构建的稀疏平面的精度更高,有利于提升点面关联(即第一关联信息)的精度,另外,在SLAM***前端给出重投影约束和深度约束的基础上,还加入了基于点面关联和第一位姿得到的点面约束(即第一点面约束条件),通过不断优化第一位姿以使载体的位姿满足上述三个约束条件,从而有利于缩小位姿的估计值与观测值之间的偏差,进而提升定位精度。
根据本申请的一个实施例,图8所示的平面融合定位装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,平面融合定位装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图7中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图8中所示的平面融合定位装置设备,以及来实现本申请实施例的平面融合定位方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
基于上述方法实施例和装置实施例的描述,本申请实施例还提供一种电子设备。请参见图9,该电子设备至少包括处理器901、输入设备902、输出设备903以及计算机存储介质904。其中,电子设备内的处理器901、输入设备902、输出设备903以及计算机存储介质904可通过总线或其他方式连接。
计算机存储介质904可以存储在电子设备的存储器中,所述计算机存储介质904用于存储计算机程序,所述计算机程序包括程序指令,所述处理器901用于执行所述计算机存储介质904存储的程序指令。处理器901(或称CPU(Central Processing Unit,中央处理器))是电子设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
在一个实施例中,本申请实施例提供的电子设备的处理器901可以用于进行一系列平面融合定位的处理:
采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;
根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;
根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。
再一个实施例中,处理器901执行根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件,包括:
获取基于上一帧得到的历史稀疏点云构建的历史稀疏平面与前端基于上一帧生成的历史3Dmesh的第二关联信息和载体在上一帧的第二位姿;
采用第一关联信息、第一位姿、第二关联信息和第二位姿构建点面优化模型,得到第一点面约束条件。
再一个实施例中,处理器901执行根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值,包括:
获取至少一个第二点面约束条件,至少一个第二点面约束条件包括第一点面约束条件,至少一个第二点面约束条件中除第一点面约束条件外的点面约束条件是基于目标关联信息得到的,目标关联信息是基于图像帧的前预设数量的第一历史帧得到的关联信息;
优化第一位姿,将满足至少一个第二点面约束条件、重投影约束条件和深度约束条件的位姿估计值作为优化值。
再一个实施例中,处理器901还用于:边缘化基于第一历史帧之前的第二历史帧得到的点面约束条件。
再一个实施例中,在采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面之前,处理器901还用于:
对图像帧进行均匀采样,得到至少一个2D特征点;
确定至少一个2D特征点在图像帧对应的深度图中的点;
将至少一个2D特征点在图像帧对应的深度图中的点映射到3D空间,得到稀疏点云。
再一个实施例中,在得到至少一个2D特征点之后,处理器901还用于:
采用至少一个2D特征点构建2Dmesh;
处理器901执行采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,包括:
基于2Dmesh中的2D特征点与稀疏点云中的3D点的对应关系,采用3D点构建与2Dmesh对应的3Dmesh;
基于第一位姿对3Dmesh进行聚类,得到稀疏平面。
再一个实施例中,处理器901执行对图像帧进行均匀采样,得到至少一个2D特征点,包括:
去除图像帧的边缘像素点;
根据图像帧的大小和预设采样数量计算得到采样距离;
按照采样距离对图像帧中未被去除的像素点进行采样,得到至少一个2D特征点。
再一个实施例中,处理器901执行获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息,包括:
获取目标3Dmesh与稀疏平面的方向的差值;
在差值小于或等于预设值,且构成目标3Dmesh的至少一个3D点在稀疏平面上的情况下,将目标3Dmesh与稀疏平面关联,得到第一关联信息。
可以看出,在图9所示的电子设备中,采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于图像帧生成的目标3Dmesh与稀疏平面的第一关联信息;根据第一关联信息和载体当前的第一位姿,得到第一点面约束条件;根据第一点面约束条件、基于图像帧和图像帧的上一帧得到的重投影约束条件和深度约束条件,获取第一位姿的优化值。由于当前输入的图像帧是RGBD图像采集设备采集的RGBD图像,而RGBD图像通常包含观测到的2D数据,比如深度传感器提供的数据,观测到的2D数据相对比较准确,那么,基于该2D数据得到的稀疏点云相比估计得到的3D数据准确度更高,从而使得构建的稀疏平面的精度更高,有利于提升点面关联(即第一关联信息)的精度,另外,在SLAM***前端给出重投影约束和深度约束的基础上,还加入了基于点面关联和第一位姿得到的点面约束(即第一点面约束条件),通过不断优化第一位姿以使载体的位姿满足上述三个约束条件,从而有利于缩小位姿的估计值与观测值之间的偏差,进而提升定位精度。
示例性的,电子设备可包括但不仅限于处理器901、输入设备902、输出设备903以及计算机存储介质904,输入设备902可以是键盘、触摸屏等,输出设备903可以是扬声器、显示器、射频发送器等。本领域技术人员可以理解,所述示意图仅仅是电子设备的示例,并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
需要说明的是,由于电子设备的处理器901执行计算机程序时实现上述图2或图7所示的平面融合定位方法中的步骤,因此图2或图7所示的平面融合定位方法的实施例均适用于该电子设备,且均能达到相同或相似的有益效果。
本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是电子设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作***。并且,在该存储空间中还存放了适于被处理器901加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器901的计算机存储介质。在一个实施例中,可由处理器901加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关平面融合定位方法的相应步骤。
示例性的,计算机存储介质的计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,由于计算机存储介质的计算机程序被处理器执行时实现上述的平面融合定位方法中的步骤,因此上述平面融合定位方法的所有实施例均适用于该计算机存储介质,且均能达到相同或相似的有益效果。
本申请实施例还提供了一种计算机程序产品,其中,上述计算机程序产品包括计算机程序,上述计算机程序可操作来使计算机执行如上述平面融合定位方法中的步骤。该计算机程序产品可以为一个软件安装包。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (11)
1.一种平面融合定位方法,其特征在于,所述方法包括:
采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于所述图像帧生成的目标三维网格与所述稀疏平面的第一关联信息;
根据所述第一关联信息和载体当前的第一位姿,得到第一点面约束条件;
根据所述第一点面约束条件、基于所述图像帧和所述图像帧的上一帧得到的重投影约束条件和深度约束条件,获取所述第一位姿的优化值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一关联信息和载体当前的第一位姿,得到第一点面约束条件,包括:
获取基于所述上一帧得到的历史稀疏点云构建的历史稀疏平面与前端基于所述上一帧生成的历史三维网格的第二关联信息,以及所述载体在所述上一帧的第二位姿;
采用所述第一关联信息、所述第一位姿、所述第二关联信息和所述第二位姿构建点面优化模型,得到所述第一点面约束条件。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述第一点面约束条件、基于所述图像帧和所述图像帧的上一帧得到的重投影约束条件和深度约束条件,获取所述第一位姿的优化值,包括:
获取至少一个第二点面约束条件,所述至少一个第二点面约束条件包括所述第一点面约束条件,所述至少一个第二点面约束条件中除所述第一点面约束条件外的点面约束条件是基于目标关联信息得到的,所述目标关联信息是基于所述图像帧的前预设数量的第一历史帧得到的关联信息;
优化所述第一位姿,将满足所述至少一个第二点面约束条件、所述重投影约束条件和所述深度约束条件的位姿估计值作为所述优化值。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
边缘化基于所述第一历史帧之前的第二历史帧得到的点面约束条件。
5.根据权利要求1-4任一项所述的方法,其特征在于,在采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面之前,所述方法还包括:
对所述图像帧进行均匀采样,得到至少一个二维特征点;
确定所述至少一个二维特征点在所述图像帧对应的深度图中的点;
将所述至少一个二维特征点在所述图像帧对应的深度图中的点映射到三维空间,得到所述稀疏点云。
6.根据权利要求5所述的方法,其特征在于,在得到至少一个二维特征点之后,所述方法还包括:
采用所述至少一个二维特征点构建二维网格;
所述采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,包括:
基于所述二维网格中的二维特征点与所述稀疏点云中的三维点的对应关系,采用所述三维点构建与所述二维网格对应的三维网格;
基于所述第一位姿对所述三维网格进行聚类,得到所述稀疏平面。
7.根据权利要求6所述的方法,其特征在于,对所述图像帧进行均匀采样,得到至少一个二维特征点,包括:
去除所述图像帧的边缘像素点;
根据所述图像帧的大小和预设采样数量计算得到采样距离;
按照所述采样距离对所述图像帧中未被去除的像素点进行采样,得到所述至少一个二维特征点。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述获取前端基于所述图像帧生成的目标三维网格与所述稀疏平面的第一关联信息,包括:
获取所述目标三维网格与所述稀疏平面的方向的差值;
在所述差值小于或等于预设值,且构成所述目标三维网格的至少一个三维点在所述稀疏平面上的情况下,将所述目标三维网格与所述稀疏平面关联,得到所述第一关联信息。
9.一种平面融合定位装置,其特征在于,所述装置包括获取单元和处理单元;
所述获取单元,用于采用基于当前输入的图像帧得到的稀疏点云构建稀疏平面,获取前端基于所述图像帧生成的目标三维网格与所述稀疏平面的第一关联信息;
所述处理单元,用于根据所述第一关联信息和载体当前的第一位姿,得到第一点面约束条件;
所述处理单元,还用于根据所述第一点面约束条件、基于所述图像帧和所述图像帧的上一帧得到的重投影约束条件和深度约束条件,获取所述第一位姿的优化值。
10.一种电子设备,包括输入设备和输出设备,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-8任一项所述的方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111059313.0A CN113808196A (zh) | 2021-09-09 | 2021-09-09 | 平面融合定位方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111059313.0A CN113808196A (zh) | 2021-09-09 | 2021-09-09 | 平面融合定位方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113808196A true CN113808196A (zh) | 2021-12-17 |
Family
ID=78940638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111059313.0A Pending CN113808196A (zh) | 2021-09-09 | 2021-09-09 | 平面融合定位方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113808196A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116148883A (zh) * | 2023-04-11 | 2023-05-23 | 锐驰智慧科技(深圳)有限公司 | 基于稀疏深度图像的slam方法、装置、终端设备及介质 |
-
2021
- 2021-09-09 CN CN202111059313.0A patent/CN113808196A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116148883A (zh) * | 2023-04-11 | 2023-05-23 | 锐驰智慧科技(深圳)有限公司 | 基于稀疏深度图像的slam方法、装置、终端设备及介质 |
CN116148883B (zh) * | 2023-04-11 | 2023-08-08 | 锐驰智慧科技(安吉)有限公司 | 基于稀疏深度图像的slam方法、装置、终端设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3505866B1 (en) | Method and apparatus for creating map and positioning moving entity | |
CN111210429B (zh) | 点云数据划分方法及装置、障碍物检测方法及装置 | |
US8199977B2 (en) | System and method for extraction of features from a 3-D point cloud | |
CN111582054B (zh) | 点云数据处理方法及装置、障碍物检测方法及装置 | |
CN112166458B (zh) | 目标检测与跟踪方法、***、设备及存储介质 | |
CN111553946B (zh) | 用于去除地面点云的方法及装置、障碍物检测方法及装置 | |
CN111459269B (zh) | 一种增强现实显示方法、***及计算机可读存储介质 | |
CN116255992A (zh) | 一种同时定位与建图的方法和装置 | |
CN112097732A (zh) | 一种基于双目相机的三维测距方法、***、设备及可读存储介质 | |
CN109903330A (zh) | 一种处理数据的方法和装置 | |
CN113112542A (zh) | 一种视觉定位方法、装置、电子设备及存储介质 | |
CN113592015B (zh) | 定位以及训练特征匹配网络的方法和装置 | |
CN116337072A (zh) | 一种工程机械的建图、方法、设备、及可读存储介质 | |
CN113808196A (zh) | 平面融合定位方法、装置、电子设备及存储介质 | |
CN111783611A (zh) | 无人车的定位方法、装置、无人车及存储介质 | |
CN116642490A (zh) | 基于混合地图的视觉定位导航方法、机器人及存储介质 | |
CN115619954A (zh) | 稀疏语义地图的构建方法、装置、设备及存储介质 | |
CN115761425A (zh) | 目标检测方法、装置、终端设备及计算机可读存储介质 | |
CN111784579B (zh) | 制图方法及装置 | |
CN114674328A (zh) | 地图生成方法、装置、电子设备、存储介质、及车辆 | |
US11281935B2 (en) | 3D object detection from calibrated 2D images | |
CN109711363B (zh) | 车辆定位方法、装置、设备和存储介质 | |
CN113721240A (zh) | 一种目标关联方法、装置、电子设备及存储介质 | |
CN113763468A (zh) | 一种定位方法、装置、***及存储介质 | |
CN116681884B (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 |