getStateEstimate

从粒子中提取最佳状态估计和协方差

描述

例子

状态= getStateEstimate (pf)返回基于当前粒子集的最佳状态估计。的基础上提取估计值StateEstimationMethod财产的stateEstimatorPF对象,pf.

(状态,stateCov)= getStateEstimate (pf)还返回状态估计周围的协方差。协方差是对状态估计的不确定性的度量。并不是所有的状态估计方法都支持协方差输出。金宝app在这种情况下,getStateEstimate返回stateCov作为[].

例子

全部折叠

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

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

pf = stateEstimatorPF
属性:NumStateVariables: 3 numparticle: 1000 StateTransitionFcn: @nav.algsgaussianMotion MeasurementLikelihoodFcn: @nav.algs。[0 00] ResamplingPolicy: [1x1 resamplingPolicyPF] ResamplingMethod: '多项'状态估计方法:'均值'状态定位:'行'粒子:[1000x3双]权重:[1000x1双]状态:'使用getStateEstimate函数看到的值。' StateCovariance: '使用getStateEstimate函数来查看值。'

详细说明了平均状态估计方法和系统重采样方法。

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

用单位协方差((3))。使用5000个粒子。

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

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

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

得到基于。的最佳状态估计StateEstimationMethod算法。

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

输入参数

全部折叠

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

输出参数

全部折叠

最佳状态估计,以带长度的行向量返回NumStateVariables.的基础上提取估计值StateEstimationMethod算法中指定pf.

修正的系统方差,作为一个返回N——- - - - - -N矩阵,NNumStateVariables的财产pf.修正后的状态是基于StateEstimationMethod算法和MeasurementLikelihoodFcn.如果指定不支持协方差的状态估计方法,则函数返回金宝appstateCov作为[].

介绍了R2016a