校正测量,状态和州估计误差协方差
Kalman滤波器对象设计用于跟踪。您可以使用它来预测物理对象的未来位置,以减少检测到的位置中的噪声,或者帮助将多个物理对象与相应的轨道相关联。可以为每个物理对象配置Kalman滤波器对象,以进行多个对象跟踪。要使用卡尔曼过滤器,对象必须以恒定速度或恒定加速度移动。
The Kalman filter algorithm involves two steps, prediction and correction (also known as the update step). The first step uses previous states to predict the current state. The second step uses the current measurement, such as object location, to correct the state. The Kalman filter implements a discrete time, linear State-Space System.
笔记
To make configuring a Kalman filter easier, you can use theconfigureKalmanFilter
对象配置卡尔曼过滤器。它设置了用于跟踪笛卡尔坐标系中物理对象的过滤器,并以恒定速度或恒定加速度移动。统计数据沿所有维度相同。如果您需要配置具有不同假设的Kalman过滤器,请勿使用该功能,请直接使用此对象。
在状态空间系统中,状态过渡模型,一个,以及测量模型,H,,,,are set as follows:
Variable | Value |
---|---|
一个 | [[1100;0100; 0 0 1 1; 0 0 0 1] |
H | [[1000;0010这是给予的 |
returns a kalman filter for a discrete time, constant velocity system.Kalmanfilter
= Vision.KalmanFilter
另外配置控制模型,b。Kalmanfilter
= vision.kalmanfilter(状态TransitionModel
,,,,measurementModel
)
配置Kalman过滤对象属性,指定为一个或多个Kalmanfilter
= vision.kalmanfilter(状态TransitionModel
,,,,measurementModel
,,,,ControlModel
,,,,name,Value
)name,Value
配对参数。未指定的属性具有默认值。
使用predict
and正确的
functions based on detection results. Use the距离
function to find the best matches.
检测到跟踪对象时,请使用predict
and正确的
具有Kalman滤波器对象和检测测量值的功能。按以下顺序调用功能:
[...] =预测(Kalmanfilter
);[...] =正确(Kalmanfilter
,,,,测量);
当未检测到跟踪对象时,请致电predict
功能,但没有正确的
function. When the tracked object is missing or occluded, no measurement is available. Set the functions up with the following logic:
[...] =预测(Kalmanfilter
);如果测量exists [...] = correct(Kalmanfilter
,,,,测量);结尾
如果过去丢失后的跟踪对象可用t-1连续步骤,您可以调用predict
functiont时代。该语法对于处理异步视频特别有用。
对于i = 1:k [...] =预测(kalmanfilter);end [...] =正确(KalmanFilter,测量)
[1]韦尔奇,格雷格和加里·毕晓普,一个n Introduction to the Kalman Filter,,,,TR 95–041. University of North Carolina at Chapel Hill, Department of Computer Science.
[[2] Blackman, S.带有雷达应用的多目标跟踪。一个rtech House, Inc., pp. 93, 1986.