YOLO Vision Shenzhen
深セン
今すぐ参加
用語集

拡張カルマンフィルター(EKF)

非線形状態推定のための拡張カルマンフィルター (EKF) について探求します。Ultralytics YOLO26 や自律システムにおいて、それがどのようにオブジェクトトラッキングを強化するかを学びましょう。

拡張カルマンフィルター (EKF)は、非線形に振る舞う動的システムの「状態」を推定するために設計された堅牢な数学的アルゴリズムです。標準のカルマンフィルター (KF)は、直線的に移動するシステムや単純な線形方程式に従うシステムに最適なソリューションを提供しますが、現実世界の物理学はめったに予測可能ではありません。風の抵抗と戦うドローンや複数の軸で回転するロボットアームなど、ほとんどの物理オブジェクトは曲線または複雑な経路をたどります。EKFは、特定の時点でのシステムの線形近似を作成することでこの複雑さに対処し、基礎となるメカニズムが複雑な場合でも、エンジニアやデータサイエンティストが効率的なフィルタリング技術を予測モデリングタスクに適用できるようにします。

メカニズムと線形化

複雑なダイナミクスを処理するため、EKFは線形化と呼ばれる数学的プロセスを採用しており、これは本質的に現在の動作点における関数の傾きを推定します。これにはしばしば、短い間隔でシステムがどのように変化するかを近似するためにヤコビ行列を計算することが含まれます。アルゴリズムは、予測と更新の2つの主要なフェーズからなる再帰ループで動作します。予測フェーズでは、フィルターは運動の物理モデルを使用して現在の状態を前方に投影します。更新フェーズでは、ジャイロスコープや加速度計などのセンサーからの新しい、しばしばノイズの多いデータを使用してこの投影を修正します。この予測と修正の連続的なサイクルは、データノイズを低減し、単一のセンサーが単独で提供できるよりも滑らかで正確な真の状態の推定値を提供します。

コンピュータビジョンにおける関連性

コンピュータビジョン(CV)の分野において、 拡張カルマンフィルタ(EKF)は移動物体の同一性を維持する上で重要な役割を果たす。YOLO26のような先進モデルは 単一フレーム内での物体検出に優れているが、 時間経過に伴う運動の連続性を本質的に理解していない。 EKFや類似のロジックを統合することで、 物体追跡システムは過去の速度と軌跡に基づき、 次の動画フレームにバウンディングボックスが 出現すべき位置を予測できる。 これは特に、物体が一時的に視界から遮られるオクルージョン処理に有用である。フィルターは物体が再び可視化するまで位置を推定し「track」を維持する。この手法は堅牢なマルチオブジェクト追跡(MOT)に不可欠である。

実際のアプリケーション

EKFの汎用性により、機械学習 (ML)が物理ハードウェアと交差する様々なハイテク産業において、基盤となる技術となっています。

  • Autonomous Vehicles: 自動運転車は、安全にナビゲートするためにセンサーフュージョンに依存しています。 EKFは、全地球測位システム(GPS)、 LiDAR、およびレーダーからの異なるデータストリームを統合し、 信号の途絶や環境ノイズを補償しながら、道路上の車両の正確な位置と向きを計算します。
  • ロボット工学: 非構造化環境で動作するロボットは、自己位置推定と環境地図作成 (SLAM) アルゴリズムを使用します。EKFは、ロボットが部屋の地図を作成しながら、同時にその地図内での自己位置を特定するのに役立ち、車輪の滑りやセンサーのドリフトを補正して正確な移動を保証します。
  • 姿勢推定仮想現実やスポーツ分析などの応用分野では、人間の関節を追跡するために不安定なキーポイントを平滑化する必要がある。EKFアルゴリズムは深層学習モデルの出力結果を精緻化し、動作認識システム向けに滑らかで自然なモーションアニメーションを生成する。

関連概念との比較

拡張カルマンフィルタの特異的な有用性を理解するには、関連するフィルタリング手法との区別が有用である:

  • EKF対カルマンフィルタ(KF) 標準的なKFは数学的に最適で計算コストが低いものの、システムが高度に非線形の場合に失敗する。 EKFは近似を通じて非線形システムに対応するようKFを拡張する。
  • EKF対パーティクルフィルタパーティクルフィルタは、確率を表現するために多数のランダムサンプル(粒子)を用いることで、非線形性と非ガウスノイズを非常にうまく処理する。しかし、はるかに多くの計算能力を必要とするため、リソース制約のある組込みシステムではEKFが好まれる選択肢となる。
  • EKF対アンセントカルマンフィルタ(UKF): アンセントカルマンフィルタは中間的な手法を提供し、 非線形性を扱うために決定論的サンプリング点を用いることで、 EKFに必要な複雑な微積分を回避する。 ただし、多くの制御システムにおいてEKFは依然として業界標準である。

実施例

の中で ultralytics パッケージでは、トラッキングアルゴリズムは内部的にカルマンフィルタリングの概念を使用して軌道を平滑化し、フレーム間で検出を関連付けます。高レベルツールを使用する際にEKF行列計算を手動でコーディングすることはありませんが、それがトラッカーを動かしていることを理解することは、〜のパラメータを設定するのに役立ちます。 Ultralyticsプラットフォーム.

状態推定のためにこれらのフィルタリング技術を利用する、YOLOモデルでトラッカーを初期化する方法を以下に示します。

from ultralytics import YOLO

# Load the latest YOLO26 model (nano version for speed)
model = YOLO("yolo26n.pt")

# Track objects in a video source
# Trackers like BoT-SORT or ByteTrack use Kalman filtering logic internally
results = model.track(source="https://ultralytics.com/images/bus.jpg", tracker="botsort.yaml")

# Print the ID of the tracked objects
for r in results:
    if r.boxes.id is not None:
        print(f"Track IDs: {r.boxes.id.numpy()}")

共にAIの未来を築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。