【技术实现步骤摘要】
一种室内多层建筑融合BEV特征的高精度三维建图方法
[0001]本专利技术涉及了一种三维建图方法,涉及空间环境感知
,具体涉及一种室内多层建筑融合BEV特征的高精度三维建图方法。
技术介绍
[0002]基于多传感器数据融合的SLAM技术在场景的快速三维建模中有着重要的作用,其中,激光雷达提供了场景的空间结构信息,惯性测量单元IMU(inertial measurement unit)提供了带噪声的位姿测量值。典型的多传感器融合算法通常为基于滤波器的方法,如扩展卡尔曼滤波、迭代误差卡尔曼滤波、粒子滤波等,这些方法能够实时的融合多传感器数据并输出较为准确的位姿估计值,从而对物理世界中的场景进行快速的三维建模。
[0003]在室内多楼层环境下进行高精度的一致性建图中,遇到的挑战问题主要有两个:1)全局定位的缺失。尽管通过多传感器融合能够获得较为准确位姿估计,但是基于滤波器的方法具有马尔可夫性,长时间的定位估计会累积误差,造成楼层之间歪斜,错位,模糊等现象;此外,由于GPS信号的缺失以及闭环方法的局限性也增加了一致性建 ...
【技术保护点】
【技术特征摘要】
1.一种室内多层建筑融合BEV特征的高精度三维建图方法,其特征在于:方法包括如下步骤:1)使用激光雷达BEV扫描室内多层建筑获得若干时刻的激光雷达点云帧,根据各个时刻激光雷达点云帧进行激光雷达初始位姿的解算分别获得各个时刻激光雷达点云帧的初始位姿;2)构建因子图,将各个时刻的激光雷达点云帧和因子图相关联获得关联因子图;3)根据当前时刻和上一时刻的激光雷达点云帧的初始位姿获得相对位姿,根据相对位姿构建里程计因子,将里程计因子加入关联因子图中获得当前时刻激光雷达点云帧的初始化因子图;4)根据各个时刻的激光雷达点云帧的初始位姿进行激光雷达子地图的划分,最终获得若干激光雷达子地图;5)针对每个激光雷达子地图,提取激光雷达子地图的激光雷达帧点云进而获得若干地面点云,根据各个地面点云构建优化约束对激光雷达点云帧的相对位姿进行优化获得第一优化位姿;6)针对每个激光雷达子地图,将激光雷达子地图进行分割后将剩余的点构建为非平行点云,根据非平行点云对第一优化位姿进行子地图间一致性初步优化获得第二优化位姿;7)针对每个激光雷达子地图,对激光雷达子地图进行关键帧提取,根据关键帧对第二优化位姿进行优化获得第三优化位姿,最终根据各个激光雷达子地图的关键帧对全局的激光雷达点云帧进行更新;8)根据第三优化位姿构建鸟瞰图BEV因子并加入初始化因子图中获得约束因子图,对约束因子图进行更新获得最终精细优化的激光雷达点云帧的最终位姿,根据激光雷达点云帧的最终位姿实现多楼层建筑的三维建图。2.根据权利要求1所述的室内多层建筑融合BEV特征的高精度三维建图方法,其特征在于:所述的步骤1)中,根据各个时刻激光雷达点云帧使用激光雷达即时定位与地图构建SLAM算法进行激光雷达初始位姿的解算获得各个时刻激光雷达点云帧的初始位姿,针对每一时刻的激光雷达点云帧,具体为将使用激光雷达即时定位与地图构建SLAM算法得到激光雷达点云帧到世界坐标的初始位姿作为激光雷达点云帧的初始位姿。3.根据权利要求1所述的室内多层建筑融合BEV特征的高精度三维建图方法,其特征在于:所述的步骤2)具体为,首先使用平滑和建图库GTSAM的非线性因子图NonlinearFactorGraph构建因子图,将各个时刻的激光雷达点云帧和因子图相关联获得关联因子图,具体为将各个时刻的激光雷达点云帧依次和因子图中的各自的一个机器人状态节点相关联,同时将因子图中的第一个机器人状态节点固定,最终获得关联因子图。4.根据权利要求1所述的室内多层建筑融合BEV特征的高精度三维建图方法,其特征在于:所述的步骤3)具体如下:首先根据当前时刻和上一时刻的激光雷达点云帧的初始位姿获得相对位姿,具体如下:其中,和分别为上一i
‑
1时刻和当前i时刻的激光雷达点云帧的初始位姿,为
上一i
‑
1时刻和当前i时刻的激光雷达点云帧的初始位姿的相对位姿;然后使用平滑和建图库GTSAM的节点间因子Betweenfactor将上一i
‑
1时刻和当前i时刻的激光雷达点云帧的初始位姿的相对位姿作为关联因子图中的第第i
‑
1个机器人状态节点X
i
‑1和第i个机器人状态节点X
i
的约束从而构建为里程计因子,将里程计因子加入关联因子图中获得当前时刻激光雷达点云帧的初始化因子图。5.根据权利要求1所述的室内多层建筑融合BEV特征的高精度三维建图方法,其特征在于:所述的步骤4)具体如下:首先将各个时刻激光雷达点云帧的初始位姿的位置信息编码为三维点并构建为三维点云M
s
,使用点云库PCL将三维点云M
s
构建为K维树Kdtree,针对K维树Kdtree中的每个三维点,使用最近邻搜索nearestKsearch算法以三维点为中心,搜索最近的k个三维点作为搜索点从而计算获得各个搜索点的重心各个搜索点的重心具体如下:其中,为各个搜索点的重心;k为搜索点的个数;p
q
为第q个搜索点;然后根据各个搜索点的重心获得各个搜索点的协方差矩阵A,具体如下:其中,A为各个搜索点的协方差矩阵;然后根据各个搜索点的协方差矩阵A,使用线性运算库Eigen的特征求解器eigensolver算法获得协方差矩阵的最小特征值的特征向量作为各个搜索点的法向量,根据各个搜索点的法向量获得三维点夹角角度,具体如下:其中,θ为三维点夹角角度;为各个搜索点的法向量;为重力向量;最后根据夹角角度进行激光雷达子地图的划分,当三维点夹角角度θ小于预设阈值,则第q个搜索点p
q...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。