目录
一、安装依赖
1、安装Ceres Solver
1.1安装依赖
1.2下载Ceres包
1.3安装Ceres
2安装PCL库
二、编译A-LOAM算法
1、构建ROS工作空间
2、对nsh_indoor_outdoor.bag建图
2.1修改代码
2.2运行程序
2.3建图
三、遇到的问题及解决方法
1、PCL库的问题
2、编译内存不足
3、rviz只显示绿色轨迹线
********************************** 运行环境Ubuntu20.04+Noetic ************************************
一、安装依赖
1、安装Ceres Solver
1.1安装依赖
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3 libgflags-dev libgoogle-glog-dev libgtest-dev
1.2下载Ceres包
-
github下载或科隆
https://github.com/ceres-solver/ceres-solver
-
github打不开或者下载慢,CSDN下载链接
1.3安装Ceres
- 解压
- 编译
mkdir build
cd build
cmake ..
make
- 安装
sudo make install
2安装PCL库
ubuntu20.04默认安装的是pcl_1.10 ,但是需要再安装一下,否则编译A-LOAM会报错。
sudo apt install libpcl-dev
二、编译A-LOAM算法
1、构建ROS工作空间
为节省算法编译时间,可以把src文件夹下原有的文件剪切出去,或者将工作空间命名成其他的。
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
2、对nsh_indoor_outdoor.bag建图
2.1修改代码
- 将四个.cpp文件中"
/camera_init"的反斜杠"/"删掉,否则在运行时只有轨迹绿线
- 将scanRegistration.cpp中的 #include <opencv/cv.h> 修改为#include <opencv2/imgproc.hpp>
- 将kittiHelper.cpp中 CV_LOAD_IMAGE_GRAYSCALE修改为 cv::IMREAD_GRAYSCALE,否则会出现cv相关的错误
catkin_make
source devel/setup.bash
2.2运行程序
执行launch文件,启动roscore、rviz和A-LOAM节点
roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
2.3建图
暂时只跑了nsh_indoor_outdoor.bag
下载链接: https://pan.baidu.com/s/1hQqhmpB4wRc5kyJ_QCx94A 提取码: fq6u
在bag包的保存位置打开终端,执行启动文件。
rosbag play nsh_indoor_outdoor.bag
三、遇到的问题及解决方法
1、PCL库的问题
- 原因:pcl库有问题
- 解决方法:见本文“2 安装PCL库”
2、编译内存不足
c++: internal compiler error: 已杀死 (program cc1plus)
- 原因:电脑内存不足。本人笔记本4G内存,双系统,编译不动……
- 解决方法:若无其他错误,多编译几次
3、执行launch失败
- 原因:没有执行初始化命令
- 解决方法:source devel/setup.bash,并在source的这个终端执行launch
4、rviz只显示绿色轨迹线
- 原因:frame id的问题
- 解决方法:见本文“2.1修改代码”