本文主要是介绍ubuntu20.04跑A-LOAM代码实测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.首先前提已经按照上一篇文章已经安装好了ROS,接下来请跟我一起来跑一下这个算法,
点开这个Github开源地址:https://github.com/HKUST-Aerial-Robotics/A-LOAM
首先根据代码要求,需要提前安装两个,Ceres和PCL。
2.点击Ceres,这里会出现其网站,然后你会发现,给的克隆地址一直显示无法连接,这里直接点You can start with the latest stable release ,这样浏览器会直接把包给下载下来。
然后根据下面的代码安装:
# CMake
sudo apt-get install cmake
# google-glog + gflags
sudo apt-get install libgoogle-glog-dev libgflags-dev
# BLAS & LAPACK
sudo apt-get install libatlas-base-dev
# Eigen3
sudo apt-get install libeigen3-dev
# SuiteSparse and CXSparse (optional)
sudo apt-get install libsuitesparse-dev
然后再:
tar zxf ceres-solver-2.0.0.tar.gz
mkdir ceres-bin
cd ceres-bin
cmake ../ceres-solver-2.0.0
make -j3
make test
# Optionally install Ceres, it can also be exported using CMake which
# allows Ceres to be used without requiring installation, see the documentation
# for the EXPORT_BUILD_DIR option for more information.
make install
3.PCL网址也不行了,可以直接去CSDN里搜ubuntu20.04安装PCL库教程,按照上面的去做就可以了。
4接下来就应该是跑代码环节了:
首先要创建一个文件夹,我为了方便就
mkdir catkin_ws
cd catkin_ws
mkdir src
cd src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
这里如果下载不下来就自己百度dowm一个源码,下载完源码后直接编译是不能通过的,需要进行一些修改才行。
这里的图片知乎号就是本人的啊,实在不想写两份文章了。
5.修改方法:
- 将四个.cpp文件中的
/camera_init
修改为camera_init
- 将
scanRegistration.cpp
中的#include <opencv/cv.h>
修改为#include <opencv2/imgproc.hpp>
- 修改
kittiHelper.cpp
中CV_LOAD_IMAGE_GRAYSCALE
为cv::IMREAD_GRAYSCALE
6.编译源码
cd ~/catkin_ws/
catkin_make
如果报错的话,是关于这些的话,
error: #error PCL requires C++14 or above
请打开catkin_ws->src->a-loam->CMakeLists.txt中添加,如下指令即可成功编译
set( CMAKE_CXX_STANDARD 14)
7.测试
下载nsh_indooroutdoor.bag 测试数据到你的 DATA文件夹中,然后在lunch文件中打开终端运行如下:
roslaunch aloam_velodyne_VLP_16.launch
再在data文件夹下打开终端:
rosbag play nsh_indoor_outdoor.bag
8.本文章也是作者参考很多文章(比如古月居),亲自实测出来的,也非常感谢这些博主,也希望自己能在SLAM领域里稳扎稳打,学到真本领。特意写此文章,记录一下流程,也给后面的朋友们提供力所能及的帮助。
这篇关于ubuntu20.04跑A-LOAM代码实测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!