主要内容

初始化

初始化粒子滤波的状态

描述

例子

初始化(pf,numParticles,的意思是,协方差)初始化粒子滤波对象,pf指定数量的粒子,numParticles。在状态空间中粒子的初始状态是由抽样从指定的多元正态分布的意思是协方差

初始化(pf,numParticles,stateBounds)确定粒子的初始位置的样本多元均匀分布在指定stateBounds

初始化(___、名称、值)初始化粒子由一个或多个指定附加选项名称,值对参数。

例子

全部折叠

创建一个stateEstimatorPF对象和执行状态估计的预测和校正步骤。粒子滤波给出了预测状态估计基于的返回值StateTransitionFcn。它纠正了国家基于给定的测量和的返回值MeasurementLikelihoodFcn

创建一个默认的粒子滤波三种状态。

pf = stateEstimatorPF
pf = stateEstimatorPF属性:NumStateVariables: 3 NumParticles: 1000 StateTransitionFcn: @nav.algs。gaussianMotion MeasurementLikelihoodFcn: @nav.algs。fullStateMeasurement IsStateVariableCircular: [0 0 0] ResamplingPolicy: [1 x1 resamplingPolicyPF] ResamplingMethod:“多项式”StateEstimationMethod:“的意思是”StateOrientation:“行”粒子:[1000 x3双)重量:[1000 x1双]状态:“使用getStateEstimate函数值。“StateCovariance:“使用getStateEstimate函数的值。

指定的意思是状态估计方法和系统重采样方法。

pf.StateEstimationMethod =“的意思是”;pf.ResamplingMethod =“系统”;

初始化粒子滤波在状态协方差(4 1 9)与单位((3))。使用5000个粒子。

初始化(pf, 5000,(4 1 9),眼(3));

假设测量[4.2 - 0.9 9],运行一个预测和一个正确的一步。

[statePredicted, stateCov] =预测(pf);[stateCorrected, stateCov] =正确(pf, 9 [4.2 - 0.9]);

得到最好的状态估计的基础上StateEstimationMethod算法。

状态= getStateEstimate (pf)
状态=1×34.1562 0.9185 9.0202

输入参数

全部折叠

stateEstimatorPF对象,指定为一个句柄。看到stateEstimatorPF为更多的信息。

数量的粒子滤波器中使用,指定为一个标量。

的粒子分布,指定为一个向量。的NumStateVariables的属性pf基于这个向量的长度。

协方差的粒子分布,指定为一个N——- - - - - -N矩阵,N的值是NumStateVariables的财产pf

状态变量的范围,指定为一个n2矩阵。的NumStateVariables的属性pf设置基于的价值n。每一行对应于相应的上下极限状态函数。

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:“CircularVariables”, (0 0 1)

循环变量指定为一个逻辑向量。每一个状态变量,使用圆形或角坐标表示1。向量的长度等于NumStateVariables的属性pf

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

版本历史

介绍了R2016a