主要内容

initcvkf

从检测报告创建常速线性卡尔曼滤波器

描述

例子

过滤器= initcvkf (检测)创建并初始化一个常速线性卡尔曼滤波过滤器中包含的信息检测报告。关于线性卡尔曼滤波器的更多信息,请参阅trackingKF

该函数初始化一个恒定速度状态相同的约定constvelcvmeas,(x;vx;y;vy;z;vz]。

例子

全部折叠

创建并初始化一个二维线性卡尔曼滤波对象从最初的检测报告。

创建初始二维测量,检测报告(10、20),对象的位置。

检测= objectDetection (0 (10、20)“MeasurementNoise”,0.2;0.2 - 2),“SensorIndex”,1“ObjectClassID”,1“ObjectAttributes”,{“黄色的车”,5});

创建新记录的检测报告。

过滤器= initcvkf(检测)
过滤器= trackingKF属性:状态:x1双[4]StateCovariance: [4 x4双]MotionModel:“二维恒定速度”ControlModel: [] ProcessNoise: [4 x4双]MeasurementModel: [2 x4双]MeasurementNoise: [2 x2双]MaxNumOOSMSteps: 0 EnableSmoothing: 0

显示状态。

filter.State
ans =4×110 0 20 0

显示状态转换模型。

filter.StateTransitionModel
ans =4×41 1 0 0 0 1 0 0 0 0 1 1 0 0 0 1)

创建并初始化一个三维线性卡尔曼滤波对象从最初的检测报告。

创建初始三维测量、检测报告(10年,20年,−5),对象的位置。

检测= objectDetection (0 (10、20; 5)“MeasurementNoise”眼睛(3),“SensorIndex”,1“ObjectClassID”,1“ObjectAttributes”,{“绿色汽车”,5});

创建新的滤波器的检测报告和显示其属性。

过滤器= initcvkf(检测)
过滤器= trackingKF属性:状态:x1双[6]StateCovariance: [6 x6双]MotionModel:“3 d恒定速度”ControlModel: [] ProcessNoise: [6 x6双]MeasurementModel: [3 x6双]MeasurementNoise: [3 x3双]MaxNumOOSMSteps: 0 EnableSmoothing: 0

显示状态。

filter.State
ans =6×110 0 20 0 5 0

显示状态转换模型。

filter.StateTransitionModel
ans =6×61 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1

输入参数

全部折叠

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

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

输出参数

全部折叠

线性卡尔曼滤波器,作为一个返回trackingKF对象。

算法

  • 函数计算过程噪声矩阵假设一秒钟时间步和加速1 m / s的标准差2

  • 你可以使用这个函数FilterInitializationFcn财产的trackerGNNtrackerTOMHT对象。

扩展功能

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

介绍了R2018b