Skip to content

peterWon/Ct-LVI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

This repository is the implementation of our paper "Ct-LVI: A Framework Towards Continuous-time Laser-Visual-Inertial Odometry and Mapping".

A running demo can be found at https://cslinzhang.github.io/Ct-LVI/Ct-LVI.html


Prerequisites

  • Install depends follow the instructions of "cartographer" and "cartographer_ros" respectively.

  • Build OpenCV 3.3.1 (other version may work fine if it includes implementation of SURF keypoint detector) from source with "opencv_contrib"

  • Build GTSAM 4.0.2 with compile options as follows:

    cmake -DGTSAM_USE_SYSTEM_EIGEN=ON -DGTSAM_WITH_TBB=OFF -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF -DGTSAM_COMPILE_OPTIONS_PUBLIC="" ..

  • Build PCL 1.8.0 with compile options as follows:

    cmake -DPCL_ENABLE_SSE=OFF ..


Build

  • Clone this repository in your ROS workspace

  • Set CMake variable "OpenCV_DIR" in the root CMakeLists.txt of "cartographer".

  • Return to the root folder of your ROS workspace (which has the same directory as this "README" file) and run:

    catkin_make_isolated
    

Run an online demo

Our HD Dataset

  • Some demo sequences can be downloaded via:

    • HD dataset: link, pwd: bsqi
  • Set the file path parameters (TRAJECTORY_BUILDER_3D.lvio_config_filename, POSE_GRAPH.camera_intrinsics_filename, and POSE_GRAPH.dbow_voc_filename) of the config file (tongji.lua)

  • roslaunch ctlvi demo_ctlvi_tongji.launch bag_filename:=BAG_FILE_PATH where BAG_FILE_PATH is the full path of the downloaded bag file in your device

  • Some results on the self-collected HD dataset.

NTU-VIRAL

  • The dataset is available online at NTU-VIRAL

  • Set the file path parameters (TRAJECTORY_BUILDER_3D.lvio_config_filename, POSE_GRAPH.camera_intrinsics_filename, and POSE_GRAPH.dbow_voc_filename) of the config file (viral.lua)

  • ```roslaunch ctlvi demo_ctlvi_viral.launch bag_filename:=BAG_FILE_PATH```
    

    where BAG_FILE_PATH is the full path of the downloaded bag file in your device

  • Results on VIRAL
    

Your own data

  • Write a urdf file of your device and save it to folder 'urdf'
  • Write a configuration file of your data and save it to 'config'
  • Write a launch file of your data and save it to 'launch'
  • Run your bag as above examples

Run offline and view mapping result

Launch dlio offline

roslaunch ctlvi ctlvi_offline_tongji bag_filenames:=BAG_FILE_PATH

View mapping result

roslaunch ctlvi ctlvi_map_viewer_rectified urdf_filename:=tongji pose_graph_pb_filename:=PG_FILENAME range_data_pb_filename:=RD_FILENAME rate:=100

where PG_FILENAME and RD_FILENAME are binary pbstream files saved to disk when launch the offline script above.


Acknowledgements

License

Following the licenses of the above acknowledged repositories.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published