このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
vision.KalmanFilter
測定値、状態、および状態推定誤差の共分散の修正
説明
カルマン フィルター オブジェクトは、追跡のために設計されています。これを使用して物理オブジェクトの将来の位置を予測し、検出された位置のノイズを低減したり、複数の物理オブジェクトを対応するトラックに関連付けたりすることができます。複数のオブジェクトを追跡できるように各物理オブジェクトに対してカルマン フィルター オブジェクトを構成できます。カルマン フィルターを使用するには、オブジェクトが等速度または等加速度で動いていなければなりません。
作成
カルマン フィルター アルゴリズムには、予測と補正 (更新ステップとも呼ばれる) という 2 つのステップが含まれます。最初のステップでは、以前の状態を使用して現在の状態を予測します。2 番目のステップでは、オブジェクトの位置など、現在の測定値を使用して状態を修正します。カルマン フィルターは、離散時間の線形状態空間システムを実装しています。
メモ
カルマン フィルターの構成を容易にするには、configureKalmanFilter
オブジェクトを使用してカルマン フィルターを構成します。これにより、等速度または等加速度で移動する直交座標系内の物理オブジェクトを追跡するためのフィルターが設定されます。統計量はすべての次元に沿って同じです。カルマン フィルターを異なる仮定に基づいて設定する必要がある場合は、関数を使用せず、このオブジェクトを直接使用します。
状態空間システムでは、状態遷移モデル A と測定モデル H が次のように設定されます。
変数 | 値 |
---|---|
A | [1 1 0 0; 0 1 0 0; 0 0 1 1; 0 0 0 1] |
H | [1 0 0 0; 0 0 1 0] |
構文
説明
は、離散時間の等速度システムのカルマン フィルターを返します。kalmanFilter
= vision.KalmanFilter
は、さらに制御モデル B を構成します。kalmanFilter
= vision.KalmanFilter(StateTransitionModel
,MeasurementModel
)
は、カルマン フィルター オブジェクトのプロパティを構成します。このプロパティは、kalmanFilter
= vision.KalmanFilter(StateTransitionModel
,MeasurementModel
,ControlModel
,Name,Value
)Name,Value
ペアの引数として 1 つ以上指定します。指定していないプロパティは既定値になります。
プロパティ
オブジェクト関数
検出結果に基づいて、関数 predict
と correct
を使用します。関数 distance
を使用して最適一致を求めます。
追跡中のオブジェクトが検出された場合、カルマン フィルター オブジェクトと検出測定値を指定して関数
predict
およびcorrect
を使用します。次の順序で関数を呼び出します。[...] = predict(
kalmanFilter
); [...] = correct(kalmanFilter
,measurement);追跡中のオブジェクトが検出されない場合、関数
correct
ではなく関数predict
を呼び出します。追跡中のオブジェクトが欠損している、または隠れている場合、測定値は得られません。次のロジックを使用して関数を設定します。[...] = predict(
kalmanFilter
); If measurement exists [...] = correct(kalmanFilter
,measurement); end追跡中のオブジェクトが過去の t-1 回の連続したタイム ステップで欠損しており、その後に検出された場合、関数
predict
を t 回呼び出すことができます。次の構文は、非同期ビデオを処理する場合に特に役立ちます。次に例を示します。for i = 1:k [...] = predict(kalmanFilter); end [...] = correct(kalmanFilter,measurement)
例
アルゴリズム
参照
[1] Welch, Greg, and Gary Bishop, An Introduction to the Kalman Filter, TR 95–041. University of North Carolina at Chapel Hill, Department of Computer Science.
[2] Blackman, S. Multiple-Target Tracking with Radar Applications. Artech House, Inc., pp. 93, 1986.
拡張機能
バージョン履歴
R2012b で導入