【MSFL】1:A-LOAM:从安装到测试

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.cppCV_LOAD_IMAGE_GRAYSCALEcv::IMREAD_GRAYSCALE
  • 无论之前是否已经catkin_make编译过,都需要重新编译,即删除build/devel/文件夹后重新执行catkin_make以使上方的ceres库生效
  • 若版本是ubuntu20.04 ros-noetic,也可以使用我修改后的fork仓库:https://github.com/QianYuan1437/A-LOAM-NOTED.git 注意branch

3、测试与保存

  • 下载测试ROSBAGhttps://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
  • 如果需要保存点云信息,则需开启第四个终端
    • 4、有以下两种方法,但注意运行顺序为1,2,4,3
      1
      2
      #另起终端用bag_to_pcd方法保存点云图
      rosrun pcl_ros bag_to_pcd xxx.bag /laser_cloud_surround pcd
      运行结束,可以看到生成了一个pcd文件夹,将里面的文件按照修改时间排序,最新的就是最后的点云地图pcd文件。
      1
      2
      3
      4
      #另起终端,用pointcloud_to_pcd方法保存点云图
      mkdir pcd
      cd pcd
      rosrun pcl_ros pointcloud_to_pcd input:=/laser_cloud_surround
  • 点云地图查看:
    1
    pcl_viewer xxx.pcd
    pcd点云地图转ply格式
    1
    pcl_pcd2ply xxx.pcd xxxxxxx.ply
    当我们需要用第三方软件(MatLab/MeshLab)对点云地图进行处理时就需要将pcd转为ply,其中MeshLab必须使用由pointcloud_to_pcd方法创建pcd转成的ply格式点云!

4、参考链接

5、MSFL测试参考链接