主要内容

initctekf.

从检测报告中创建恒定转速扩展卡尔曼滤波器

描述

例子

筛选= initctekf (检测创建并初始化一个恒定转速扩展卡尔曼筛选从包含的信息检测报告。有关扩展卡尔曼滤波器的更多信息,请参见trackingekf.

函数初始化一个恒定的轮转率状态,约定与constturnctmeas,(xvxyvyω.zvz),ω.周转周期。

例子

全部折叠

从初始检测报告中创建并初始化一个二维恒定转速扩展卡尔曼滤波对象。

根据物体位置的初始二维测量(-250,-40)创建检测报告。假设测量噪声不相关。

通过增加一个z分量为零。

检测= ObjectDetection(0,[ -  250; -40; 0],“MeasurementNoise”, 2.0 *眼(3),...“SensorIndex”,1,“ObjectClassID”,1,“ObjectAttributes”,{'车',2});

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

过滤器= initctekf(检测)
filter = trackingEKF with properties: State: [7x1 double] StateCovariance: [7x7 double] stattransitionfcn: @constturn stattransitionjacobianfcn: @constturnjac ProcessNoise: [4x4 double] HasAdditiveProcessNoise: 0 MeasurementFcn: @ctmeas MeasurementJacobianFcn: @ctmeasjac MeasurementNoise: [3x3 double] hasadditivemeasumentnoise:1 EnableSmoothing: 0

显示状态。

过滤器。状态
ans =7×1-250 0 -40 0 0 0 0

显示状态协方差矩阵。

filter.statecovariance.
ans =7×72.0000 0000 00 100.0000 000 2 0000 0000 100.0000 0000 0 100.0000 0000 0 100.0000 0000 0 100.0000 0000 0 100.0000 0000 0 100.0000 0000 0

从初始检测报告初始化2-D常数旋转延长卡尔曼滤波器,从球形坐标中的初始测量结果进行。如果要使用球形坐标,那么您必须提供测量参数结构作为检测报告的一部分框架字段设置为“球”.设置目标的方位角为45度,射程为1000米,射程速率为-4.0 m/s。

框架=“球”;sensorpos =[25、-40、-10]。';sensorvel =(0; 5。0);宽松=眼(3);

创建测量参数结构。放'haselevation'.然后,测量包括方位角、距离和距离速率。

measparms =结构('框架',框架,“OriginPosition”sensorpos,...“OriginVelocity”,sensorvel,'方向'宽松的,'hasvelocity',真的,...'haselevation',错误的);meas = [45; 1000; -4];measnoise = diag([3.0,2,1.0]。^ 2);检测= ObjectDetection(0,MEA,“MeasurementNoise”...measnoise,“MeasurementParameters”,measparms)
detection = objectDetection with properties: Time: 0 Measurement: [3x1 double] MeasurementNoise: [3x3 double] SensorIndex: 1 ObjectClassID: 0 Measurement: [1x1 struct] ObjectAttributes: {}
过滤器= initctekf(检测);

过滤状态向量。

disp (filter.State)
732.1068 -2.8284 667.1068 2.1716 0 -10.0000 0

输入参数

全部折叠

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

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

输出参数

全部折叠

扩展卡尔曼滤波器,返回为trackingekf.目的。

算法

  • 该函数计算过程噪声矩阵,假设时间步长为一秒。该函数假定加速度标准差为1m /s2,转速加速度标准差为1°/s2

  • 你可以使用这个函数作为FilterInitializationFcn财产的Trackergnn.或者trackerTOMHT目的。

扩展功能

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

介绍了R2018b