Code Monkey home page Code Monkey logo

dliom's Introduction

DLIOM

这份代码是基于direct_lidar_inertial_odometry,对论文Direct LiDAR-Inertial Odometry and Mapping: Perceptive and Connective SLAM的早期复现改进版本。

代码功能正在持续完善中,当前仍然存在较多bug,仍在努力测试修改


图1 : UrbanLoco dataset Dataset 5: HK-Data20190117测试效果


图2: 闭环前后的轨迹对比


图3: 基于3D Jaccard的submap构建

依赖

  • Ubuntu 20.04
  • ROS Noetic (roscpp, std_msgs, sensor_msgs, geometry_msgs, nav_msgs, pcl_ros)
  • C++ 14
  • CMake >= 3.12.4
  • OpenMP >= 4.5
  • Point Cloud Library >= 1.10.0
  • Eigen >= 3.3.7
  • GTSAM >= 4.0.2
sudo apt install libomp-dev libpcl-dev libeigen3-dev

编译

mkdir ws && cd ws && mkdir src && cd src
git clone https://github.com/YWL0720/DLIOM.git
cd ..
catkin_make

已经实现的功能

  • 基于GTSAM的后端
  • 基于3D Jaccard的子地图构建
  • 基于欧氏距离的回环检测

待实现的功能

  • 重力因子

更新日志:

  • 7.11 单独线程用于更新地图,解决回环后崩溃的问题
  • 7.12 更改了一些用于回环的参数
  • 7.13 修正了ulhk数据集重力的影响
  • 7.13 完成了回环后位姿在submap中的更新
  • 7.13 更新了readme
  • 7.14 更新了gtsam::pose3的旋转构造方式 此前的转换存在问题
  • 7.14 添加了对newer college数据集的测试 增加了保存回环后关键帧位姿的接口
  • 7.17 增加了utbm接口
  • 7.18 修正了fitness的bug
  • 8.1 增加GeographicLib的GPS预处理接口
  • 8.2 完成GPS回调 UTM与Lidar系的初始化对齐
  • 8.3 添加了GPS因子
  • 8.4 增加了一种引入GPS因子的方式 待测试
  • 8.11 添加了GNSS与Lidar外参增量式更新的方法

TODO:

  • IMU因子
  • 优化submap部分和地图更新部分的代码
  • 对部分环节进行加速
  • 精简可视化部分

参考

@misc{chen2023direct,
      title={Direct LiDAR-Inertial Odometry and Mapping: Perceptive and Connective SLAM}, 
      author={Kenny Chen and Ryan Nemiroff and Brett T. Lopez},
      year={2023},
      eprint={2305.01843},
      archivePrefix={arXiv},
      primaryClass={cs.RO}
}
@article{chen2022dlio,
  title={Direct LiDAR-Inertial Odometry: Lightweight LIO with Continuous-Time Motion Correction},
  author={Chen, Kenny and Nemiroff, Ryan and Lopez, Brett T},
  journal={2023 IEEE International Conference on Robotics and Automation (ICRA)},
  year={2023},
  pages={3983-3989},
  doi={10.1109/ICRA48891.2023.10160508}
}

dliom's People

Contributors

ywl0720 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.