参考官网 Tuning methodology
通用调参
参数的物理含义
传感器输入部分
TRAJECTORY_BUILDER_nD.min_range
TRAJECTORY_BUILDER_nD.max_range
激光雷达数据的有效范围,需根据传感器参数和机器人工作场景确定。
TRAJECTORY_BUILDER_2D.missing_data_ray_length
当传感器数据超出有效范围最大值时,按此值来处理。默认配置为8m,小于最大距离30m。
TRAJECTORY_BUILDER_2D.max_z
TRAJECTORY_BUILDER_2D.min_z
将3D多线激光雷达的z轴数据,投影至平面,当做2D激光雷达使用。
TRAJECTORY_BUILDER_nD.num_accumulated_range_data
积累到这个数量的点云信息后,执行一次匹配scan_match,将有效点云插入局部地图InsertIntoSubmap().
匹配频率越高(累积数值小)映射畸变越小,每一scan数据越多,越利于匹配。
TRAJECTORY_BUILDER_nD.voxel_filter_size
由于激光雷达的基于原点旋转扫描采样,距离近的障碍物采集数据密集,距离远的障碍物采集点稀疏,为保证远近障碍物权重一致,需做处理。
采用体素滤波器进行降采样机制,使得局部稠密的点变得稀疏。此值越小,得到的数据越稠密,但是计算量越高;此值越大,丢失数据越多,但计算更快。
思考:针对不同性能(分辨率不同,采集频率不同)的激光雷达,这个数值如何设置?
TRAJECTORY_BUILDER_nD.*adaptive_voxel_filter.max_length
TRAJECTORY_BUILDER_nD.*adaptive_voxel_filter.min_num_points
自适应体素滤波器adaptive voxel filter参数配置,自适应得出的参数在配置参数范围内。
TRAJECTORY_BUILDER_2D.use_imu_data
TRAJECTORY_BUILDER_nD.imu_gravity_time_constant
2D SLAM 可选 IMU;3D SLAM 必选 IMU。
局部local SLAM部分
两种匹配策略:
CeresScanMatcher:用于高质量的传感器场合;
RealTimeCorrelativeScanMatcher:用于传感器质量较差场合,该算法拥有类似于回环检测的特点,具有环境鲁棒性,但耗费计算资源。
CeresScanMatcher的权重配置
TRAJECTORY_BUILDER_nD.ce