Explore os princípios básicos do rastreamento de pontos na visão computacional. Saiba como Ultralytics e modelos avançados de IA track movimentos track para robótica e efeitos visuais.
O rastreamento de pontos é uma tarefa fundamental na visão computacional que envolve estimar e acompanhar o movimento de pontos específicos e localizados (como píxeis ou características distintas) ao longo de fotogramas consecutivos numa sequência de vídeo ao longo do tempo. Ao contrário do rastreamento de objetos, que monitoriza a posição geral de entidades inteiras utilizando caixas delimitadoras ou máscaras de segmentação, o rastreamento de pontos concentra-se num nível de detalhe muito mais preciso, ao nível do subpixel. Ao identificar e manter correspondências entre estas localizações precisas, os sistemas de inteligência artificial (IA) podem realizar tarefas avançadas de compreensão de vídeo que exigem uma análise de movimento complexa.
O rastreamento preciso de pontos numa cena dinâmica é extremamente desafiante. Os pontos rastreados sofrem frequentemente de oclusões— em que os objetos bloqueiam temporariamente a visão da câmara — ou podem sair completamente do campo de visão. Além disso, variações na iluminação, mudanças de perspetiva e movimentos rápidos podem alterar drasticamente a aparência visual de um ponto.
Historicamente, algoritmos clássicos como o fluxo ótico de Lucas-Kanade lidavam com estas tarefas. No entanto, as abordagens modernas utilizam poderosas arquiteturas de aprendizagem profunda. Inovações recentes de importantes organizações de investigação, tais como o TAPIR (Tracking Any Point with Initialization and Refinement) Google e o CoTracker3 da Meta AI, revolucionaram o campo. Ao contrário dos métodos mais antigos que rastreavam pontos de forma independente, modelos como o CoTracker3 utilizam transformadores para realizar o rastreamento conjunto de múltiplos pontos, aproveitando as dependências físicas entre pontos que pertencem ao mesmo objeto. Estes modelos de última geração também utilizam pseudo-rotulagem em vídeos do mundo real para treinar sistemas altamente precisos com requisitos de dados drasticamente reduzidos.
Embora esteja intimamente relacionado, o rastreamento de pontos difere significativamente de outras tarefas de visão computacional:
O rastreamento de pontos é um elemento essencial para várias aplicações avançadas:
Enquanto os sistemas de rastreamento de pontos gerais seguem pixels visuais arbitrários, é possível track pontos-chave estruturais track (como os
olhos, ombros ou pulsos de uma pessoa) utilizando as capacidades de rastreamento de pose do ultralytics pacote. O
recomendado YOLO26 Este modelo oferece um rastreamento de pontos-chave de ponta a ponta a alta velocidade,
ideal para a análise de movimento.
from ultralytics import YOLO
# Load the recommended YOLO26 pose model for keypoint tracking
model = YOLO("yolo26n-pose.pt")
# Perform pose tracking on a video stream to follow human keypoints over time
results = model.track(source="video.mp4", stream=True)
# Iterate through the stream to process temporal keypoint tracking data
for frame_result in results:
# Each keypoint maintains its association across frames
print(f"Tracked {len(frame_result.keypoints)} human skeletons in current frame.")
Ao implementar fluxos de trabalho de visão computacional em grande escala, a Ultralytics oferece uma solução simplificada para anotação de dados, treino de modelos e implementação sem interrupções, garantindo um desempenho fiável em diversos ambientes de borda e na nuvem.
Comece sua jornada com o futuro do aprendizado de máquina