定位和姿态估计

惯性导航,姿态估计,扫描匹配,蒙特卡罗定位

使用定位和姿态估计算法在您的环境中定位您的车辆。传感器姿态估计使用过滤器来改进和合并IMU、GPS和其他传感器的读数。定位算法,如蒙特卡罗定位和扫描匹配,估计您的姿态在一个已知的地图使用距离传感器或激光雷达读数。姿态图跟踪您估计的姿态,可以根据边缘约束和循环闭包进行优化。有关同步本地化和映射,请参阅大满贯

功能

全部展开

ahrsfilter 来自加速度计、陀螺仪和磁强计读数的方向
ahrs10filter 从MARG和高度计读数中获得高度和方向
complementaryFilter 互补滤波器的方向估计
ecompass 磁强计和加速度计读数的方向
imufilter 来自加速度计和陀螺仪读数的方向
insfilter 创建惯性导航滤波器
insfilterAsync 利用异步MARG和GPS数据估计姿态
insfilterErrorState 通过IMU、GPS和单目视觉测程(MVO)数据估计姿态
insfilterMARG 根据MARG和GPS数据估计姿态
insfilterNonholonomic 非完整约束条件下的姿态估计
stateEstimatorPF 创建粒子滤波状态估计器
getStateEstimate 从粒子中提取最佳状态估计和协方差
预测 预测机器人下一步的状态
正确的 根据传感器测量调整状态估计
matchScans 估计两次激光扫描之间的位姿
matchScansGrid 使用基于网格的搜索估计两个激光雷达扫描之间的位姿
matchScansLine 利用线特征估计两次激光扫描之间的位姿
transformScan 基于相对位姿变换激光扫描
lidarScan 创建对象存储2-D激光雷达扫描
monteCarloLocalization 使用距离传感器数据和地图定位机器人
lidarScan 创建对象存储2-D激光雷达扫描
getParticles 从定位算法中获取粒子
odometryMotionModel 创建一个测程运动模型
likelihoodFieldSensorModel 创建一个似然场距离传感器模型
navParticleResamplingPolicy 使用重新取样设置创建重新取样策略对象
poseGraph 创建二维姿态图
poseGraph3D 创建3-D姿态图
addScan 添加扫描到激光雷达大满贯地图
addRelativePose 向位姿图添加相对位姿
optimizePoseGraph 优化位姿图中的节点
removeLoopClosures 从位姿图中删除循环闭包
scansAndPoses 提取扫描和相应的姿势

主题

传感器融合

通过惯性传感器融合估计定位

这个例子展示了如何使用6轴和9轴融合算法来计算方向。

记录传感器数据对齐以进行方向估计

这个例子展示了如何对齐和预处理记录的传感器数据。

低通滤波器定向使用四元数SLERP

这个例子展示了如何使用球面线性插值(SLERP)来创建四元数序列和低通滤波器噪声轨迹。

异步传感器的姿态估计

这个示例展示了如何以不同的速率融合传感器来估计姿态。

估计方向与互补的过滤器和IMU数据

这个例子展示了如何从Arduino中传输IMU数据,并使用一个互补的过滤器来估计方向。

使用惯性传感器融合和MPU-9250估计方位

这个例子展示了如何从InvenSense的MPU-9250 IMU传感器获取数据,并在传感器数据中使用6轴和9轴融合算法来计算设备的方向。

定位算法

组成一系列的激光扫描与姿态的变化

使用matchScans函数计算一系列激光扫描之间的位姿差。

利用IMU实现基于网格的激光雷达扫描匹配中搜索范围的最小化

这个例子展示了如何使用惯性测量单元(IMU)来最小化扫描匹配算法旋转角度的搜索范围。

利用姿态图减少三维视觉测程弹道中的漂移

这个例子展示了如何使用3d位姿图优化来减少单目相机估计轨迹(位置和方向)中的漂移。

蒙特卡罗定位算法

利用蒙特卡罗定位(MCL)算法来估计机器人的位置和方向。

粒子滤波参数

使用stateEstimatorPF粒子过滤器,你必须指定参数,如粒子的数目,粒子的初始位置,和状态估计方法。

粒子滤波的工作流

粒子滤波器是一种递归的贝叶斯状态估计器,它使用离散粒子来近似估计状态的后验分布。

特色的例子