非線形状態推定のための拡張カルマンフィルター (EKF) について探求します。Ultralytics YOLO26 や自律システムにおいて、それがどのようにオブジェクトトラッキングを強化するかを学びましょう。
拡張カルマンフィルター (EKF)は、非線形に振る舞う動的システムの「状態」を推定するために設計された堅牢な数学的アルゴリズムです。標準のカルマンフィルター (KF)は、直線的に移動するシステムや単純な線形方程式に従うシステムに最適なソリューションを提供しますが、現実世界の物理学はめったに予測可能ではありません。風の抵抗と戦うドローンや複数の軸で回転するロボットアームなど、ほとんどの物理オブジェクトは曲線または複雑な経路をたどります。EKFは、特定の時点でのシステムの線形近似を作成することでこの複雑さに対処し、基礎となるメカニズムが複雑な場合でも、エンジニアやデータサイエンティストが効率的なフィルタリング技術を予測モデリングタスクに適用できるようにします。
複雑なダイナミクスを処理するため、EKFは線形化と呼ばれる数学的プロセスを採用しており、これは本質的に現在の動作点における関数の傾きを推定します。これにはしばしば、短い間隔でシステムがどのように変化するかを近似するためにヤコビ行列を計算することが含まれます。アルゴリズムは、予測と更新の2つの主要なフェーズからなる再帰ループで動作します。予測フェーズでは、フィルターは運動の物理モデルを使用して現在の状態を前方に投影します。更新フェーズでは、ジャイロスコープや加速度計などのセンサーからの新しい、しばしばノイズの多いデータを使用してこの投影を修正します。この予測と修正の連続的なサイクルは、データノイズを低減し、単一のセンサーが単独で提供できるよりも滑らかで正確な真の状態の推定値を提供します。
コンピュータビジョン(CV)の分野において、 拡張カルマンフィルタ(EKF)は移動物体の同一性を維持する上で重要な役割を果たす。YOLO26のような先進モデルは 単一フレーム内での物体検出に優れているが、 時間経過に伴う運動の連続性を本質的に理解していない。 EKFや類似のロジックを統合することで、 物体追跡システムは過去の速度と軌跡に基づき、 次の動画フレームにバウンディングボックスが 出現すべき位置を予測できる。 これは特に、物体が一時的に視界から遮られるオクルージョン処理に有用である。フィルターは物体が再び可視化するまで位置を推定し「track」を維持する。この手法は堅牢なマルチオブジェクト追跡(MOT)に不可欠である。
EKFの汎用性により、機械学習 (ML)が物理ハードウェアと交差する様々なハイテク産業において、基盤となる技術となっています。
拡張カルマンフィルタの特異的な有用性を理解するには、関連するフィルタリング手法との区別が有用である:
の中で 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()}")

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