ROS篇——amcl定位算法参数详解

  • odom_model_type (string, default: “diff”):odom 模型定义,可以是"diff", “omni”, “diff-corrected”, “omni-corrected”,后面两个是对老版本里程计模型的矫正,相应的里程计参数需要做一定的减小。

  • odom_alpha5 (double, default: 0.2):平移相关的噪声参数(仅用于模型是"omni"的情况,就是当你的机器人是全向移动时才需要设置该参数,否则就设置其为 0.0)

  • gui_publish_rate (double, default: -1.0 Hz):扫描和路径发布到可视化软件的最大频率,设置参数为-1.0 意为失能此功能,默认-1.0。

  • laser_max_beams (int, default: 30):更新滤波器时,每次扫描中多少个等间距的光束被使用(减小计算量,测距扫描中相邻波束往往不是独立的可以减小噪声影响,太小也会造成信息量少定位不准)。

  • laser_max_range (double, default: -1.0):最大扫描范围,参数设置为-1.0 时,将会使用激光上报的最大扫描范围。

  • min_particles (int, default: 100):滤波器中的最少粒子数,值越大定位效果越好,但是相应的会增加主控平台的计算资源消耗。

  • max_particles (int, default: 5000):滤波器中最多粒子数,是一个上限值,因为太多的粒子数会导致系统资源消耗过多。

  • kld_err (double, default: 0.01):真实分布与估计分布之间的最大误差。

  • kld_z (double, default: 0.99):上标准分位数(1-p),其中 p 是估计分布上误差小于 kld_err 的概率,默认 0.99。

  • odom_alpha1 (double, default: 0.2):指定由机器人运动部分的旋转分量估计的里程计旋转的期望噪声,默认 0.2(旋转存在旋转噪声)。

  • odom_alpha2 (double, default: 0.2):机器人运动部分的平移分量估计的里程计旋转的期望噪声,默认 0.2(旋转中可能出现平移噪声)。

  • odom_alpha3 (double, default: 0.2):机器人运动部分的平移分量估计的里程计平移的期望噪声,如(double, default: 0.2):机器人运动部分的平移分量估计的里程计平移的期望噪声,如果你自认为自己机器人的里程计信息比较准确那么就可以将该值设置的很小。

  • odom_alpha4 (double, default: 0.2):机器人运动部分的旋转分量估计的里程计平移的期望噪声,你设置的这 4 个 alpha 值越大说明里程计的误差越大。

  • laser_z_hit (double, default: 0.95):模型的 z_hit 部分的混合权值,默认 0.95(混合权重 1.具有局部测量噪声的正确范围–以测量距离近似真实距离为均值,其后 laser_sigma_hit 为标准偏差的高斯分布的权重)。

  • laser_z_short (double, default: 0.1):模型的z_short 部分的混合权值,默认 0.1(混合权重 2.意外对象权重(类似于一元指数关于 y 轴对称 0~测量距离(非最大距离)的部分:–ηλe^(-λz),其余部分为0,其中 η 为归一化参数,λ 为 laser_lambda_short,z 为 t 时刻的一个独立测量值(一个测距值,测距传感器一次测量通常产生一系列的测量值)),动态的环境,如人或移动物体)。

  • laser_z_max (double, default: 0.05):模型的z_max 部分的混合权值,默认 0.05(混合权重 3.测量失败权重(最大距离时为 1,其余为 0),如声呐镜面反射,激光黑色吸光对象或强光下的测量,最典型的是超出最大距离)。

  • laser_z_rand (double, default: 0.05):模型的 z_rand 部分的混合权值,默认 0.05(混合权重 4.随机测量权重–均匀分布(1 平均分布到 0~最大测量范围),完全无法解释的测量,如声呐的多次反射,传感器串扰)。

  • laser_sigma_hit (double, default: 0.2 meters):被用在模型的z_hit 部分的高斯模型的标准差,默认0.2m。

  • laser_lambda_short (double, default: 0.1):模型 z_short 部分的指数衰减参数,默认 0.1(根据ηλe^(-λz),λ 越大随距离增大意外对象概率衰减越快)。

  • laser_model_type (string, default: “likelihood_field”):激光模型类型定义,可以是 beam, likehood_field, likehood_field_prob(和 likehood_field 一样但是融合了beamskip 特征–官网的注释),默认是"likehood_field" 。

  • laser_likelihood_max_dist (double, default: 2.0 meters):地图上做障碍物膨胀的最大距离,用作likelihood_field 模(likelihood_field_range_finder_model 只描述了最近障碍物的距离,(目前理解应该是在这个距离内的障碍物膨胀处理,但是算法里又没有提到膨胀,不明确是什么意思).这里算法用到上面的laser_sigma_hit。似然域计算测量概率的算法是将 t 时刻的各个测量(舍去达到最大测量范围的测量值) 的概率相乘,单个测量概率:Zh * prob(dist,σ) +avg,Zh 为 laser_z_hit,avg 为均匀分布概率,dist 最近障碍物的距离,prob 为 0 为中心标准方差为 σ(laser_sigma_hit)的高斯分布的距离概率。

  • update_min_d (double, default: 0.2 meters):在执行滤波更新前平移运动的距离,默认 0.2m(对于里程计模型有影响,模型中根据运动和地图求最终位姿的似然时丢弃了路径中的相关所有信息,已知的只有最终位姿,为了规避不合理的穿过障碍物后的非零似然,这个值建议不大于机器人半径,否则因更新频率的不同可能产生完全不同的结果)。

  • update_min_a (double, default: π/6.0 radians):执行滤波更新前旋转的角度。

  • resample_interval (int, default: 2):在重采样前需要滤波更新的次数。

  • transform_tolerance (double, default: 1.0):坐标系间的转换可以忍受的最大延时;

  • recovery_alpha_slow (double, default: 0.0 (disabled)):慢速的平均权重滤波的指数衰减频率,用作决定什么时候通过增加随机位姿来 recover,默认 0(disable),可能 0.001 是一个不错的值。

  • recovery_alpha_fast (double, default: 0.0 (disabled)):快速的平均权重滤波的指数衰减频率,用作决定什么时候通过增加随机位姿来 recover,默认 0(disable),可能 0.1 是个不错的值。

你可能感兴趣的:(ROS篇,算法,机器人)