Descubra a reidentificação de objectos: faça corresponder pessoas ou veículos através de câmaras não sobrepostas com incorporação de aspeto para melhorar a vigilância, a análise de retalho e a investigação forense.
A reidentificação de objetos (Re-ID) é uma técnica especializada em visão computacional (CV) focada em associar objetos ou indivíduos específicos em imagens de câmaras distintas e não sobrepostas ou ao longo de períodos prolongados de tempo. Enquanto a deteção padrão de objetos identifica a classe de um objeto (por exemplo, «pessoa» ou «carro») dentro de uma única imagem, a Re-ID determina se um objeto específico detetado é exatamente a mesma identidade que um visto anteriormente. Essa capacidade é fundamental para criar uma compreensão coesa do movimento em ambientes de grande escala, onde uma única câmara não pode cobrir toda a área, conectando efetivamente os pontos entre observações visuais isoladas.
O desafio fundamental da Re-ID é corresponder identidades, apesar das mudanças na iluminação, pose, ângulo da câmara e desordem do fundo. Para conseguir isso, o sistema vai além das simples coordenadas da caixa delimitadora e analisa o conteúdo visual do objeto.
É importante distinguir Re-ID de rastreamento de objetos, pois eles desempenham funções complementares, mas distintas em um pipeline de visão.
A reidentificação transforma detecções isoladas em trajetórias acionáveis, permitindo análises sofisticadas em vários setores.
Modelos modernos como YOLO26 e YOLO11 podem ser integrados com rastreadores que utilizam conceitos de Re-ID para manter identidades em condições difíceis. O rastreador BoT-SORT, disponível na biblioteca Ultralytics , combina sinais de movimento com características de aparência para um desempenho robusto.
O exemplo a seguir demonstra como aplicar esse rastreamento em um ficheiro de vídeo:
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Track objects in a video using BoT-SORT
# BoT-SORT uses appearance features to help re-identify objects after occlusions
results = model.track(source="path/to/video.mp4", tracker="botsort.yaml", persist=True)
# Process results
for result in results:
if result.boxes.id is not None:
print(f"Tracked IDs: {result.boxes.id.cpu().numpy()}")
Para uma exploração mais aprofundada da arquitetura que suporta esses recursos, recomenda-se a revisão das redes neurais convolucionais (CNNs) e das estruturas ResNet. Compreender esses fundamentos ajuda na seleção dos dados de treino corretos para ajustar modelos Re-ID personalizados para ambientes específicos.