MRPT中的RBPF-SLAM解决方案
1. pfStandardProposal
: 基于标准提议分布的序贯重要性重采样算法&任意类型的度量地图
Description: The pfStandardProposal
algorithm can be used with any metric map or combination of several of them simultaneously, provided that an observation likelihood function is implemented for the sensor observations in each map. This algorithm however is not recommendable since the “standard” proposal distribution is the motion model (the “actions“), and most of the particles will end up in areas incompatible with the observations, and thus, resampling will occur quite often. Only use this algorithm if the motion model is known to be very precise. Example config files:
2. pfAuxiliaryPFOptimal
: 基于任意类型度量地图的近似最优提议分布算法
Description: The pfAuxiliaryPFOptimal
algorithm (introduced in this and this papers) can be used with any metric map or combination of several of them simultaneously, provided that an observation likelihood function is implemented for the sensor observations in each map. The algorithm will automatically approximate the optimal proposal distribution disregarding the quality of the motion model. However, the worse the motion model, the longer it will take to run each iteration. Example config files:
$MRPT/share/mrpt/config_files/rbpf-slam/gridmapping_optimal_sampling.ini
: Grid mapping example with one SICK laser scanner and one mid-sized (~100m long) loop closure.$MRPT/share/mrpt/config_files/rbpf-slam/example_3_gridmaps.ini
: Three grid maps for three horizontal laser scanners at different heights.
Example of gridmapping with a RBPF (rbpf-slam app).
3. pfOptimalProposal
: 基于栅格地图的最优提议分布算法
Description: The pfOptimalProposal
algorithm for grid maps corresponds to the heuristic approximation of the optimal proposal introduced by G. Grisetti et al. in: “Improved Techniques for Grid Mapping With Rao-Blackwellized Particle Filters”, Grisetti, G. Stachniss, C. Burgard, W. IEEE TRANSACTIONS ON ROBOTICS (2007) – PDF The implementation in MRPT relies on a version of ICP for gridmaps. An alternative implementation (independent of MRPT) is the popular gmapping. Note: pfOptimalProposal
requires setting the parameter pfOptimalProposal_mapSelection
(see example config files for details). Example config files:
$MRPT/share/mrpt/config_files/rbpf-slam/gridmapping_RBPF_grid_ICPbased_malaga.ini
: Grid mapping with a mid-sized loop closure.
4. pfOptimalProposal
: 基于点图的最优提议分布算法
Description: The pfOptimalProposal
algorithm for point maps is a version of the Grisetti et al.’s idea, but applied to point clouds (faster to update than grid maps). AFAIK, this method hasn’t been published in the literature, but works quite fine. Note: pfOptimalProposal
requires setting the parameter pfOptimalProposal_mapSelection
(see example config files for details). Example config files:
$MRPT/share/mrpt/config_files/rbpf-slam/gridmapping_RBPF_ICPbased_malaga.ini
: Point cloud mapping with a mid-sized loop closure.