主要内容

initapekf

恒定的速度angle-parameterized卡尔曼滤波器的初始化

描述

过滤器= initapekf (检测)配置过滤器10扩展卡尔曼滤波器(ekf)。功能配置过程噪声与单位标准差的加速度。

angle-parameterized扩展卡尔曼滤波器(APEKF)是一个高斯和过滤器(trackingGSF)与多个卡尔曼滤波器,估计每个初始化目标的角位置。Angle-parametrization是一种常用的技术来初始化一个过滤器从测距检测。

过滤器= initapekf (检测,numFilters)指定数量的ekf的过滤器。

例子

过滤器= initapekf (检测,numFilters,angleLimits)指定目标的角位置的限制。

例子

全部折叠

APEKF是一种特殊类型的过滤器,可以初始化使用测距测量。当“帧”被设置为“球”,检测方位海拔范围数据与测量。指定适当的测量参数定义一个测距测量。

measParam =结构(“帧”,“球”,“HasAzimuth”假的,“HasElevation”假的,“HasVelocity”假的,“OriginPosition”,100;10;0);

objectDetection类定义了一个接口的测距检测测量传感器。的MeasurementParameters领域的objectDetection携带信息的传感器测量。

检测= objectDetection (0100“MeasurementNoise”,100,“MeasurementParameters”measParam)
检测与属性= objectDetection:时间:0测量:100 MeasurementNoise: 100 SensorIndex: 1 ObjectClassID: 0 MeasurementParameters: [1 x1 struct] ObjectAttributes: {}

initapekf函数使用了APEKF测距检测初始化。

apekf = initapekf(检测)% #好吧
apekf = trackingGSF属性:状态:x1双[6]StateCovariance: [6 x6双]TrackingFilters: {10} x1细胞ModelProbabilities: x1双[10]MeasurementNoise: 100

你也可以初始化APEKF 10操作过滤器和角范围内的30][-30度。

angleLimits = 30 [-30];numFilters = 10;apekf = initapekf(检测、numFilters angleLimits)
apekf = trackingGSF属性:状态:x1双[6]StateCovariance: [6 x6双]TrackingFilters: {10} x1细胞ModelProbabilities: x1双[10]MeasurementNoise: 100

你也可以指定initapekf作为FilterInitializationFcntrackerGNN对象。

funcHandle = @(检测)initapekf(检测、numFilters angleLimits)
funcHandle =function_handle与价值:@(检测)initapekf(检测、numFilters angleLimits)
追踪= trackerGNN (“FilterInitializationFcn”,funcHandle);

可视化过滤器。

tp = theaterPlot;componentPlot = trackPlotter (tp,“DisplayName的”,“个人总结”,“MarkerFaceColor”,“r”);sumPlot = trackPlotter (tp,“DisplayName的”,“混合态”,“MarkerFaceColor”,‘g’);indFilters = apekf.TrackingFilters;pos = 0 (numFilters, 3);x = 0 (3 3 numFilters);i = 1: numFilters pos(我:)= indFilters{我}.State(1:2:结束);浸(1:3,1:3)= indFilters{我}.StateCovariance(1:2:结束,1:2:结束);结束componentPlot.plotTrack (pos、浸);mixedPos = apekf.State(1:2:结束);mixedPosCov = apekf.StateCovariance(1:2:结束,1:2:结束);sumPlot.plotTrack (mixedPos mixedPosCov);

图包含一个轴。轴包含2线类型的对象。这些对象代表个人总结、混合状态。”width=

创建一个angle-parameterized EKF (az r)的检测。

measParam =结构(“帧”,“球”,“HasAzimuth”,真的,“HasElevation”假的,“HasVelocity”假的,“OriginPosition”,100;10;0);

objectDetection类定义了一个接口的测距检测测量传感器。的MeasurementParameters领域的objectDetection携带信息的传感器测量。

侦破= objectDetection (0, (30, 100),“MeasurementParameters”measParam,“MeasurementNoise”10);

initapekf函数参数化apekf过滤器的高程测量。

numFilters = 10;numFilters apekf = initapekf(侦破,[-30]30日);indFilters = apekf.TrackingFilters;pos = 0 (numFilters, 3);x = 0 (3 3 numFilters);i = 1: numFilters pos(我:)= indFilters{我}.State(1:2:结束);浸(1:3,1:3)= indFilters{我}.StateCovariance(1:2:结束,1:2:结束);结束

可视化过滤器。

tp = theaterPlot;componentPlot = trackPlotter (tp,“DisplayName的”,“个人总结”,“MarkerFaceColor”,“r”);sumPlot = trackPlotter (tp,“DisplayName的”,“混合态”,“MarkerFaceColor”,‘g’);componentPlot.plotTrack (pos、浸);mixedPos = apekf.State(1:2:结束);mixedPosCov = apekf.StateCovariance(1:2:结束,1:2:结束);sumPlot.plotTrack (mixedPos mixedPosCov);视图(3);

图包含一个轴。轴包含2线类型的对象。这些对象代表个人总结、混合状态。”width=

输入参数

全部折叠

检测报告,指定为一个objectDetection对象。

例子:检测= objectDetection (0 (1; 4.5; 3)“MeasurementNoise”, (1.0 0 0;2.0 0 0;0 0 1.5])

卡尔曼滤波器的估计每个初始化目标的角位置,指定为一个正整数。当没有指定,默认的卡尔曼滤波器10

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

角限制目标,指定为一个双元素向量。这两个向量中的元素代表的上下极限目标角位置。

当功能检测:

  • 测量范围,默认角限制(-180 180)。

  • 方位和距离测量——默认角限制(-90 90)。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部折叠

恒定速度angle-parameterized扩展卡尔曼滤波器(EKF),作为一个返回trackingGSF对象。

算法

该函数可以支持以下类型的测量检测。金宝app

  • 测量范围,完成参数化目标的方位,和角限制默认(-180 180)。

  • 方位和距离的测量,完成参数化目标,所处的海拔高度和角限制默认(-90 90)。

引用

[1]Ristic,布兰科(Sanjeev Arulampalam,和詹姆斯·麦卡锡。”目标运动分析使用测距测量:测量数据算法、性能和应用。”82岁的信号处理。2 (2002):273 - 296。

扩展功能

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

另请参阅

功能

对象

介绍了R2018b