Saiba como funciona o rastreamento de objetos na visão computacional. Descubra como usar Ultralytics para identificar e monitorar objetos com IDs exclusivos para análise em tempo real.
O rastreamento de objetos é um processo dinâmico na visão computacional (CV) que envolve a identificação de entidades específicas em um vídeo e o monitoramento de seus movimentos ao longo de uma sequência de quadros. Ao contrário da análise de imagens estáticas, que trata cada instantâneo isoladamente, o rastreamento introduz a dimensão do tempo. Isso permite que os sistemas de inteligência artificial (IA) atribuam um número de identificação (ID) exclusivo a cada item detetado — como um carro, uma pessoa ou um animal — e mantenham essa identidade à medida que o objeto se move, muda de orientação ou fica temporariamente obscurecido. Essa capacidade é a base da compreensão avançada de vídeo, permitindo que as máquinas analisem comportamentos, calculem trajetórias e obtenham insights acionáveis a partir de imagens brutas.
Os sistemas de rastreamento modernos geralmente utilizam um paradigma de "rastreamento por detecção". Esse fluxo de trabalho combina modelos de detecção poderosos com algoritmos especializados para associar detecções ao longo do tempo. O processo normalmente segue três etapas principais:
Embora esses termos estejam intimamente relacionados, eles têm funções distintas no pipeline de machine learning (ML).
A capacidade de manter a identidade dos objetos permite aplicações complexas de inferência em tempo real em vários setores.
Ultralytics a implementação de um rastreamento de alto desempenho. O track modo na biblioteca
lida automaticamente com a deteção, previsão de movimento e atribuição de ID. O exemplo abaixo mostra como usar o
Plataforma Ultralytics modelo YOLO26 compatível para track num
vídeo.
from ultralytics import YOLO
# Load the official YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Track objects in a video file or webcam (source=0)
# 'show=True' displays the video with bounding boxes and unique IDs
results = model.track(source="https://ultralytics.com/images/bus.jpg", show=True)
# Access the unique tracking IDs from the results
if results[0].boxes.id is not None:
print(f"Detected Track IDs: {results[0].boxes.id.cpu().numpy()}")
Para compreender totalmente o ecossistema de rastreamento, é útil explorar a segmentação de instâncias, que rastreia os contornos precisos em nível de pixel de um objeto, em vez de apenas uma caixa. Além disso, os desafios de rastreamento de múltiplos objetos (MOT) geralmente envolvem benchmarks amplamente utilizados, como o MOTChallenge, para avaliar o desempenho dos algoritmos em cenas com muitos objetos e oclusões. Para implementação em ambientes de produção, os programadores costumam utilizar ferramentas como NVIDIA ou OpenCV para integrar esses modelos em pipelines eficientes.