主要内容

initctukf.

从检测报告中创建常量转速器Unscented Kalman滤波器

描述

例子

筛选= intctukf(检测创建并初始化恒定的转折速率无限的卡尔曼筛选从包含的信息检测报告。有关Unspented Kalman筛选器的更多信息,请参阅trackingukf.

该函数用与相同的惯例初始化恒定的转速状态概况CTMEAS.,[X;V.X;y;V.y;ω.;Z.;V.Z.], 在哪里ω.是转折率。

例子

全部收缩

从初始检测报告中创建和初始化2-D常量转盘Unscented Kalman过滤器对象。

从初始2D测量,(-250,40),对象位置创建检测报告。假设不相关的测量噪声。

通过添加零的z分量将测量延伸至三维。

检测= ObjectDetection(0,[ -  250; -40; 0],'MeasurementNoise',2.0 *眼睛(3),......'sensorindex',1,'objectclassid',1,'ObjectAttributes',{'车',2});

从检测报告创建新筛选器并显示过滤器属性。

过滤器= intctukf(检测)
filter = trackingukf具有属性:状态:[7x1 double] statecovariance:[7x7 double] stateTransitivefcn:@constturn processnoise:[4x4 double] hasadditive processnoise:0 measurementfcn:@ctmeas measurementnoise:[3x3 double] hasadditivemeasurementnoise:1 alpha:1.0000e-03BETA:2 kappa:0启用现象:0

显示过滤状态。

filter.state.
ans =.7×1-250 0 -40 0 0 0 0

显示状态协方差矩阵。

filter.statecovariance.
ans =.7×7.2.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.0000 0 0 0 0 0 0 0 0 100.0000

从初始检测报告初始化2-D常数延长卡尔曼滤波器,从球形坐标中的初始测量结果进行。如果要使用球形坐标,那么您必须提供测量参数结构作为检测报告的一部分框架字段设置为'球形'。将目标的方位角设定为45度,范围为1000米。

框架='球形';SensorPos = [25,-40,-10]。';SensorVel = [0; 5; 0];laxes =眼睛(3);

创建测量参数结构。放'hasvelocity''haselevation'错误的。然后,测量由方位角和范围组成。

measparms = struct('框架',框架,'originposition',sensorpos,......'OriginVelocity',sensorvel,'方向',宽松,'hasvelocity',错误的,......'haselevation',错误的);meas = [45; 1000];measnoise = diag([3.0,2]。^ 2);检测= ObjectDetection(0,MEA,'MeasurementNoise'......麻疹,'测量参数',measparms)
检测=具有属性的ObjectDetection:时间:0测量:[2x1双]测量管理:[2x2 double] sensorIndex:1 objectclassid:0测量参数:[1x1 struct] ObjectAttributes:{}
过滤器= intctukf(检测);

过滤状态向量。

disp(filter.state)
732.1068 0 667.1068 0 0 -10.0000 0

输入参数

全部收缩

检测报告,指定为一个ObjectDetection.目的。

例子:检测= ObjectDetection(0,[1; 4.5; 3],'MeasurementNoise',[1.0 0 0; 0 2.0 0; 0 0 1.5])

输出参数

全部收缩

Unscented Kalman滤波器,返回为atrackingukf.目的。

算法

  • 该功能假设一秒时间步骤计算过程噪声矩阵。该功能假设加速标准偏差为1米/秒2,以及转速加速标准偏差为1°/ s2

  • 您可以使用此功能FilterInitializationFCN.A的财产Trackergnn.要么trackertomht.目的。

扩展能力

C / C ++代码生成
使用MATLAB®Coder™生成C和C ++代码。

在R2018B中介绍