amcl+ICP融合思路

阅读论文high-accuracy vehicle localization.....

d_mi是由激光传感器获取的第i个点离激光传感器的距离。对应amcl代码的ldata.range[i][0],

a_min对应angle_min, delta=angle_increment.

公式中的a_min+delta*i其实就对应着ldata.range[i][1];

x_oi,y_oi是地图中障碍物占据的坐标,x_e,y_e和theta_e是机器人估计的位姿,公式中的d_vi和i是需要求的,d_vi代表虚拟的测量距离,i是对应虚拟测量距离对应的第i个测量距离。由d_vi和i来结合公式(3)求得虚拟的第二个点云(x_vi,y_vi)。由两个点云来当做ICP算法的的输入!

机器人估计的位子中,x_e=p.pose.pose.position.x, y_e=p.pose.pose.position.y,theta_e=p.pose.pose.orientation(这是用  四元数表示的方向).


  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要将一个launch文件中的所有的amcl启动改为icp,你需要进行以下步骤: 1. 打开该launch文件,找到所有与amcl相关的节点,例如: ``` <node pkg="amcl" type="amcl" name="amcl" output="screen"> <param name="odom_model_type" value="diff"/> <param name="odom_alpha1" value="0.2"/> <param name="odom_alpha2" value="0.2"/> <param name="odom_alpha3" value="0.2"/> <param name="odom_alpha4" value="0.2"/> <param name="laser_model_type" value="likelihood_field"/> <param name="laser_likelihood_max_dist" value="2.0"/> <param name="laser_max_beams" value="30"/> <param name="laser_z_hit" value="0.95"/> <param name="laser_z_short" value="0.1"/> <param name="laser_z_max" value="0.05"/> <param name="laser_z_rand" value="0.05"/> <param name="min_particles" value="100"/> <param name="max_particles" value="500"/> <param name="update_min_d" value="0.2"/> <param name="update_min_a" value="0.5"/> <param name="resample_interval" value="1"/> <param name="transform_tolerance" value="0.2"/> </node> ``` 2. 将上述节点中的 `type` 属性从 `amcl` 改为 `icp`,例如: ``` <node pkg="icp" type="icp_localization" name="icp" output="screen"> <param name="odom_frame_id" value="odom"/> <param name="base_frame_id" value="base_link"/> <param name="global_frame_id" value="map"/> <param name="min_particles" value="100"/> <param name="max_particles" value="500"/> <param name="update_min_d" value="0.2"/> <param name="update_min_a" value="0.5"/> <param name="resample_interval" value="1"/> <param name="transform_tolerance" value="0.2"/> </node> ``` 3. 如果还有其他与amcl相关的节点,在该launch文件中也需要将其改为与icp相关的节点。 4. 保存该launch文件并重新启动你的程序。 这样做就可以将一个launch文件中的所有的amcl启动改为icp
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值