Fusión de sensores
Filtros Kalman
El algoritmo utilizado para fusionar los datos se denomina filtro Kalman.
El filtro Kalman es uno de los algoritmos más populares en fusión de datos. Inventado en 1960 por Rudolph Kalman, ahora se usa en nuestros teléfonos o satélites para navegación y rastreo. El uso más famoso del filtro fue durante la misión Apolo 11 para enviar y llevar a la tripulación de regreso a la luna.
¿Cuándo usar un filtro Kalman ?
Se puede usar un filtro Kalman para la fusión de datos para estimar el estado de un sistema dinámico (que evoluciona con el tiempo) en el presente (filtrado), el pasado (suavizado) o el futuro (predicción). Los sensores integrados en vehículos autónomos emiten medidas que a veces son incompletas y ruidosas. La inexactitud de los sensores (ruido) es un problema muy importante y puede ser manejado por los filtros Kalman.
Se utiliza un filtro de Kalman para estimar el estado de un sistema, denotado x. Este vector se compone de una posición p y una velocidad v.
En cada estimación, podemos asociar una medida de la incertidumbre P.
Al realizar una fusión de sensores, hemos de tener en cuenta diferentes datos para el mismo objeto. Un radar puede estimar que un peatón está a 10 metros de distancia, mientras que el Lidar lo estima a 12 metros. El uso de filtros Kalman le permite tener una idea precisa para decidir cuántos metros es realmente el peatón al eliminar el ruido de los dos sensores.
Un filtro Kalman puede generar estimaciones del estado de los objetos a su alrededor. Para hacer una estimación, solo necesita las observaciones actuales y la predicción anterior. El historial de mediciones no es necesario. Por lo tanto, esta herramienta es ligera y mejora con el tiempo.
Cómo luce
el Estado y la incertidumbre están representados por Gaussianas.
Un Gauss es una función continua en virtud de la cual el área es 1. Esto nos permite representar probabilidades. Estamos en una probabilidad de distribución normal. La uni-modalidad de los filtros Kalman significa que tenemos un único pico cada vez para estimar el estado del sistema.
Tenemos una media µ representa un estado y una varianza σ2 que representa una incertidumbre. Cuanto mayor sea la varianza, mayor será la incertidumbre.
Gaussians make it possible to estimate probabilities around the state and the uncertainty of a system. A Kalman filter is a continuous and uni-modal function.
Bayesian Filtering
In general, a Kalman filter is an implementation of a Bayesian filter, ie a sequence of alternations between prediction and update or correction.
Prediction: We use the estimated state to predict the current state and uncertainty.
Update: Utilizamos las observaciones de nuestros sensores para corregir el estado predicho y obtener una estimación más precisa.
Para hacer una estimación, un filtro Kalman solo necesita observaciones actuales y la predicción anterior. El historial de mediciones no es necesario.
Maths
Las matemáticas detrás de los filtros Kalman están hechas de adiciones y multiplicaciones de matrices. Tenemos dos etapas: Predicción y Actualización.
Predicción
Nuestra predicción consiste en estimar un estado x’ y una incertidumbre P ‘ en el tiempo t de los estados anteriores x y P en el tiempo t-1.
- F: La matriz de transición de t-1 a t
- ν: el Ruido añadido
- Q: Matriz de covarianza que incluye ruido
Actualización
La fase de actualización consiste en utilizar una medición z de un sensor para corregir nuestra predicción y, por lo tanto, predecir x y P.