Primero debes asumir un modelo de movimiento. Digamos que deseas rastrear una pelota que vuela por el aire. La pelota tiene una aceleración hacia abajo debido a la gravedad de 9.8m / s ^ 2. Entonces, en este caso, el modelo de movimiento de aceleración constante es apropiado.
Bajo este modelo, su estado es posición, velocidad y aceleración. Dado el estado anterior, puede predecir fácilmente el siguiente estado.
También tienes una noción de detección. Tienes un video de la pelota en movimiento, y de alguna manera tienes que detectar la pelota en cada fotograma de video (por ejemplo, usando la resta de fondo).
Tus detecciones son ruidosas. Además, el movimiento de la pelota no se ajusta exactamente al modelo de aceleración constante debido a la resistencia del aire, el viento, los rayos cósmicos, etc. El filtro de Kalman necesita dos matrices que describan esto: una es la covarianza del ruido de medición (su imprecisión de detección), y uno para la covarianza del ruido del proceso (cómo el movimiento de la bola se desvía del modelo que ha especificado).
Si está rastreando un solo objeto, el filtro de Kalman le permite suavizar parte del ruido y también predecir dónde está el objeto cuando falta una detección (por ejemplo, si el objeto está ocluido). Aquí hay un ejemplo de seguimiento de un solo objeto con un filtro de Kalman usando el Computer Vision System Toolbox para MATLAB.
Si está rastreando varios objetos, entonces las predicciones del filtro de Kalman le permiten decidir qué detección va con cada objeto. Una buena manera de hacerlo es utilizar la probabilidad de registro de la detección dada la covarianza de error de la predicción. Aquí hay un ejemplo de seguimiento de múltiples objetos con un filtro de Kalman .