ubuntu 20.04 编译和运行A-LOAM

1.搭建文件目录和clone代码

复制代码
mkdir -p A-LOAM/src
cd A-LOAM/src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM
cd ..

2.修改代码文件

2.1 由于PCL版本1.10,将CMakeLists.txt中的C++标准改为14:

复制代码
set(CMAKE_CXX_FLAGS "-std=c++14")

2.2 将四个.cpp文件中的/camera_init修改为camera_init,/camera改成camera,/map改成map

2.3 将scanRegistration.cpp中的 #include <opencv/cv.h> 修改为#include <opencv2/imgproc.hpp>

2.4 修改kittiHelper.cpp中 CV_LOAD_IMAGE_GRAYSCALE为 cv::IMREAD_GRAYSCALE

2.5 如果编译遇到大量未找到Eigen相关错误,将四个.cpp文件中的#include <eigen3/Eigen/Dense>修改为#include <Eigen/Dense>

2.6 编译时会报错"ceres::LocalParameterization"不存在,是因为ceres版本太高了

找到报错的cpp文件替换以下内容:

复制代码
ceres::LocalParameterization *q_parameterization = new ceres::EigenQuaternionParameterization();

替换为

复制代码
ceres::Manifold *q_parameterization = new ceres::EigenQuaternionManifold();

3 在工作空间编译运行

复制代码
catkin_make
  1. 刷新环境变量和运行launch文件

    source ./devel/setup.bash
    roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch

5.再打开一个终端记录地图

复制代码
rosbag record -o bag_out /laser_cloud_map

6.下载数据集和运行数据集

数据集下载链接

在数据集目录下打开终端运行

复制代码
rosbag play <your bag name>.bag

7.效果图

8.将记录的包转换为pcd并且查看

跑完之后ctrl+c关闭记录地图的终端会生成一个bag文件,将其转化为pcd格式

复制代码
rosrun pcl_ros bag_to_pcd xxxx.bag /laser_cloud_map pcd

在生成的文件夹pcd目录下,使用pcl_viewer工具打开点云查看

复制代码
pcl_viewer XXXX.pcd

效果图:

相关推荐
拾贰_C12 小时前
【OpenClaw | openai | QQ】 配置QQ qot机器人
运维·人工智能·ubuntu·面试·prompt
念恒1230612 小时前
进程控制---自定义Shell
linux·c语言
风曦Kisaki13 小时前
# Linux Shell 编程入门 Day02:条件测试、if 判断、循环与随机数
linux·运维·chrome
郝亚军13 小时前
ubuntu 22.04如何安装libmodbus
运维·服务器·ubuntu
李日灐13 小时前
< 6 > Linux 自动化构建工具:makefile 详解 + 进度条实战小项目
linux·运维·服务器·后端·自动化·进度条·makefile
嵌入式×边缘AI:打怪升级日志13 小时前
嵌入式Linux开发:开源组件、第三方库与许可证详解
linux
计算机安禾13 小时前
【Linux从入门到精通】第34篇:搭建FTP与Samba——跨平台文件共享解决方案
linux·运维·服务器
乌恩大侠13 小时前
【AI-RAN】在空ubuntu服务器安装环境和生成TV,高达430G文件
服务器·人工智能·ubuntu·fpga开发·o-ru
日取其半万世不竭13 小时前
用 Netdata 实时监控服务器,比 Prometheus + Grafana 轻量得多
linux·服务器·网络·系统架构·负载均衡·zabbix·grafana
jamon_tan14 小时前
Linux下cmake构建方法
linux