Descubra como os Filtros de Kalman otimizam a estimativa de estado em IA, rastreamento, fusão de sensores, robótica e muito mais, mesmo com dados ruidosos.
Um filtro de Kalman (KF) é um algoritmo matemático recursivo utilizado para estimar o estado de um sistema dinâmico de um sistema dinâmico a partir de uma série de medições incompletas e ruidosas. Originalmente desenvolvido por Rudolf E. Kálmán em 1960, este algoritmo tornou-se tornou-se uma pedra angular em domínios que vão da navegação aeroespacial à aprendizagem automática (ML). No contexto da inteligência artificial (IA), o filtro de Kalman é valorizado principalmente pela sua capacidade de "suavizar" fluxos de dados, prevendo a localização futura de um objeto de um objeto com base no seu movimento passado, mesmo quando as leituras dos sensores são erráticas ou inexistentes.
O filtro de Kalman funciona num ciclo contínuo de duas etapas que aperfeiçoa as suas estimativas ao longo do tempo:
Este ciclo "prever-corrigir" permite que o Filtro de Kalman actue como um estimador ótimo, minimizando o erro médio quadrático dos parâmetros erro quadrático médio dos parâmetros que segue.
Na visão computacional (CV) moderna, o filtro de Kalman é um componente padrão dos sistemas de sistemas de localização de objectos. Enquanto modelos de aprendizagem profunda como YOLO11 são excelentes na deteção de objectos em fotogramas individuais, não compreendem inerentemente a continuidade temporal.
Os filtros de Kalman colmatam esta lacuna através do "seguimento por deteção". Quando um objeto é detectado, o filtro cria umtrack" e prevê onde a caixa delimitadora estará no próximo quadro. Isto proporciona duas grandes vantagens:
Rastreadores sofisticados como o BoT-SORT e o ByteTrack dependem de filtros Kalman para esta modelação do movimento.
O filtro de Kalman é omnipresente em tecnologias que requerem estimativas precisas a partir de dados com ruído.
No ultralytics os filtros Kalman são integrados diretamente nos módulos de rastreio. Os utilizadores podem
utilizar este poderoso algoritmo automaticamente, activando
modo track.
from ultralytics import YOLO
# Load a YOLO11 model (object detector)
model = YOLO("yolo11n.pt")
# Track objects in a video
# The tracker (e.g., BoT-SORT) uses a Kalman Filter internally to smooth trajectories
results = model.track(source="https://ultralytics.com/images/bus.jpg", tracker="botsort.yaml")
É importante distinguir o filtro de Kalman padrão das suas variantes: