Ground-Fusion

SJTU-ViSYSGPL-3.0活跃维护

低成本地面机器人 SLAM 系统,融合多传感器,在弱纹理、剧烈运动等极端场景下仍能稳定定位建图。

Ground-Fusion: A Low-cost Ground SLAM System Robust to Corner Cases (ICRA2024)

暂无版本458star47fork同步于 2026-11-07 07:32 UTC

怎么上手

由 README 提炼,执行前请确认
mkdir -p ~/Groundfusion_ws/src
cd ~/Groundfusion_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/gnss_comm
git clone https://github.com/SJTU-ViSYS/Ground-Fusion
cd ../..
catkin_make -j12
硬件要求按 README 说明

README 未说明具体显存或 GPU 型号要求;运行环境为 Ubuntu 18.04 + ROS Melodic + OpenCV3 或 Ubuntu 20.04 + ROS Noetic + OpenCV4。稠密建图节点资源占用高,会影响系统实时性,建议非必要不启动。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

低成本地面车辆 SLAM 系统,融合 RGB-D、IMU、轮速计与 GNSS,专治视觉、轮速、GNSS 失效的 corner case

低成本地面机器人 SLAM 系统,融合多传感器,在弱纹理、剧烈运动等极端场景下仍能稳定定位建图。

核心能力

  • 在因子图中紧耦合 RGB-D、IMU、轮速计与 GNSS 信号
  • 提供静止、视觉、动态三种初始化策略以应对不同场景
  • 检测传感器异常与退化并做相应处理以维持精度
  • 实时输出稠密彩色建图结果
  • 配套 M2DGR-plus 与 Ground-Challenge 数据集可复现评测

容易踩的坑

需先手动编译安装 Eigen 3.3.7、Ceres 1.14、PCL 1.10/1.11、Sophus 及 gnss_comm 等第三方依赖;Ubuntu 20.04 需额外安装并切换 gcc/g++-8;运行前须自行下载 Ground-Challenge 或 M2DGR-Plus 数据集 rosbag,且 M2DGR-Plus 上 GNSS 仅 1Hz,不用 GNSS 可能效果更好。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

0 个版本

暂无 release 数据(可能没有发版,或尚未同步)。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    [ICRA2024]Ground-Fusion: A Low-cost Ground SLAM System Robust to Corner Cases

    First Author: Jie Yin 殷杰   📝 [Paper] / [Arxiv]   ➡️ [Dataset]   ⭐️ [Presentation Video]   🔥[News]

    Author Paper Preprint Dataset License Video News

    stars forks open issues issue resolution

    ICRA2024 Presentation

    [!TIP] Check out the presentation video above for a quick overview of this work!

    News

    • 🔥2026/06/14: We are excited to release a preview version of Ultra-Fusion system, which unifies WIO, VIO, LIO, and LVIO in one configurable optimization framework, with optional wheel/GNSS fusion and online calibration.

    • 🔥2025/06/16: Introducing our new paper on IROS2025:"Towards Robust Sensor-Fusion Ground SLAM: A Comprehensive Benchmark and A Resilient Framework" is accepted to IROS2025!code: Ground-Fusion++, dataset: M3DGR!

    NOTICE

    We warmly welcome and highly recommend the integration of the Ground-Fusion system into your projects for several compelling reasons:

    1. 🔥Comprehensive Sensor Suite: The Ground-Fusion system is equipped with a multitude of sensors (RGBD-IMU-Wheel-GNSS), facilitating an easy onset for enhancements to any module. This richness in sensory input streamlines the process of adapting and refining components within the system.

    2. ⭐️Open-Source Ecosystem: Both the Ground-Fusion algorithm and associated datasets such as M2DGR-plus and the Ground-Challenge are openly available, forming a comprehensive bechmark suite. Welcome to beat Ground-Fusion on M2DGR and Ground-Challenge!

    3. 🚀Proven Performance: The Ground-Fusion algorithm has been rigorously validated across diverse datasets, establishing itself as SOTA in lidar-less SLAM algorithms. Outperforming Ground-Fusion on these benchmarks would significantly bolster the credibility of your proposed method.

    Introduction

    We introduce Ground-Fusion, a low-cost sensor fusion simultaneous localization and mapping (SLAM) system for ground vehicles. Our system features efficient initialization, effective sensor anomaly detection and handling, real-time dense color mapping, and robust localization in diverse environments. We tightly integrate RGB-D images, inertial measurements, wheel odometer and GNSS signals within a factor graph to achieve accurate and reliable localization both indoors and outdoors. To ensure successful initialization, we propose an efficient strategy that comprises three different methods: stationary, visual, and dynamic, tailored to handle diverse cases. Furthermore, we develop mechanisms to detect sensor anomalies and degradation, handling them adeptly to maintain system accuracy.

    The preprint version of paper is here. The dataset is at M2DGR-plus, Ground-Challenge and M2DGR.

    ⚙️ 1. Prerequisites & Installation

    1.1 OS & ROS Support

    ✅ Ubuntu 18.04 + ROS Melodic + OpenCV3
    ✅ Ubuntu 20.04 + ROS Noetic + OpenCV4

    1.2 OpenCV

    This package requires OpenCV 3/4 and some features of C++11.

    1.3 Eigen, Ceres, and PCL

    This package requires Eigen 3.3.7, Ceres 1.14,Sophus and PCL 1.10 or 1.11. You need to download they in your thirdparty folder, and then:

    sudo apt-get update
    sudo apt-get install -y cmake libgoogle-glog-dev libgflags-dev libatlas-base-dev libsuitesparse-dev 
    cd thirdparty/eigen
    mkdir -p build && cd build
    cmake ..
    sudo make install
    cd ../../ceres-solver
    mkdir -p build && cd build
    cmake ..
    make -j$(nproc) 
    sudo make install
    sudo apt-get install -y libflann-dev libvtk6-dev libboost-all-dev ros-noetic-pcl-ros (for ubuntu20.04) libfmt-dev
    cd ../../pcl
    mkdir -p build && cd build
    cmake ..
    make -j$(nproc)
    sudo make install
    cd ../../Sophus
    mkdir -p build && cd build
    cmake ..
    make -j$(nproc) 
    sudo make install
    

    1.4 Gnss_comm

    This package also requires gnss_comm for ROS message definitions and some utility functions.

    1.5 Configure gcc (For Ubuntu 20.04)

    sudo apt-get install g++-8
    sudo apt-get install gcc-8
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 20
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 20
    

    1.6 Build Ground-Fusion

    After install all 3rd parties:

    mkdir -p ~/Groundfusion_ws/src
    cd ~/Groundfusion_ws/src
    git clone https://github.com/HKUST-Aerial-Robotics/gnss_comm
    git clone https://github.com/SJTU-ViSYS/Ground-Fusion
    cd ../..
    catkin_make -j12
    

    💡 Tip: If you encounter Sophus issues, try building both template and non-template versions.

    🚀 2. Run Examples

    2.1 Ground-challenge dataset

    Download Ground-challenge dataset and give a star.

    # [launch] open a terminal and type:
    source devel/setup.bash
    roslaunch vins groundfusion.launch
    
    # [run localization] open another terminal:
    source devel/setup.bash
    rosrun vins vins_node src/Ground-Fusion/config/realsense/groundchallenge.yaml
    
    # [dense map]open third terminal:
    source devel/setup.bash
    rosrun dense_map dense_map_node src/Ground-Fusion/config/realsense/groundchallenge.yaml
    
    # [play rosbag]open forth terminal:
    rosbag play office3.bag
    

    ⚠️ Mapping node is resource-intensive, affecting the real-time performance of the entire system. So it's suggested that do not run this node unless necessary. We are working on optimizing the mapping node currently

    2.2 M2DGR-Plus dataset

    Download M2DGR-Plus dataset and give a star.

    # [launch] open a terminal and type:
    source devel/setup.bash
    roslaunch vins groundfusion.launch
    
    # [run localization] open another terminal:
    source devel/setup.bash
    rosrun vins vins_node src/Ground-Fusion/config/realsense/m2dgrp.yaml
    
    # [dense map]open third terminal:
    source devel/setup.bash
    rosrun dense_map dense_map_node src/Ground-Fusion/config/realsense/m2dgrp.yaml
    
    # [play rosbag]open forth terminal:
    rosbag play anamoly.bag
    
    
    

    ⚠️ Known Issues:

    • Ground-Fusion may perform better without GNSS on M2DGR-Plus due to its low (1Hz) GNSS frequency.
    • Initialization thresholds may need tuning to avoid early-phase drift.
    • A more advanced version of Ground-Fusion is under development — stay tuned!

    🙏 3.Acknowledgements

    This work is supported by:

    • National Key R&D Program (2022YFB3903802)
    • NSFC (62073214)
    • Midea Group

    This project is built on GVINS, with inspirations from VIW-Fusion and VINS-RGBD — huge thanks!


    📄 4. Citation

    @inproceedings{yin2024ground,
      title={Ground-fusion: A low-cost ground slam system robust to corner cases},
      author={Yin, Jie and Li, Ang and Xi, Wei and Yu, Wenxian and Zou, Danping},
      booktitle={2024 IEEE International Conference on Robotics and Automation (ICRA)},
      pages={8603--8609},
      year={2024},
      organization={IEEE}
    }
    @article{zhang2025towards,
      title={Towards Robust Sensor-Fusion Ground SLAM: A Comprehensive Benchmark and A Resilient Framework},
      author={Zhang, Deteng and Zhang, Junjie and Sun, Yan and Li, Tao and Yin, Hao and Xie, Hongzhao and Yin, Jie},
      journal={arXiv preprint arXiv:2507.08364},
      year={2025}
    }
    @article{yin2021m2dgr,
      title={M2dgr: A multi-sensor and multi-scenario slam dataset for ground robots},
      author={Yin, Jie and Li, Ang and Li, Tao and Yu, Wenxian and Zou, Danping},
      journal={IEEE Robotics and Automation Letters},
      volume={7},
      number={2},
      pages={2266--2273},
      year={2021},
      publisher={IEEE}
    }
    @inproceedings{yin2023ground,
      title={Ground-challenge: A multi-sensor slam dataset focusing on corner cases for ground robots},
      author={Yin, Jie and Yin, Hao and Liang, Conghui and Jiang, Haitao and Zhang, Zhengyou},
      booktitle={2023 IEEE International Conference on Robotics and Biomimetics (ROBIO)},
      pages={1--5},
      year={2023},
      organization={IEEE}
    }
    

    5. Star History

    Star History Chart