编译环境
Ubuntu20.04 + OpenCV4.0.* + ROS noetic + gtsam4.0 + Ceres1.14.0
安装环境库
安装ros
将清华源添加到源中
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
添加公钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt update
安装ROS
# Ubuntu 20.04
sudo apt install ros-noetic-desktop-full
配置环境( 如果不配置,后续编译时会出现问题
Command 'catkin_make' not found, but can be installed with: apt install catkin
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
安装依赖库
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
sudo rosdep init
rosdep update
安装gtsam
sudo add-apt-repository ppa:borglab/gtsam-release-4.0
sudo apt install libgtsam-dev libgtsam-unstable-dev
安装Ceres(LIO不需要,但LVI-SAM需要)
sudo apt-get install -y libgoogle-glog-dev
sudo apt-get install -y libatlas-base-dev
mkdir -p /root/Dowloads
wget -O ~/Downloads/ceres.zip https://github.com/ceres-solver/ceres-solver/archive/1.14.0.zip
cd ~/Downloads/ && unzip ceres.zip -d ~/Downloads/
cd ~/Downloads/ceres-solver-1.14.0
mkdir ceres-bin && cd ceres-bin
cmake ..
sudo make install -j4
下载以及编译
下载(LIO和LVI)
mkdir -p /root/code/LIO_SAM_ws/src
cd /root/code/LIO_SAM_ws/src
git clone https://github.com/TixiaoShan/LIO-SAM.git
mkdir -p /root/code/LVI_SAM_ws/src
git clone https://github.com/TixiaoShan/LVI-SAM.git
修改代码
1. 将/LIO_SAM_ws/src/LIO-SAM下的CMakeList.txt 中,5行的 c++11 改为 c++14
2. 将/LIO_SAM_ws/src/LIO-SAM/include/utility.h 中第18行的#include <opencv/cv.h>注释掉,换成#include <opencv2/opencv.hpp>。并将 27行的#include <pcl/kdtree/kdtree_flann.h>注释掉,复制到#include <opencv2/opencv.hpp> 前
编译库
cd /root/code/LIO_SAM_ws
catkin_make
设置环境变量
echo "source ~/code/LIO_SAM_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
运行
roslaunch lio_sam run.launch