カルマンフィルタが、ノイズの多いデータでも、AI、追跡、センサーフュージョン、ロボット工学などの状態推定を最適化する様子をご覧ください。
カルマンフィルター(KF)とは、一連の不完全でノイズの多い測定値から動的システムの状態を推定するために使用される再帰的な数学的アルゴリズムである。 一連の不完全でノイズの多い測定値から動的システムの状態を推定するために使用される再帰的な数学的アルゴリズムである。もともとは ルドルフ・E・カールマン(Rudolf E. Kálmán)により1960年に開発された。 航空宇宙ナビゲーションから機械学習(ML) 機械学習(ML)の基礎となっている。人工知能 人工知能(AI)の文脈では、カルマンフィルターは 人工知能(AI)の文脈では、カルマンフィルターは主に、データストリームを「平滑化」し、過去の動きに基づいて物体の将来の位置を予測する能力で評価されている。 センサーの測定値が不規則であったり、欠落している場合でも、過去の動きに基づいて物体の将来の位置を予測する。
カルマンフィルターは、時間と共に推定値を改良する連続的な2段階のサイクルで動作する:
この "予測-補正 "ループにより、カルマンフィルターは最適な推定器として機能し、追跡するパラメーターの平均二乗誤差を最小化することができる。 を最小化します。
現代のコンピュータ・ビジョン(CV)では、カルマンフィルターが標準的な構成要素となっている。 フィルターは オブジェクト追跡システムの標準的な構成要素である。一方 のような深層学習モデルは YOLO11のような深層学習モデルは のようなディープラーニング・モデルは、個々のフレームにおけるオブジェクト検出には優れているが、本質的に時間的な連続性を理解していない。 時間的連続性を本質的に理解していない。
カルマンフィルターは、"トラッキング・バイ・検出 "によってこのギャップを埋める。物体が検出されると、フィルターは はtrack"を作成し を予測する。これには次の2つの利点がある。 つの大きな利点がある:
BoT-SORTや ByteTrackのような洗練されたトラッカーは、このカルマンフィルターに依存している。 モーション・モデリング。
カルマンフィルターは、ノイズの多いデータから正確な推定を必要とする技術において、どこにでもある。
の中で ultralytics パッケージでは、カルマンフィルターがトラッキングモジュールに直接統合されています。ユーザーは
を有効にすることで、この強力なアルゴリズムを自動的に活用することができます。
track モード.
from ultralytics import YOLO
# Load a YOLO11 model (object detector)
model = YOLO("yolo11n.pt")
# Track objects in a video
# The tracker (e.g., BoT-SORT) uses a Kalman Filter internally to smooth trajectories
results = model.track(source="https://ultralytics.com/images/bus.jpg", tracker="botsort.yaml")
標準的なカルマンフィルターとその変種を区別することは重要である:


