1.一种融合视觉、IMU与声纳的同步定位与建图方法,其特征在于,包括以下步骤:S1:进行相机标定,获得相机内参外参,求解声纳坐标系与相机坐标系之间的关系,获得声纳与相机的位姿变换,使相机与声纳实现同空间信息获取,完成联合标定;
S2:设定同步晶振触发方式,使用特定电路硬件记录时间戳信息,根据声纳传感器与摄像头的采样频率设定触发规则,在融合时刻进行同时触发;
S3:采用与相机松耦合的IMU,用来测量物体在三维空间中的角速度和加速度并对自身做出运动估计,用于运动预测与对基于视觉得出的位姿估计结果融合;
S4:初始化,将相机进行平移,根据相机获取的图像对当前相机姿态进行运动估计,用于在缓慢运动的情况下去除声纳的点云畸变;
S5:对相机图像利用Tenengrad梯度算法进行模糊检验,设定阈值T,当超过阈值时认为存在运动模糊,利用IMU完成点云畸变去除;
S6:将声纳点云图像体素栅格滤波,建立八叉树地图,将相机图像特征点映射到声纳点云图像中,构建有界约束框架;
S7:对框取目标的声纳点云图像与相机图像进行分辨率匹配,采用高斯过程回归对目标点云进行插值,完成数据关联获得带有声纳提供深度信息的目标的相机图像,相机针孔模型T中,将一个三维点投影到一个二维成像平面,设现实空间中存在一点P坐标为[X,Y,Z],投T影后P’坐标为[X’,Y’,Z’],f为焦距,T
像素坐标系为成像平面加上一个缩放α(μ),β(υ)与一个原点平移[Cx,Cy] ,可得P’的像T素坐标[μ,υ]
μ=αX′+Cx (3)
υ=βY′+Cy (4)
将αf合并为fx,把βf合并为fy,得:在声纳模型中,声纳投影的模型直接建立在球坐标系上坐标系间的转换,将2个传感器用一个3*3的旋转矩阵与一个3维的平移向量完成刚体转换:Ps=RPc+T (9)
得:
立体通信约束:
未知量φ可以消除:
最终得到:
通过下式,可得到相机像素Zc的场景深度:此时完成数据关联,获得带有声纳提供深度信息的目标物的相机图像;
S8:使用声纳点云图像进行初步的回环检测,利用进行过插值处理的点云图像建立submap,提取稀疏的点云关键帧与submap匹配,匹配后进行下一步的图像精匹配;
S9:对融合后图像提取稀疏关键帧,针对框架约束的点云信息,采用K‑means++算法进行聚类,设定以直线度,平面度,散度这三维为代表的矢量特征建立词袋模型,通过分类器进行判断,利用k‑d树对特征目标进行快速搜索,完成第一步匹配,然后通过使用迭代最近点完成进一步的匹配,完成回环检测。
2.根据权利要求1所述的方法,其特征在于,所述步骤S5中利用视觉与IMU互补进行运动补偿的操作包括以下步骤:S5‑1:计算相机图像的Tenengrad梯度函数;
S5‑2:设定阈值T,判断图像是否存在运动模糊;
S5‑3:若无运动模糊,将基于相机图像进行位姿估计,用于去除缓慢运动下的声纳点云畸变;
S5‑4:若存在运动模糊,将提取运动模糊前邻近且不连续的三帧图像,与运动模糊后邻近且不连续的三帧图像进行比对,若存在明显相似部分则认为相机运动为原地抖动,此时将利用相似帧进行位姿估计去除声纳点云畸变;若无相似部分,则认为相机做了快速运动,此时将利用IMU进行运动补偿。
3.根据权利要求1所述的方法,其特征在于,所述步骤S6中的相机图像的特征点映射到声纳点云图像实施过程包括以下步骤:S6‑1:获取拥有相同时间戳的声纳点云图像与相机图像;
S6‑2:将三维点云进行分割栅格,设定栅格大小,栅格数;
S6‑3:对每个栅格内的点云进行双边滤波,去除部分点云,达到向下采样同时保全点云几何结构;
S6‑4:将滤波过的声纳点云图像转换到相机坐标系中;
S6‑5:运用针孔模型将三维点云映射到图像坐标系中,接着离散化到像素坐标系中;
S6‑6:判断二维像素平面内的声纳三维点云是否在二维相机图像平面中;
S6‑7:将存在该平面内的三维点云保留并对齐;
S6‑8:用RANSAC算法进行校验;
S6‑9:完成映射。
4.根据权利要求1所述的方法,其特征在于,步骤S9中的提取稀疏关键帧过程包括以下步骤:S9‑1:设定一个最小关键帧间隔,使关键帧尽量稀疏;
S9‑2:检测到回环后,将成功回环的相似关键帧聚类,避免无效回环;
S9‑3:设立验证机制,仅当一段时间持续检测到回环,认为回环成功。
5.根据权利要求1所述的方法,其特征在于,步骤S5中若存在运动模糊,且存在明显相似部分则认为相机运动为原地抖动,将利用相似帧进行位姿估计去除声纳点云畸变;若无相似部分,此时将利用IMU进行运动补偿。
6.根据权利要求5所述的方法,其特征在于,所述利用IMU进行运动补偿的操作包括以下步骤:S5‑4‑1:积分一个声纳帧扫描起始和结束时刻之间的IMU测量;
S5‑4‑2:利用每个激光测量点的时间戳对IMU积分结果进行线性插值;
S5‑4‑3:将每个点投影到激光帧的起始时刻,完成相机数据失效时的运动补偿。