Learn how the Extended Kalman Filter (EKF) handles non-linear systems for accurate object tracking and sensor fusion. Enhance your [YOLO26](https://docs.ultralytics.com/models/yolo26/) projects on the [Ultralytics Platform](https://platform.ultralytics.com).
The Extended Kalman Filter (EKF) is a robust mathematical algorithm designed to estimate the state of a dynamic system that behaves non-linearly. While the standard Kalman Filter (KF) provides an optimal solution for systems moving in straight lines or following simple linear equations, real-world physics is rarely that predictable. Most physical objects, such as a drone fighting wind resistance or a robotic arm rotating on multiple axes, follow curved or complex paths. The EKF addresses this complexity by creating a linear approximation of the system at a specific point in time, allowing engineers and data scientists to apply efficient filtering techniques to predictive modeling tasks even when the underlying mechanics are complicated.
To handle complex dynamics, the EKF employs a mathematical process called linearization, which essentially estimates the slope of a function at the current operating point. This often involves calculating a Jacobian matrix to approximate how the system changes over short intervals. The algorithm operates in a recursive loop consisting of two main phases: prediction and update. In the prediction phase, the filter projects the current state forward using a physical model of motion. In the update phase, it corrects this projection using new, often noisy data from sensors like gyroscopes or accelerometers. This continuous cycle of predicting and correcting helps reduce data noise and provides a smoother, more accurate estimate of the true state than any single sensor could provide alone.
في مجال الرؤية الحاسوبية (CV)، يلعب مرشح كالمان الموسع (Extended Kalman Filter) دورًا مهمًا في الحفاظ على هوية العناصر المتحركة. تتميز النماذج المتقدمة مثل YOLO26 بقدرتها الاستثنائية على اكتشاف العناصر في إطارات فردية ، ولكنها لا تفهم بطبيعتها استمرارية الحركة بمرور الوقت. من خلال دمج EKF أو منطق مشابه، يمكن لنظام تتبع العناصر توقع المكان الذي يجب أن يظهر فيه مربع الحدود في إطار الفيديو التالي بناءً على سرعته ومساره السابقين. وهذا مفيد بشكل خاص للتعامل مع حالات الحجب، حيث يتم حجب الكائن مؤقتًا عن الرؤية؛ ويحافظ المرشح على "track" من خلال تقدير موضع الكائن حتى يصبح مرئيًا مرة أخرى، وهي تقنية أساسية لتتبع متعدد الكائنات (MOT) قوي. .
The versatility of the EKF makes it a cornerstone technology in various high-tech industries where machine learning (ML) intersects with physical hardware:
من المفيد التمييز بين مرشح كالمان الموسع وطرق التصفية ذات الصلة لفهم فائدته المحددة :
في ultralytics package, tracking algorithms use Kalman filtering concepts internally to smooth
trajectories and associate detections across frames. While you do not manually code the EKF matrix math when using
high-level tools, understanding that it powers the tracker helps in configuring parameters for the
منصة Ultralytics.
Here is how to initiate a tracker with a YOLO model, which utilizes these filtering techniques for state estimation:
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()}")