广东湛江网站建设,2022年中国电商行业分析报告,做影片的网站描述,石家庄谷歌seolaunch
!--//后为wiki官网的参数说明
#xff08;#xff09;中为粗读算法参数说明及理解
面临的问题常用地图有2种#xff1a;1.基于特征#xff0c;仅指明在指定位置#xff08;地图中包含的对象的位置#xff09;的环境的形状。特征表示使得调节对象的位置…launch
!--//后为wiki官网的参数说明
中为粗读算法参数说明及理解
×××面临的问题常用地图有2种1.基于特征仅指明在指定位置地图中包含的对象的位置的环境的形状。特征表示使得调节对象的位置变得简单作为附加的检测结果。这样的地图在地图构建领域很受欢迎。2.基于位置这样的地图是有体积的它们为环境中的许多位置都提供标签。不仅包括环境物体的信息也包括了对象没有物体的信息如空闲空间比较经典的占用栅格地图就是基于位置的。根据官网信息amcl采用的是结合自适应增强蒙特卡洛Augmented_MCL和库尔贝克-莱不勒散度采样KLD_Sampling_MCL蒙特卡洛定位的一个变种。1.KLD_Sampling_MCL随时间改变粒子数改良了度过初期后的蒙特卡洛大样本集合的资源浪费。两个kld_配置参数就是KLD的参数。对于每次粒子滤波迭代KLD采样以概率1-δ确定样本数1-δ就是kld_z配置参数使得真实的后验与基于采样的近似之间的误差小于εε就是kld_err配置参数.kld_z0.99,kld_err0.05,直方图位大小为15cm*15cm*15°就能取得良好的结果。2.Augmented_MCL解决的是从机器人绑架或全局定位失效中恢复的问题。两个recovery_alpha_配置参数就是用于失效恢复的。随机采样以max{0.0,1.0-w(fast)/w(slow)}概率增加。如果短期似然劣于长期似然则增加随机采样这种方法测量似然的一个突然衰减将引起随机采样的数目增加。wwα(Wavg-w)--Wavg当前测量模型的权重w为短期w(fast)或长期(w(slow))平滑估计α为与w对应的recovery_alpha_参数。--node pkgamcl typeamcl nameamcl outputscreen!-- Publish scans from best pose at a max of 10 Hz --//全部滤波器参数param namemin_particles value500/ //允许的粒子数量的最小值默认100param namemax_particles value5000/ //允许的例子数量的最大值默认5000param namekld_err value0.05/ //真实分布和估计分布之间的最大误差默认0.01param namekld_z value0.99/ //上标准分位数1-p其中p是估计分布上误差小于kld_err的概率默认0.99param nameupdate_min_d value0.2/ //在执行滤波更新前平移运动的距离默认0.2m(对于里程计模型有影响模型中根据运动和地图求最终位姿的释然时丢弃了路径中的相关所有信息已知的只有最终位姿为了规避不合理的穿过障碍物后的非零似然这个值建议不大于机器人半径。否则因更新频率的不同可能产生完全不同的结果)param nameupdate_min_a value0.5/ //执行滤波更新前旋转的角度默认pi/6 radparam nameresample_interval value1/ //在重采样前需要的滤波更新的次数,默认2param nametransform_tolerance value0.1/ //tf变换发布推迟的时间为了说明tf变换在未来时间内是可用的param namerecovery_alpha_slow value0.0/ //慢速的平均权重滤波的指数衰减频率用作决定什么时候通过增加随机位姿来recover默认0disable可能0.001是一个不错的值param namerecovery_alpha_fast value0.0/ //快速的平均权重滤波的指数衰减频率用作决定什么时候通过增加随机位姿来recover默认0disable可能0.1是个不错的值param namegui_publish_rate value10.0/ //扫描和路径发布到可视化软件的最大频率设置参数为-1.0意为失能此功能默认-1.0param namesave_pose_rate value0.5/ //存储上一次估计的位姿和协方差到参数服务器的最大速率。被保存的位姿将会用在连续的运动上来初始化滤波器。-1.0失能。param nameuse_map_topic valuefalse/ //当设置为true时AMCL将会订阅map话题而不是调用服务返回地图。也就是说当设置为true时有另外一个节点实时的发布map话题也就是机器人在实时的进行地图构建并供给amcl话题使用当设置为false时通过map server也就是调用已经构建完成的地图。在navigation 1.4.2中新加入的参数。param namefirst_map_only valuefalse/ //当设置为true时AMCL将仅仅使用订阅的第一个地图而不是每次接收到新的时更新为一个新的地图在navigation 1.4.2中新加入的参数。//激光模型参数param namelaser_min_range value-1.0/ //被考虑的最小扫描范围参数设置为-1.0时将会使用激光上报的最小扫描范围param namelaser_max_range value-1.0/ //被考虑的最大扫描范围参数设置为-1.0时将会使用激光上报的最大扫描范围param namelaser_max_beams value30/ //更新滤波器时每次扫描中多少个等间距的光束被使用减小计算量测距扫描中相邻波束往往不是独立的可以减小噪声影响太小也会造成信息量少定位不准
!--
这4个laser_z参数在动态环境下的定位时用于异常值去除技术还有一种状态增广技术-将隐藏状态包含进状态估计缺点是计算复杂acml定位未使用这种定位
这种定位思想是环境中的动态物体总是会获得比静态地图障碍物更短的读数人在障碍物后面是扫描不到的-假如不考虑体积比如单个激光光束不用考虑体积利用这样的不对称性去除异常值
缺点是在其他可改变环境的其他类型情景如去除障碍物时这样的非对称性可能不存在但相同概率分析通常是可适用的。因为每一个异常值都被舍弃了缺少对称性的缺点可能是从全局定位失效中恢复变得不可能。这种情况下×××强加额外约束如限制部分可能已被破坏的测量值是有意义的×××怎么约束。这里说的舍弃与likelihood_field模型的舍弃有区别这里定位是先计算测量值对应非预期物体的概率意外对象概率/混合概率大于用户设定的阀值amcl配置参数里貌似没有这个舍弃而似然域概率是舍弃的超出最大测量范围的值不计算概率。
针对这个缺点不想改代码的粗暴又好用省心的处理方式可能是构图的时候将可移动的障碍物搬走还有更直接的办法就是PS
最后概率由这4个权重乘他们对应的概率然后相加算法中4个权重相加等于1(这里默认值不等于1估计做了归一化)。
这6个laser_参数可以用learn_intrinsic_parameters算法计算该算法是期望值极大化算法是估计极大似然参数的迭代过程。×××好吧amcl好像并没有做这个工作
--param namelaser_z_hit value0.5/ //模型的z_hit部分的混合权值默认0.95(混合权重1.具有局部测量噪声的正确范围--以测量距离近似真实距离为均值其后laser_sigma_hit为标准偏差的高斯分布的权重)param namelaser_z_short value0.05/ //模型的z_short部分的混合权值默认0.1混合权重2.意外对象权重类似于一元指数关于y轴对称0测量距离非最大距离的部分--ηλe^(-λz)其余部分为0其中η为归一化参数λ为laser_lambda_short,z为t时刻的一个独立测量值一个测距值测距传感器一次测量通常产生一系列的测量值动态的环境如人或移动物体param namelaser_z_max value0.05/ //模型的z_max部分的混合权值默认0.05混合权重3.测量失败权重最大距离时为1其余为0如声呐镜面反射激光黑色吸光对象或强光下的测量最典型的是超出最大距离param namelaser_z_rand value0.5/ //模型的z_rand部分的混合权值默认0.05混合权重4.随机测量权重--均匀分布1平均分布到0最大测量范围完全无法解释的测量如声呐的多次反射传感器串扰param namelaser_sigma_hit value0.2/ //被用在模型的z_hit部分的高斯模型的标准差默认0.2mparam namelaser_lambda_short value0.1/ //模型z_short部分的指数衰减参数默认0.1根据ηλe^(-λz)λ越大随距离增大意外对象概率衰减越快param namelaser_likelihood_max_dist value2.0/ //地图上做障碍物膨胀的最大距离用作likelihood_field模型likelihood_field_range_finder_model只描述了最近障碍物的距离目前理解应该是在这个距离内的障碍物膨胀处理,但是算法里又没有提到膨胀不明确是什么意思.这里算法用到上面的laser_sigma_hit。似然域计算测量概率的算法是将t时刻的各个测量舍去达到最大测量范围的测量值的概率相乘单个测量概率Zh * prob(dist,σ) avgZh为laser_z_hit,avg为均匀分布概率dist最近障碍物的距离prob为0为中心标准方差为σlaser_sigma_hit的高斯分布的距离概率param namelaser_model_type valuelikelihood_field/ //模型使用可以是beam, likehood_field, likehood_field_prob和likehood_field一样但是融合了beamskip特征--官网的注释默认是“likehood_field” //里程计模型参数!--×××里程计模型并没有涉及机器人漂移或打滑的情况一旦出现这样的情况后续定位基本废了虽然Augmented_MCL有失效恢复但是实际运行中耗时太长且结果不太理想位置居然跳这很不合理可能参数配置不太好--param nameodom_model_type valuediff/ //模型使用可以是diff, omni, diff-corrected, omni-corrected,后面两 个是对老版本里程计模型的矫正相应的里程计参数需要做一定的减小param nameodom_alpha1 value0.2/ //指定由机器人运动部分的旋转分量估计的里程计旋转的期望噪声默认0.2旋转存在旋转噪声param nameodom_alpha2 value0.2/ //制定由机器人运动部分的平移分量估计的里程计旋转的期望噪声默认0.2旋转中可能出现平移噪声!-- translation std dev, m --param nameodom_alpha3 value0.8/ //指定由机器人运动部分的平移分量估计的里程计平移的期望噪声默认0.2类似上param nameodom_alpha4 value0.2/ //指定由机器人运动部分的旋转分量估计的里程计平移的期望噪声默认0.2类似上param nameodom_alpha5 value0.1/ //平移相关的噪声参数仅用于模型是“omni”的情况--wiki官网的注释param nameodom_frame_id valueodom/ //里程计默认使用的坐标系param namebase_frame_id valuebase_link/ //用作机器人的基坐标系param nameglobal_frame_id valuemap/ //由定位系统发布的坐标系名称param nametf_broadcast valuetrue/ //设置为false阻止amcl发布全局坐标系和里程计坐标系之间的tf变换//机器人初始化数据设置param nameinitial_pose_x value0.0/ //初始位姿均值x用于初始化高斯分布滤波器。initial_pose_参数决定撒出去的初始位姿粒子集范围中心param nameinitial_pose_y value0.0/ //初始位姿均值y用于初始化高斯分布滤波器。同上param nameinitial_pose_a value0.0/ //初始位姿均值yaw用于初始化高斯分布滤波器。粒子朝向param nameinitial_cov_xx value0.5*0.5/ //初始位姿协方差x*x用于初始化高斯分布滤波器。initial_cov_参数决定初始粒子集的范围param nameinitial_cov_yy value0.5*0.5/ //初始位姿协方差y*y用于初始化高斯分布滤波器。同上param nameinitial_cov_aa value(π/12)*(π/12)/ //初始位姿协方差yaw*yaw用于初始化高斯分布滤波器。粒子朝向的偏差/node
/launch