LeGO-LOAM、LIO-SAM、LVI-SAM、FAST-LIO2、Faster-LIO、VoxelMap、R3LIVE、Point-LIO、KISS-ICP、DLO、DLIO、Ada-LIO、PV-LIO、SLAMesh、ImMesh、FAST-LIO-MULTI、M-LOAM,
LeGO-LOAM、LIO-SAM、LVI-SAM、FAST-LIO2、Faster-LIO、VoxelMap、R3LIVE、Point-LIO、KISS-ICP、DLO、DLIO、Ada-LIO、PV-LIO、SLAMesh、ImMesh、FAST-LIO-MULTI、M-LOAM,
video: Lego-LOAM vs LIO-SAM vs LVI-SAMvideo2: LIO-SAM vs LVI-SAMvideo3: LIO-SAM vs FAST-LIO2video4: FAST-LIO2 vs Livox-mapping vs LOAM-Livox using Livox Mid-70 LiDAR, real-worldvideo5: FAST-LIO2 in the building with narrow stairs using Ouster OS0-128, real-worldvideo6: FAST-LIO2 in the narrow tunnels using Ouster OS0-128 on the UAV (drone)video7: Faster-LIO vs FAST-LIO in the building with narrow stairs using Ouster OS0-128, real-worldvideo8: VoxelMap in the building using Intel Realsense L515, real-worldvideo9: R3LIVE in the building and around the building using Livox Mid-70 LiDAR, FLIR Blackfly S, Pixhawk4 mini, real-worldvideo10: FAST-LIO2 vs Ada-LIO vs Point-LIO vs KISS-ICP in the building with narrow stairs, real-worldvideo11: FAST-LIO2 vs Ada-LIO in Gazebo challenging environmentsvideo12: DLO vs FAST-LIO2video13: DLO vs DLIO vs Ada-LIO vs FAST-LIO2video15: Ada-LIO vs PV-LIO vs SLAMeshvideo16: Ada-LIO vs PV-LIOvideo17: Ada-LIO vs ImMeshvideo14: FAST-LIO-MULTI bundle update vs asynchronous updateCommon packages
$ sudo apt-get install -y ros-noetic-navigation ros-noetic-robot-localization ros-noetic-robot-state-publisher[CMake] version should be more recent than 3.20.5 for CT-ICP
$ wget https://github.com/Kitware/CMake/archive/refs/tags/v3.31.3.tar.gz
$ tar zxf v3.31.3.tar.gz
$ cd CMake-3.31.3
$ ./bootstrap
$ make
$ sudo make installGTSAM for LVI-SAM and LIO-SAM
$ wget -O gtsam.zip https://github.com/borglab/gtsam/archive/4.0.2.zip
$ unzip gtsam.zip
$ cd gtsam-4.0.2/
$ mkdir build && cd build
$ cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF -DGTSAM_USE_SYSTEM_EIGEN=ON ..
$ sudo make install -j8Ceres solver for LVI-SAM, SLAMesh, and SLICT1.0
$ sudo apt-get install -y cmake libgoogle-glog-dev libatlas-base-dev libsuitesparse-dev
$ wget http://ceres-solver.org/ceres-solver-1.14.0.tar.gz #LVI-SAM
$ wget http://ceres-solver.org/ceres-solver-2.1.0.tar.gz #SLAMesh, SLICT1.0
$ tar zxf ceres-solver-1.14.0.tar.gz #LVI-SAM
$ tar zxf ceres-solver-2.1.0.tar.gz #SLAMesh, SLICT1.0
$ mkdir ceres-bin
$ mkdir solver && cd ceres-bin
$ cmake ../ceres-solver-1.14.0 -DEXPORT_BUILD_DIR=ON -DCMAKE_INSTALL_PREFIX="../solver" #good for build without being root privileged and at wanted directory
$ make -j8 # 8 : number of cores
$ make test
$ make installCGAL and pcl-tools for R3LIVE
$ sudo apt install libcgal-dev pcl-tools
Optionally,
$ sudo apt install meshlabglog, g++-9 and gcc-9 for Faster-LIO
$ sudo apt-get install libgoogle-glog-dev
$ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
$ sudo apt update
$ sudo apt install gcc-9 g++-9
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9Ouster-ros package cannot be built with gcc and g++ with the version higher than 6,ouster-ros,catkin b -DCMAKE_C_COMPILER=gcc-6 -DCMAKE_CXX_COMPILER=g++-6 -DCMAKE_BUILD_TYPE=Release$ cd ~/your_workspace/src
$ git clone https://github.com/RobustFieldAutonomyLab/LeGO-LOAM.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release$ sudo apt install libomp-dev libpcl-dev libeigen3-dev
$ cd ~/your_workspace/src
$ git clone https://github.com/vectr-ucla/direct_lidar_odometry.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=ReleaseCT-ICP$ wget https://github.com/Kitware/CMake/archive/refs/tags/v3.31.3.tar.gz
$ tar zxf v3.31.3.tar.gz
$ cd CMake-3.31.3
$ ./bootstrap
$ make
$ sudo make install…gcc and g++ with the version higher than 9$ cd ~/your_workspace/src
$ git clone https://github.com/PRBonn/kiss-icp.git
$ git reset --hard 460c6f2
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc-9 -DCMAKE_CXX_COMPILER=g++-9gcc and g++ with the version higher than 9$ cd ~/your_workspace/src
$ git clone https://github.com/cocel-postech/genz-icp
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc-9 -DCMAKE_CXX_COMPILER=g++-9$ cd ~/your_workspace/src
$ git clone https://github.com/TixiaoShan/LIO-SAM.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release$ cd ~/your_workspace/src
$ git clone https://github.com/TixiaoShan/LVI-SAM.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=ReleaseOpenCV 4.X, edit LVI-SAM/src/visual_odometry/visual_loop/ThirdParty/DVision/BRIEF.cpp:53// cv::cvtColor(image, aux, CV_RGB2GRAY);
cv::cvtColor(image, aux, cv::COLOR_RGB2GRAY);$ cd ~/your_workspace/src
$ git clone https://github.com/Livox-SDK/livox_ros_driver.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release
$ cd ~/your_workspace/src
$ git clone --recursive https://github.com/hku-mars/FAST_LIO.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release$ cd ~/your_workspace/src
$ git clone https://github.com/gaoxiang12/faster-lio.git
$ cd faster-lio/thirdparty
$ tar -xvf tbb2018_20170726oss_lin.tgz
$ cd ~/your_workspace
$ catkin build -DCUSTOM_TBB_DIR=$(pwd)/src/faster-lio/thirdparty/tbb2018_20170726oss -DCMAKE_BUILD_TYPE=ReleaseARM architecture (e.g., Jetson Xavier)$ cd ~/your_workspace/src
$ git clone https://github.com/gaoxiang12/faster-lio.git
$ cd faster-lio/thirdparty
$ git clone https://github.com/syoyo/tbb-aarch64
$ cd tbb-aarch64
$ ./scripts/bootstrap-aarch64-linux.sh
$ cd build-aarch64
$ make && make install
$ gedit faster-lio/cmake/packages.cmake
Edit line 13 as:
#set(TBB2018_LIBRARY_DIR "${CUSTOM_TBB_DIR}/lib/intel64/gcc4.7")
set(TBB2018_LIBRARY_DIR "${CUSTOM_TBB_DIR}/lib")
$ cd ~/your_workspace
$ catkin build -DCUSTOM_TBB_DIR=$(pwd)/src/faster-lio/thirdparty/tbb-aarch64/dist -DCMAKE_BUILD_TYPE=Release$ cd ~/your_workspace/src
$ git clone https://github.com/Livox-SDK/livox_ros_driver.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release
$ git clone https://github.com/hku-mars/VoxelMap.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=Release/usr/include/lz4.h:196:57: error: conflicting declaration ‘typedef struct LZ4_stream_t LZ4_stream_t’ ...ROS-noetic. Fix as here$ sudo mv /usr/include/flann/ext/lz4.h /usr/include/flann/ext/lz4.h.bak
$ sudo mv /usr/include/flann/ext/lz4hc.h /usr/include/flann/ext/lz4.h.bak
$ sudo ln -s /usr/include/lz4.h /usr/include/flann/ext/lz4.h
$ sudo ln -s /usr/include/lz4hc.h /usr/include/flann/ext/lz4hc.h$ cd ~/your_workspace/src
$ git clone https://github.com/hku-mars/r3live.git
$ cd ..
$ catkin build -DCMAKE_BUILD_TYPE=ReleaseLiDAR incoming frame too old ...Livox-ros-driver does not publish the data with ROS timestamp, but LiDAR time.modified livox-ros-driver herelddc.cpp yourself, line 563://livox_msg.header.stamp = ros::Time((timestamp - init_lidar_tim - packet_offset_time ) / 1e9 + init_ros_time);
livox_msg.header.stamp = ros::Time::now();
/**************** Modified for R2LIVE **********************/
ros::Publisher *p_publisher = Lddc::GetCurrentPublisher(handle);
if (kOutputToRos == output_type_)
{
p_publisher->publish(livox_msg);
}Kalibr or camera_calibration
lidar_camera_calibration repo, if you want to.LiVOX LiDAR, use livox_camera_calib repobag file of LiVOX LiDAR data and capture the image from RGB camera you use.bag file into a PCD file with (change directories in the launch file):$ roslaunch livox_camera_calib bag_to_pcd.launch$ roslaunch livox_camera_calib calib.launchlivox_camera_calib should be transposed in the r3live_config.yaml file. Refer my extrinsic result and r3live config fileLeft: Target image. Right: Target PCD
Left: calibrated image and residuals. Right: calibrated image
Sensor configuration of mine: Pixhawk4
暂无开放 Issues,或尚未同步最近议题。