LIO-SAM 地面分割
LIO-SAM:https://github.com/TixiaoShan/LIO-SAM.git
地面分割:无人驾驶汽车系统入门(二十四):http://t.csdn.cn/ncC64
pcd转pgm格式:https://github.com/Hinson-A/pcd2pgm_package.git
LIO-SAM貌似没有做地面分割,为了将三维PCD点云图转换为pgm格式做规划导航,本次工作参考博客提供的思路,先将输入的原始点云地面分割后,再输出到lio-sam;
未做地面分割:
地面分割:
通过对比:大部分地面点云被分割,有坡度的地方(以及动态物体)的点云还不能完全滤除。
采用直通滤波,设置Z轴阈值,将pcd转为pgm格式。
转换后的pgm图片仍有部分阴影,采用GIMP软件擦出(简单暴力):
该地图后续用于规划导航工作,定位模块还是采用LIO-SAM生成的未做地面分割的地图。
注:
LIO-SAM输入的点云格式为:PointXYZIRT
需要对pcl_test功能包里面的点云格式做相应修改:
// 自定义点云格式
struct VelodynePointXYZIRT
{
PCL_ADD_POINT4D
PCL_ADD_INTENSITY;
uint16_t ring;
float time;
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
} EIGEN_ALIGN16;
POINT_CLOUD_REGISTER_POINT_STRUCT (VelodynePointXYZIRT,
(float, x, x) (float, y, y) (float, z, z) (float, intensity, intensity)
(uint16_t, ring, ring) (float, time, time)
)
using PointXYZIRT = VelodynePointXYZIRT;
@Cyh 2022.6.18