Glosario

Filtro Kalman (KF)

Descubre cómo los Filtros de Kalman optimizan la estimación del estado en IA, seguimiento, fusión de sensores, robótica y mucho más, incluso con datos ruidosos.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

El Filtro de Kalman (FK) es un algoritmo potente y muy utilizado en el aprendizaje automático (AM) y en diversos campos de la ingeniería para estimar el estado de un sistema dinámico a partir de una serie de mediciones ruidosas e incompletas a lo largo del tiempo. Imagina que intentas determinar la ubicación y velocidad exactas de un dron utilizando lecturas de GPS ligeramente imprecisas; el Filtro de Kalman proporciona una forma estadísticamente óptima de combinar el movimiento previsto con las mediciones ruidosas para obtener la mejor estimación posible. Es especialmente valorado por su eficiencia y eficacia en aplicaciones de inferencia en tiempo real, lo que lo convierte en una técnica fundamental en áreas como la robótica, la visión por ordenador (VC) y los sistemas de navegación.

Cómo funcionan los filtros de Kalman

En esencia, el Filtro de Kalman opera recursivamente sobre flujos de datos de entrada ruidosos para producir una estimación estadísticamente óptima del estado del sistema subyacente. Funciona en un ciclo de dos pasos:

  1. Predecir: Basándose en la estimación del estado anterior y en un modelo de cómo cambia el sistema a lo largo del tiempo (el modelo del proceso), el filtro predice el siguiente estado del sistema. Esta predicción incluye inherentemente cierta incertidumbre.
  2. Actualización: El filtro incorpora una nueva medición (que también tiene ruido e incertidumbre) relacionada con el estado actual. Compara la medición con el estado predicho y actualiza la estimación, dando más peso a la predicción o a la medición en función de sus respectivas incertidumbres. El resultado es una estimación refinada del estado que es estadísticamente mejor (más cercana al estado real) que la predicción o la medición por sí solas.

Este ciclo de predicción-actualización se repite para cada nueva medición, refinando continuamente la estimación del estado. El filtro se considera "óptimo" para sistemas lineales con ruido gaussiano porque minimiza el error cuadrático medio de la estimación del estado. Esto lo convierte en una herramienta fundamental en la estimación del estado y el procesamiento de señales. Para una explicación más visual, consulta Cómo funciona un filtro de Kalman, en imágenes. El marco matemático subyacente se basa en la inferencia bayesiana.

Características principales

  • Recursivo: Procesa las medidas de una en una a medida que llegan, sin necesidad de almacenar todo el historial.
  • Óptimo para sistemas lineales: Proporciona la mejor estimación posible (en términos de error cuadrático medio mínimo) si la dinámica del sistema y los procesos de medición son lineales y el ruido sigue una distribución gaussiana.
  • Estimación del estado: Estima el estado interno de un sistema (por ejemplo, posición, velocidad) que no puede medirse directamente.
  • Maneja el ruido: Modela explícitamente la incertidumbre tanto en la dinámica del sistema como en las mediciones.
  • Computacionalmente eficiente: Relativamente ligero, lo que lo hace adecuado para aplicaciones en tiempo real en sistemas integrados como los que se encuentran en la IA de borde.

Aplicaciones en el mundo real

Los Filtros Kalman son indispensables en numerosas aplicaciones de IA y ML:

  • Seguimiento de objetos: En visión por ordenador, los KF se utilizan habitualmente para predecir la posición de los objetos detectados (como peatones o vehículos) en fotogramas de vídeo posteriores, ayudando a mantener identidades coherentes incluso con breves oclusiones o fallos de detección. Los rastreadores como Simple Online and Realtime Tracking (SORT) dependen en gran medida de los KF para la predicción del movimiento. Ultralytics YOLO aprovechan estos algoritmos de seguimiento; puedes obtener más información en la documentación del modo de seguimiento. Por ejemplo, un sistema de seguridad podría utilizar un KF para seguir suavemente a una persona que camina por el campo de visión de la cámara, prediciendo su trayectoria entre las detecciones proporcionadas por un modelo de detección de objetos como YOLO11.
  • Robótica y Navegación: Los KF son cruciales para combinar datos de múltiples sensores(fusión de sensores) para estimar la posición y orientación (pose) de un robot. Por ejemplo, un vehículo autónomo podría fusionar lecturas GPS ruidosas con datos de unidades de medición inercial (IMU) y odometría de ruedas utilizando un KF para obtener una estimación fiable de su ubicación y velocidad, esencial para una navegación segura(IA en soluciones de automoción).
  • Aeroespacial y Guiado: El KF se utilizó célebremente en el programa Apolo para la navegación de naves espaciales y sigue siendo vital en la orientación aeroespacial moderna y en los sistemas de posicionamiento por satélite.
  • Análisis de series temporales: Se utiliza en econometría y finanzas para modelizar y prever datos de series temporales filtrando el ruido y estimando las tendencias subyacentes. Puedes explorar los modelos financieros de series temporales para obtener más contexto.
  • Procesamiento de señales: Se aplica en diversas tareas de procesamiento de señales, como la mejora del audio y el análisis de señales biomédicas.

Filtro de Kalman vs. Filtro de Kalman ampliado

El Filtro de Kalman estándar supone que la dinámica del sistema y los modelos de medición son lineales. Sin embargo, muchos sistemas del mundo real presentan un comportamiento no lineal (por ejemplo, los movimientos del brazo de un robot o la dinámica compleja de un vehículo). Para estos casos, se utilizan variantes como el Filtro de Kalman Ampliado (EKF ).

La diferencia clave es que el EKF maneja los sistemas no lineales aproximándolos. Linealiza las funciones no lineales en torno a la estimación del estado actual en cada paso temporal utilizando técnicas como las expansiones en serie de Taylor. Aunque potente, esta linealización introduce errores de aproximación, lo que significa que el EKF puede no ser tan óptimo o estable como el KF estándar para problemas puramente lineales. Si se sabe que un sistema es lineal, se suele preferir el KF por su optimalidad y sencillez computacional. Otras variantes, como el Filtro de Kalman no acentuado (UKF), ofrecen distintos enfoques para tratar las no linealidades, y a menudo proporcionan una mayor precisión que el EKF para los sistemas muy no lineales, pero suelen requerir más cálculo. Puedes entrenar y experimentar con modelos que incorporen estos filtros utilizando plataformas como Ultralytics HUB.

Leer todo