本科毕业设计 基于ORB SLAM3的多从机SLAM导航系统

耗时:两个月

需求:多从机协作 多地图系统 稠密建图 定位 导航

硬件:二个D435 一台X86主机(CPU:13600kf 内存:32G)
X86主机环境:ubuntu18.04 opencv3.2 ROS1

主要代码参考:ORB-SLAM3
主要调用代码:D435驱动代码
从机机制参考:CCM-SLAM

项目思路流程:

  1. 将ORB SLAM3的track线程 localmapping线程 Loopclosing线程分开。
  2. 从机性能不足,则以D435驱动代码作为从机前端,通过ROS Msg传输图像。
  3. 从机性能充足, 以track线程和localmapping线程作为从机前端,通过ROS Msg传输关键帧信息。
  4. 主机要求性能强内存大,即可处理图像信息亦可处理关键帧信息。
  5. 然后改写 Loopclosing线程 ,使之成为multiple- Loopclosing线程,要求共享关键帧和关键点,同时不影响相互作用。
  6. multiple- Loopclosing线程拥有回环(相同地图)与融合(不同地图)功能。
  7. 生成稠密地图或稀疏地图,并以此构建代价地图。
  8. 以代价地图实现导航。

已经完成1到6,得准备考研复试和其他,7和8就鸽了。

代码写了将近一个月。
时间安排如下
请添加图片描述
rqt_graph如下所示
请添加图片描述
终端显示如下,回环和融合正常。
请添加图片描述
缺点
1识别效率和精度应该至少低于原版的2倍,存在一点bug(至少没崩)。
2计算冗余 传输冗余。

猜你喜欢

转载自blog.csdn.net/Nico_jion/article/details/129272653