Explore o Filtro de Kalman Estendido (EKF) para estimativa de estado não linear. Saiba como ele aprimora o rastreamento de objetos no Ultralytics e em sistemas autónomos.
O Filtro de Kalman Estendido (EKF) é um algoritmo matemático robusto projetado para estimar o estado de um sistema dinâmico que se comporta de forma não linear. Enquanto o Filtro de Kalman padrão (KF) fornece uma solução ideal para sistemas que se movem em linhas retas ou seguem equações lineares simples, a física do mundo real raramente é tão previsível. A maioria dos objetos físicos, como um drone lutando contra a resistência do vento ou um braço robótico girando em vários eixos, segue trajetórias curvas ou complexas. O EKF lida com essa complexidade criando uma aproximação linear do sistema em um ponto específico no tempo, permitindo que engenheiros e cientistas de dados apliquem técnicas de filtragem eficientes a tarefas de modelagem preditiva, mesmo quando a mecânica subjacente é complicada.
Para lidar com dinâmicas complexas, o EKF emprega um processo matemático chamado linearização, que essencialmente estima a inclinação de uma função no ponto de operação atual. Isso geralmente envolve o cálculo de uma matriz jacobiana para aproximar como o sistema muda em intervalos curtos. O algoritmo opera em um loop recursivo que consiste em duas fases principais: previsão e atualização. Na fase de previsão, o filtro projeta o estado atual para a frente usando um modelo físico de movimento. Na fase de atualização, ele corrige essa projeção usando dados novos, muitas vezes ruidosos, de sensores como giroscópios ou acelerómetros. Esse ciclo contínuo de previsão e correção ajuda a reduzir o ruído dos dados e fornece uma estimativa mais suave e precisa do estado real do que qualquer sensor isolado poderia fornecer sozinho.
No domínio da visão computacional (CV), o Filtro de Kalman Estendido desempenha um papel fundamental na manutenção da identidade de itens em movimento. Modelos avançados como o YOLO26 são excepcionais na detecção de objetos em quadros únicos , mas não compreendem inerentemente a continuidade do movimento ao longo do tempo. Ao integrar um EKF ou lógica semelhante, um sistema de rastreamento de objetos pode prever onde uma caixa delimitadora deve aparecer no próximo quadro de vídeo com base na sua velocidade e trajetória anteriores. Isso é particularmente útil para lidar com oclusões, em que um objeto é temporariamente bloqueado da visão; o filtro mantém o "track" ativo, estimando a posição do objeto até que ele fique visível novamente, uma técnica essencial para um rastreamento robusto de múltiplos objetos (MOT).
A versatilidade do EKF torna-o uma tecnologia fundamental em várias indústrias de alta tecnologia, onde o aprendizado de máquina (ML) se cruza com o hardware físico :
É útil distinguir o Filtro de Kalman Estendido de métodos de filtragem relacionados para compreender a sua utilidade específica :
In the ultralytics pacote, os algoritmos de rastreamento usam conceitos de filtragem Kalman internamente para suavizar
trajetórias e associar detecções entre quadros. Embora você não codifique manualmente a matemática da matriz EKF ao usar
ferramentas de alto nível, entender que ela alimenta o rastreador ajuda a configurar parâmetros para o
Plataforma Ultralytics.
Veja como iniciar um rastreador com um YOLO , que utiliza essas técnicas de filtragem para estimativa de estado:
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()}")