主要内容

initcvukf.

从检测报告中创建常量速度无需kalman滤波器

描述

例子

筛选= initcvukf(检测创建并初始化恒定的速度无需kalman筛选从包含的信息检测报告。有关Unspented Kalman筛选器的更多信息,请参阅trackingukf.

该函数用与相同的惯例初始化恒定速度状态Constvel.cvmeas.,[X;V.X;y;V.y;Z.;V.Z.]。

例子

全部收缩

从初始检测报告中创建并初始化3-D常量速度Unscocity kalman筛选对象。

从初始3-D测量,(10,200,-5),对象位置创建检测报告。

检测= ObjectDetection(0,[10; 200; -5],'MeasurementNoise',1.5 *眼睛(3),......'sensorindex',1,'objectclassid',1,'ObjectAttributes',{'跑车',5});

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

筛选= initcvukf(检测)
filter = trackingukf具有属性:状态:[6x1 double] stateCovariance:[6x6 Double] stateTransitiveFCN:@Constvel ProcessNoise:[3x3 Double] HasadditiveProcessNoise:0 MeasurementFCN:@CVMEAS MeasurementNoise:[3x3 Double] HasadDitiveMeasurementNoise:1 Alpha:1.0000E-03BETA:2 kappa:0启用现象:0

显示状态。

filter.state.
ans =.6×110 0 200 0 -5 0

显示国家协方差。

filter.statecovariance.
ans =.6×6.1.5000 0 0 0 0 0 0 0 0 0 0 0 0 1.5000 0 0 0 0 0 0 0 1.5000 0 0 0 0 0 0 100.0000

从由球形坐标中的初始测量进行的初始检测报告初始化恒定速度uncented卡尔曼滤波器。因为物体在于X-Y.平面,没有提升测量。如果要使用球形坐标,那么您必须提供测量参数结构作为检测报告的一部分框架字段设置为'球形'。将目标的方位角设定为45度,范围为1000米,范围速率至-4.0 m / s。

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

创建测量参数结构。放'haselevation'错误的。然后,测量包括方位角,范围和范围率。

measparms = struct('框架',框架,'originposition',sensorpos,......'OriginVelocity',sensorvel,'方向',宽松,'hasvelocity',真的,......'haselevation',错误的);meas = [45; 1000; -4];measnoise = diag([3.0,2,1.0]。^ 2);检测= ObjectDetection(0,MEA,'MeasurementNoise'......麻疹,'测量参数',measparms)
检测=具有属性的ObjectDetection:时间:0测量:[3x1 Double] MeasurementNoise:[3x3 Double] SensorIndex:1 ObjectClassID:0 MeasurementParameters:[1x1 struct] ObjectAttributes:{}
过滤器= initcvukf(检测);

显示过滤状态向量。

disp(filter.state)
732.1068 -2.8284 667.1068 2.1716 0 0

输入参数

全部收缩

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

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

输出参数

全部收缩

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

算法

  • 该功能假设一秒秒的时间步长和1米/秒的加速标准偏差计算过程噪声矩阵2

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

扩展能力

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

在R2018B中介绍