Bootstrap

A-LOAM运行和常见问题及解决方法

目录

一、安装依赖

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下载链接

    ceres-solver包-C++文档类资源-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修改代码
;