目录
1. 前提
在Ubuntu18.04上安装ROS开发环境,版本为melodic。
具体安装详见: ROS学习01.初识ROS
2. hdl_graph_slam
Github地址:hdl_graph_slam
2.1 安装依赖
- ros 开发依赖
sudo apt-get install ros-melodic-geodesy ros-melodic-pcl-ros ros-melodic-nmea-msgs ros-melodic-libg2o
- 第三方依赖(注意:第三方依赖文件不要下载到src文件中github地址
)
g2o:下载g2o最新版本源码,进行编译安装。Github地址:g2o
cd g2o
mkdir build
cd build
cmake ..
make -j8
sudo make install
其余第三方依赖Ubuntu系统中已经安装,不用重复安装。
PCL:可以在文件中搜索pcl,如果存在pcl,说明已经安装。如果不存在,考虑经常pcl源码安装。
参考文章:Ubuntu18.04安装PCL
#安装依赖
sudo apt-get update
sudo apt-get install git build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.8 libflann-dev
sudo apt-get install libeigen3-dev 这个需要自己下载正确版本安装
sudo apt-get install libboost-all-dev
sudo apt-get install libvtk7.1-qt libvtk7.1 libvtk7-qt-dev
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
sudo apt-get install openjdk-8-jdk openjdk-8-jre
git clone https://github.com/PointCloudLibrary/pcl.git
cd pcl
mkdir release
cd release
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_GPU=ON-DBUILD_apps=ON -DBUILD_examples=ON \ -DCMAKE_INSTALL_PREFIX=/usr ..
make -j8
sudo make install
2.2 安装hdl_graph_slam
下载关联功能包
cd sx_ws/src
git clone https://github.com/koide3/ndt_omp.git
git clone https://github.com/SMRT-AIST/fast_gicp.git --recursive
git clone https://github.com/koide3/hdl_graph_slam.git
编译:
cd ~/sx_ws
catkin_make_isolated
如果在编译hdl_graph_slam的过程中出现卡顿,而导致编译失败。是由于cpu的性能不足,可以考虑如下先只编译hdl_graph_slam:
catkin_make_isolated --pkg=hdl_graph_slam
catkin_make_isolated
注意:在单独编译前,必须先整体编译,否则不能进行单独编译。对于难编译的功能包,可以一个一个放入src文件中进行编译,等价于单独编译。
3. hdl_localization
cd ~/sx_ws/src
git clone https://github.com/koide3/hdl_localization.git
cd ~/sx_ws
catkin_make_isolated
4. hdl_people_tracking
cd ~/sx_ws/src
git clone https://github.com/koide3/hdl_people_tracking.git
cd ~/sx_ws
catkin_make_isolated
5. interactive_slam
5.1 安装依赖
- ros相关依赖
# for ROS melodic
sudo apt-get install libglm-dev libglfw3-dev
sudo apt-get install ros-melodic-geodesy ros-melodic-pcl-ros ros-melodic-nmea-msgs ros-melodic-libg2o
- 第三方依赖
GL3W:github地址
下载最新版本,进行编译安装。
cd gl3w
mkdir build
cd build
cmake ..
make ..
sudo make install
GLFW:github地址
下载最新版本,进行编译安装。
cd gl3w
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_SHARED_LIBS=ON ..
make ..
sudo make install
注意:cmake时,必须添加 -D BUILD_SHARED_LIBS=ON
,进行动态编译,否则interactive_slam在编译时会报错。
5.2 编译interactive_slam
下载相关功能包
cd ~/sx_ws/src
git clone https://github.com/koide3/ndt_omp
git clone https://github.com/koide3/hdl_graph_slam
git clone https://github.com/koide3/odometry_saver
git clone https://github.com/SMRT-AIST/interactive_slam --recursive
编译:
cd ~/sx_ws
catkin_make -DCMAKE_BUILD_TYPE=Release