1、安装依赖项
- 参考之前的博客:【安装学习】ubuntu20.04与A-LOAM:01-安装ceres-solver
- 注意!仅需顺序执行之前博客操作即可,不需要自行再次源码安装诸如eigen3之类的软件包(通过
sudo apt-get
安装即可)
2、修改代码内容
- 将四个
.cpp
文件中的/camera_init
修改为camera_init
- 将
scanRegistration.cpp中的 #include <opencv/cv.h>
修改为#include <opencv2/imgproc.hpp>
- 修改
kittiHelper.cpp
中CV_LOAD_IMAGE_GRAYSCALE
为cv::IMREAD_GRAYSCALE
- 无论之前是否已经
catkin_make
编译过,都需要重新编译,即删除build/
和devel/
文件夹后重新执行catkin_make
以使上方的ceres
库生效 - 若版本是
ubuntu20.04 ros-noetic
,也可以使用我修改后的fork仓库:https://github.com/QianYuan1437/A-LOAM-NOTED.git 注意branch
3、测试与保存
- 下载测试
ROSBAG
:https://drive.google.com/file/d/1s05tBQOLNEDDurlg48KiUWxCp-YqYyGH/view - 开启三个终端:注意运行顺序,先1再2最后3
- 1、
roscore
- 2、
roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
- 3、
rosbag play nsh_indoor_outdoor.bag
- 1、
- 如果需要保存点云信息,则需开启第四个终端
- 4、有以下两种方法,但注意运行顺序为1,2,4,3运行结束,可以看到生成了一个pcd文件夹,将里面的文件按照修改时间排序,最新的就是最后的点云地图pcd文件。
1
2#另起终端用bag_to_pcd方法保存点云图
rosrun pcl_ros bag_to_pcd xxx.bag /laser_cloud_surround pcd1
2
3
4#另起终端,用pointcloud_to_pcd方法保存点云图
mkdir pcd
cd pcd
rosrun pcl_ros pointcloud_to_pcd input:=/laser_cloud_surround
- 4、有以下两种方法,但注意运行顺序为1,2,4,3
- 点云地图查看:pcd点云地图转ply格式
1
pcl_viewer xxx.pcd
当我们需要用第三方软件(MatLab/MeshLab)对点云地图进行处理时就需要将pcd转为ply,其中MeshLab必须使用由pointcloud_to_pcd方法创建pcd转成的ply格式点云!1
pcl_pcd2ply xxx.pcd xxxxxxx.ply
4、参考链接
- https://blog.csdn.net/studentu/article/details/119634149
- https://blog.csdn.net/weixin_43910370/article/details/120736760
- https://blog.csdn.net/weixin_43807148/article/details/113739347
- https://blog.csdn.net/weixin_44156680/article/details/117705830