主要内容

定位和姿态估计

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

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

功能

全部展开

ahrsfilter 加速度计、陀螺仪和磁力计读数的方向
ahrs10filter 从MARG和高度计读数得到的高度和方向
complementaryFilter 从互补滤波器的方向估计
ecompass 根据磁力计和加速度计读数确定方向
imufilter 来自加速度计和陀螺仪读数的方向
insfilter 创建惯性导航滤波器
insfilterAsync 利用异步MARG和GPS数据估计姿态
insfilterErrorState 从IMU, GPS和单目视觉里程表(MVO)数据估计姿态
insfilterMARG 根据MARG和GPS数据估计姿态
insfilterNonholonomic 基于非完整约束的姿态估计
tunerconfig 融合滤波器调谐器配置选项
tunerPlotPose 在调优期间,绘图滤波器构成估计
stateEstimatorPF 创建粒子滤波状态估计器
getStateEstimate 从粒子中提取最佳状态估计和协方差
预测 预测机器人下一个时间步的状态
正确的 基于传感器测量调整状态估计
matchScans 估计两个激光扫描之间的姿态
matchScansGrid 使用基于网格的搜索估计两次激光雷达扫描之间的姿态
matchScansLine 利用线特征估计两次激光扫描之间的姿态
transformScan 基于相对位姿变换的激光扫描
lidarScan 创建存储二维激光雷达扫描的对象
monteCarloLocalization 利用距离传感器数据和地图对机器人进行定位
lidarScan 创建存储二维激光雷达扫描的对象
getParticles 从定位算法中获取粒子
odometryMotionModel 创建一个里程表运动模型
likelihoodFieldSensorModel 创建一个似然场距离传感器模型
resamplingPolicyPF 使用重采样设置创建重采样策略对象
poseGraph 创建2-D姿态图
poseGraph3D 创建3-D姿态图
addPointLandmark 在姿态图中添加地标点节点
addRelativePose 添加相对姿态到姿态图形
edgeNodePairs 姿态图中的边节点对
edgeConstraints 姿态图中的边约束
edgeResidualErrors 计算姿态图边缘残差
findEdgeID 找到边缘的ID
nodeEstimates 姿态图中节点的姿态
optimizePoseGraph 优化姿态图中的节点
removeEdges 从图中删除循环闭包边
显示 情节构成图
trimLoopClosures 优化姿态图和删除坏的循环闭包
wheelEncoderOdometryAckermann 使用车轮编码器刻度和转向角度计算阿克曼车辆里程表
wheelEncoderOdometryBicycle 使用车轮编码器滴答声和转向角度计算自行车里程表
wheelEncoderOdometryDifferentialDrive 计算差速器驱动车辆里程表使用车轮编码器滴答
wheelEncoderOdometryUnicycle 计算独轮车里程表使用车轮编码器滴答声和角速度

主题

传感器融合

使用头部跟踪的双耳音频渲染

通过融合IMU接收到的数据跟踪头部方向,然后应用头部相关传递函数(HRTF)控制声源的到达方向。

通过惯性传感器融合估计方向

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

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

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

利用四元数SLERP定位低通滤波器

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

来自异步传感器的姿态估计

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

选择惯性传感器融合滤波器

惯性传感器融合滤波器的适用性与局限性。

使用互补滤波器和IMU数据估计方向

这个例子展示了如何从Arduino流IMU数据,并使用互补滤波器估计方向。

基于惯性传感器融合和MPU-9250的定位估计

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

基于BNO055的无线数据流与传感器融合

本例展示了如何通过HC-05蓝牙®模块从博世BNO055 IMU传感器获取数据,并对传感器数据使用9轴AHRS融合算法计算设备的方位。

自定义调整融合滤波器

使用调优功能优化的噪声参数的几个融合滤波器,包括ahrsfilter对象。

定位算法

使用蒙特卡罗定位法定位乌龟机器人

这个例子演示了蒙特卡罗定位(MCL)算法在模拟Gazebo®环境中的TurtleBot®上的应用。

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

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

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

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

使用姿态图减少3-D视觉里程表轨迹漂移

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

蒙特卡罗定位算法

采用蒙特卡罗定位(MCL)算法估计机器人的位置和姿态。

粒子滤波参数

使用stateEstimatorPF(机器人系统工具箱)粒子滤波器,必须指定粒子数、粒子初始位置和状态估计方法等参数。

粒子滤波的工作流

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

特色的例子