Multi-Object Tracking (MOT)
O rastreamento de múltiplos objetos (MOT) acompanha todos os objetos de um vídeo e mantém um ID por objeto ao longo dos quadros. Saiba como os rastreadores associam detecções, conheça as métricas e veja o código.
O rastreamento de múltiplos objetos (MOT) é a tarefa de visão computacional que consiste em acompanhar simultaneamente cada objeto de interesse em um vídeo, atribuindo a cada um um ID persistente para que suas posições ao longo dos quadros formem uma trajetória. O número de objetos é desconhecido e muda constantemente à medida que pessoas ou veículos entram, saem, cruzam caminhos e desaparecem atrás uns dos outros; por isso, em cada quadro, um rastreador precisa decidir quais detecções correspondem a rastros existentes, quais iniciam novos rastros e quais rastros terminaram. O MOT é a forma mais comum de rastreamento de objetos; o rastreamento de um único objeto (SOT) acompanha um alvo escolhido no primeiro quadro, independentemente da classe.
Como funciona o rastreamento de múltiplos objetos#
A maioria dos sistemas MOT usa rastreamento por detecção: um modelo de detecção de objetos encontra objetos em cada quadro, e um rastreador associa essas detecções aos rastros que já mantém. O rastreador prevê onde cada rastro deve aparecer usando um modelo de movimento, geralmente um filtro de Kalman, cria uma matriz de custos entre os rastros previstos e as novas detecções com base na sobreposição das caixas (IoU), no movimento e, opcionalmente, em incorporações de aparência de um modelo de reidentificação de objetos (Re-ID), e resolve a associação como um problema de atribuição linear com o algoritmo Húngaro. Os rastros associados mantêm seus IDs, detecções não associadas com confiança iniciam novos rastros e rastros sem associação são mantidos como "perdidos" por vários quadros para que possam ser recuperados após uma oclusão.
Multidões dificultam a etapa de associação, pois pessoas parcialmente ocultas produzem detecções de baixa confiança que um simples limiar descarta. O ByteTrack mantém essas detecções para uma segunda etapa de associação:
Arquiteturas de rastreadores#
- SORT e sucessores: O SORT (2016) combinou um filtro de Kalman, custos baseados em IoU e o algoritmo Húngaro. O DeepSORT adicionou características de aparência para recuperar identidades após uma oclusão; o ByteTrack adicionou a etapa de baixa confiança; o OC-SORT tornou as estimativas de movimento robustas a oclusões; e o BoT-SORT adicionou compensação do movimento da câmera para câmeras em movimento.
- Detecção e incorporação conjuntas (FairMOT): O FairMOT treina uma rede para produzir detecções e incorporações de Re-ID em conjunto, dispensando um segundo modelo para as características de aparência.
- Rastreamento de ponta a ponta (MOTR): O MOTR e o TrackFormer estendem o transformer DETR com consultas de rastreamento que mantêm a identidade de cada objeto de um quadro para o outro, de modo que a associação é aprendida durante o treinamento.
O modo de rastreamento do Ultralytics YOLO executa rastreamento por detecção em qualquer modelo de detecção YOLO26, de segmentação, de pose ou de caixa orientada, com seis rastreadores integrados selecionados pelo argumento tracker: TrackTrack (o padrão), BoT-SORT, ByteTrack, OC-SORT, Deep OC-SORT e FastTracker. Este exemplo rastreia as pessoas em um clipe curto e conta quantos quadros cada ID permanece visível:
from collections import Counter
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
video = "https://github.com/ultralytics/assets/releases/download/v0.0.0/decelera_portrait_min.mov"
# Rastreia pessoas (classe COCO 0) e conta os quadros em que cada ID de rastro aparece
frames_per_id = Counter()
for result in model.track(video, stream=True, classes=[0]):
if result.boxes.is_track:
frames_per_id.update(result.boxes.id.int().tolist())
# As cinco trajetórias mais longas, como (ID do rastro, quadros)
print(frames_per_id.most_common(5))Cada par representa um ID de rastro e o número de quadros em que ele foi mantido; assim, um ID de longa duração significa que o rastreador continuou acompanhando uma pessoa por muitos quadros.
Como medir a qualidade do rastreamento#
O MOT é avaliado em benchmarks como MOT17, MOT20 para multidões densas e DanceTrack, no qual dançarinos têm aparência semelhante e se movimentam de forma imprevisível. Três métricas predominam:
- MOTA: Um menos a soma dos objetos não detectados, falsos positivos e trocas de ID, dividida pelo número de objetos de referência; portanto, é dominada pela qualidade da detecção.
- IDF1: A pontuação F1 das detecções identificadas corretamente, que mede a consistência com que cada objeto real mantém um único ID.
- HOTA: A média geométrica da precisão da detecção e da precisão da associação, que atribui o mesmo peso à localização dos objetos e à associação entre eles.
Desafios#
- Oclusão: Um objeto oculto por muitos quadros pode voltar com um novo ID, a menos que a previsão de movimento ou a correspondência de aparência o recupere.
- Multidões e aparências semelhantes: Em grupos densos de pessoas ou atletas uniformizados, os custos de IoU e de aparência se tornam ambíguos e os IDs podem ser trocados.
- Movimento da câmera: Uma câmera panorâmica ou vibratória desloca todas as caixas ao mesmo tempo, comprometendo os modelos de movimento com velocidade constante, a menos que o rastreador compense esse movimento.
- Orçamentos de tempo real: A detecção, a associação e qualquer modelo de Re-ID compartilham o orçamento de tempo de cada quadro, e um modelo de Re-ID separado acrescenta uma passagem pela rede para cada objeto detectado.










