configureKalmanFilter
オブジェクトの追跡のためのカルマン フィルターの作成
説明
は、物理オブジェクトの追跡のために構成された kalmanFilter = configureKalmanFilter(MotionModel,InitialLocation,InitialEstimateError,MotionNoise,MeasurementNoise)vision.KalmanFilter オブジェクトを返します。このオブジェクトは、M 次元の直交座標空間を等速度または等加速度で移動します。関数は、InitialLocation ベクトルの長さから次元数 M を決定します。
この関数は、vision.KalmanFilter オブジェクトを直交座標系で物理オブジェクトを追跡するために設定する簡単な方法を提供します。追跡されるオブジェクトは、等速度や等加速度で移動する場合があります。統計量はすべての次元に沿って同じです。カルマン フィルターを異なる仮定に基づいて設定するには、vision.KalmanFilter オブジェクトを直接使用します。
例
入力引数
出力引数
アルゴリズム
この関数は、追跡のために vision.KalmanFilter オブジェクトを構成する簡単な方法を提供します。カルマン フィルターは、離散時間の線形状態空間システムを実装しています。関数 configureKalmanFilter は、vision.KalmanFilter オブジェクトのプロパティを設定します。
InitialLocation プロパティは、カルマン フィルターの状態空間モデルで使用する測定ベクトルに対応します。次の表は、測定ベクトル M をカルマン フィルターの状態空間モデルに対応付けます。 | ||
| 状態遷移モデル A および測定モデル H | ||
状態空間モデルの状態遷移モデル A および測定モデル H は、M と同一の部分行列 As および Hs のそれぞれから作成された対角行列をブロックするように設定されます。 A = H = | ||
| 部分行列 As および Hs は、次のように記述されます。 | ||
| MotionModel | As | Hs |
'ConstantVelocity' | [1 1; 0 1] | [1 0] |
'ConstantAcceleration' | [1 1 0.5; 0 1 1; 0 0 1] | [1 0 0] |
| 初期状態 x: | ||
| MotionModel | 初期状態 x | |
'ConstantVelocity' | [InitialLocation(1), 0, ..., InitialLocation(M), 0] | |
'ConstantAcceleration' | [InitialLocation(1), 0, 0, ..., InitialLocation(M), 0, 0] | |
| 初期状態推定誤差の共分散行列 P: | ||
P = diag(repmat(InitialError, [1, M])) | ||
| プロセス ノイズの共分散 Q: | ||
Q = diag(repmat(MotionNoise, [1, M])) | ||
| 測定ノイズの共分散 R: | ||
R = diag(repmat(MeasurementNoise, [1, M])). | ||
バージョン履歴
R2012b で導入
参考
vision.BlobAnalysis | vision.ForegroundDetector | vision.KalmanFilter
トピック
- カルマン フィルターを使用したオブジェクトの追跡
- Tuning a Multi-Object Tracker (Sensor Fusion and Tracking Toolbox)
- Automatically Tune Tracking Filter for Multi-Object Tracker (Sensor Fusion and Tracking Toolbox)
- 複数オブジェクトの追跡

