Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Voltar ao glossário da Ultralytics

Pose Estimation

A estimativa de pose localiza pontos-chave, como articulações, para descrever a posição de um corpo ou objeto. Métodos top-down, bottom-up e de etapa única, e OKS.

A estimativa de pose é a tarefa de visão computacional que consiste em localizar um conjunto predefinido de pontos-chave num corpo ou objeto, como os ombros, cotovelos e joelhos de uma pessoa, e ligá-los num esqueleto que descreve a sua postura. Um modelo produz as coordenadas de imagem de cada ponto-chave, ou a sua posição em 3D, juntamente com uma pontuação de confiança, para que as aplicações possam medir ângulos articulares, contar repetições ou reconhecer ações. A estimativa de pose descreve como cada pessoa está de pé ou se move, algo que nem uma caixa delimitadora da deteção de objetos nem uma máscara da segmentação de instâncias representa.

Como funciona a estimativa de pose#

Os estimadores de pose 2D multi-pessoa seguem uma de três estratégias, e a terceira espelha os detetores de objetos de uma etapa:

  • De cima para baixo: Um detetor de pessoas encontra todas as pessoas na imagem, e um modelo de pessoa única prevê os pontos-chave dentro de cada recorte, como em HRNet (2019) e ViTPose (2022). A precisão é elevada para pessoas grandes e claramente visíveis, e o custo aumenta com o número de pessoas.
  • De baixo para cima: A rede encontra todos os pontos-chave na imagem de uma só vez e, em seguida, agrupa-os por pessoa. OpenPose (2017) liga as articulações com campos de afinidade das partes, vetores 2D que apontam ao longo de cada membro, mantendo o custo quase constante em multidões.
  • De uma única etapa: A rede prevê a caixa de uma pessoa e todos os seus pontos-chave a partir da mesma localização da grelha, numa única passagem, sem precisar de recortes nem de uma etapa de agrupamento. YOLO-Pose (2022) trouxe este design para YOLO.

As localizações dos pontos-chave são obtidas através de mapas de calor, um mapa de probabilidade por ponto-chave cujo pico indica a localização, ou através da regressão direta das coordenadas. Os mapas de calor lideraram os benchmarks durante anos, mas consomem memória e são limitados pela resolução do mapa. A Estimativa Residual de Log-verosimilhança (RLE) reduziu a diferença da regressão em 2021, aprendendo a distribuição do erro de previsão com um fluxo normalizante. Os modelos de pose YOLO26 são regressores de uma única etapa treinados com RLE: durante o treino, um ramo adicional prevê a incerteza de cada ponto-chave e um fluxo RealNVP calcula a pontuação do erro; ambos são removidos quando o modelo é fundido para inferência, pelo que não acrescentam custos de inferência.

from ultralytics import YOLO

# Carrega um modelo de pose nano YOLO26 treinado nos 17 pontos-chave do corpo do COCO
model = YOLO("yolo26n-pose.pt")

# Encontra todas as pessoas e os respetivos pontos-chave numa única passagem
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]

# A forma é (pessoas, pontos-chave, xy); guarda a imagem com os esqueletos desenhados
print(result.keypoints.xy.shape)
result.save(filename="pose_result.jpg")

A forma apresentada conta as pessoas encontradas, os 17 pontos-chave e as 2 coordenadas de píxeis; a imagem guardada desenha cada esqueleto sobre a respetiva pessoa.

Estimativa de pose 2D e 3D#

Os estimadores 2D devolvem coordenadas de píxeis. A estimativa de pose humana 3D recupera posições articulares no espaço elevando uma sequência de pontos-chave 2D com uma segunda rede, como em VideoPose3D; triangulando pontos-chave vistos por várias câmaras calibradas; ou ajustando à imagem uma malha corporal paramétrica como a SMPL. A estimativa de pose de objetos é uma tarefa distinta: recupera a rotação e a translação 3D de um objeto rígido, muitas vezes a partir de pontos-chave na sua superfície, para preensão robótica e realidade aumentada.

Avaliar a estimativa de pose#

O benchmark COCO Keypoints, com cerca de 250.000 pessoas identificadas com 17 pontos-chave, avalia as previsões com a similaridade de pontos-chave de objetos (OKS), equivalente a pontos-chave da interseção sobre união (IoU). Para cada ponto-chave anotado, a distância d entre a previsão e a anotação se transforma em uma similaridade exp(-d²/(2s²k²)), em que s² é a área segmentada da pessoa e k é uma constante por ponto-chave medida com base na consistência com que os anotadores posicionaram esse ponto. O OKS calcula a média desses termos entre os pontos-chave anotados, e a precisão média média (mAP) é calculada sobre limiares de OKS de 0,50 a 0,95.

import numpy as np

# COCO falloff constants: annotators place eyes far more consistently than hips
sigmas = {"eye": 0.025, "hip": 0.107}
area = 20_000  # person's segmented area in pixels (s squared)
error = 5.0  # predicted keypoint lies 5 pixels from its label

# Per-keypoint OKS term: exp(-d^2 / (2 s^2 k^2)) with k = 2 * sigma
for name, sigma in sigmas.items():
    similarity = np.exp(-(error**2) / (2 * area * (2 * sigma) ** 2))
    print(f"{name}: {similarity:.2f}")

O mesmo erro de 5 píxeis obtém uma pontuação de 0,78 num olho e 0,99 numa anca. Outros benchmarks usam outras medidas: o MPII apresenta PCKh, a proporção de pontos-chave a menos de metade do tamanho da cabeça em relação à anotação, e benchmarks 3D como Human3.6M apresentam o erro médio da posição por articulação, em milímetros.

Aplicações no mundo real#

  • Análise desportiva: Os treinadores medem ângulos articulares, comprimento da passada e mecânica do movimento a partir de vídeos comuns, sem os marcadores refletores da captura de movimento em laboratório.
  • Reabilitação: As aplicações de fisioterapia acompanham a amplitude de movimento e a forma de fazer exercícios em casa, e os sistemas de deteção de quedas monitorizam se os pontos-chave do corpo descem até ao nível do chão.
  • Reconhecimento de ações: As sequências de esqueletos são entradas compactas para classificar ações como acenar, cair ou levantar, e ignoram a roupa e o fundo.
  • Investigação animal: Conjuntos personalizados de pontos-chave acompanham a postura dos animais, como os 24 pontos-chave por cão no conjunto de dados Dog-Pose, para estudar a marcha e o comportamento.

Explore as soluções

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em informações em tempo real para a agricultura, a aquacultura, a conservação e a análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Aplica visão computacional na indústria aeroespacial com Ultralytics YOLO para inspecionar aeronaves, detetar objetos estranhos na pista (FOD), apoiar operações aeroportuárias em terra e detetar defeitos em materiais compósitos.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina