Action Recognition
Explore como o reconhecimento de ações identifica comportamentos em vídeo. Saiba como usar o Ultralytics YOLO26 para estimativa de pose e criar sistemas de IA inteligentes para tarefas de reconhecimento de atividades humanas (HAR).
O reconhecimento de ações, também conhecido comumente como Reconhecimento de Atividades Humanas (HAR), é um subcampo dinâmico da visão computacional (CV) que se dedica a identificar e classificar comportamentos ou movimentos específicos realizados por indivíduos em dados de vídeo. Enquanto a deteção de objetos tradicional responde à pergunta "o que está na imagem?", o reconhecimento de ações aborda a questão mais complexa de "o que está acontecendo ao longo do tempo?". Ao analisar sequências de quadros em vez de imagens estáticas, os modelos de aprendizagem automática (ML) conseguem distinguir entre atividades complexas, como "caminhar", "andar de bicicleta", "cair" ou "apertar as mãos", tornando esse recurso um componente essencial para criar sistemas inteligentes que compreendem a intenção e o contexto humanos.
Conceitos e técnicas fundamentais#
Reconhecer ações exige que um modelo processe tanto informações espaciais (a aparência dos objetos ou das pessoas) quanto informações temporais (como se movem ao longo do tempo). Para isso, os sistemas modernos de inteligência artificial (AI) utilizam frequentemente arquiteturas especializadas que vão além das redes neurais convolucionais (CNNs) padrão.
- Estimativa de pose: uma técnica poderosa na qual o modelo acompanha pontos-chave específicos do corpo humano, como cotovelos, joelhos e ombros. As alterações geométricas nesses pontos-chave ao longo do tempo fornecem um sinal forte para classificar ações, independentemente da desordem do plano de fundo.
- Modelagem temporal: os algoritmos utilizam estruturas como redes neurais recorrentes (RNNs) ou redes de memória de longo e curto prazo (LSTM) para lembrar quadros anteriores e prever ações futuras. Mais recentemente, os Transformers de vídeo ganharam popularidade por sua capacidade de lidar com dependências de longo alcance em fluxos de vídeo.
- Redes de dois fluxos: essa abordagem processa características espaciais (quadros RGB) e características temporais (frequentemente usando fluxo óptico) em fluxos paralelos, combinando os dados para realizar uma classificação final.
Aplicações no mundo real#
A capacidade de interpretar automaticamente os movimentos humanos tem um potencial transformador em diversos setores, aumentando a segurança, a eficiência e a experiência do utilizador.
- AI na área da saúde: o reconhecimento de ações é essencial para sistemas de monitorização de pacientes. Por exemplo, permite a deteção automática de quedas em lares de idosos, alertando imediatamente a equipa se um paciente cair. Também é utilizado na reabilitação física remota, na qual treinadores de AI analisam a execução dos exercícios de um paciente para garantir que ele realize os movimentos de forma correta e segura.
- Vigilância e segurança inteligentes: além da simples deteção de movimento, os sistemas de segurança avançados utilizam o reconhecimento de ações para identificar comportamentos suspeitos, como brigas, furtos em lojas ou entradas não autorizadas, ignorando atividades inofensivas. Isso reduz os falsos alarmes e melhora a monitorização de segurança em tempo real.
Implementação da análise de ações com Ultralytics#
Um fluxo de trabalho comum envolve detetar primeiro as pessoas e a respetiva pose esquelética e, em seguida, analisar o movimento dessas articulações. O modelo Ultralytics YOLO26 oferece velocidade e precisão de última geração para a etapa inicial de estimativa de pose, que é a base de muitos pipelines de reconhecimento de ações.
O exemplo a seguir demonstra como extrair pontos-chave esqueléticos de um quadro de vídeo usando Python:
from ultralytics import YOLO
# Load the YOLO26 pose estimation model
model = YOLO("yolo26n-pose.pt")
# Run inference on an image to detect person keypoints
results = model("https://ultralytics.com/images/bus.jpg")
# Process results
for result in results:
# Access the keypoints (x, y, visibility)
if result.keypoints is not None:
print(f"Detected keypoints shape: {result.keypoints.data.shape}")Distinguir Termos Relacionados#
É importante diferenciar o reconhecimento de ações de tarefas semelhantes de visão computacional para garantir que os métodos corretos sejam aplicados.
- Reconhecimento de ações vs. rastreio de objetos: o rastreio de objetos concentra-se em manter a identidade de um objeto ou pessoa específico à medida que se move entre os quadros (por exemplo, "A Pessoa A está na coordenada X"). O reconhecimento de ações interpreta o comportamento desse indivíduo rastreado (por exemplo, "A Pessoa A está correndo").
- Reconhecimento de ações vs. compreensão de vídeo: enquanto o reconhecimento de ações identifica atos físicos específicos, a compreensão de vídeo é um conceito mais amplo que envolve entender toda a narrativa, o contexto e as relações causais presentes em uma cena de vídeo.
Desafios e tendências futuras#
Desenvolver modelos robustos de reconhecimento de ações apresenta desafios, especialmente devido à necessidade de grandes conjuntos de dados de vídeo anotados, como Kinetics-400 ou UCF101. A anotação de dados de vídeo consome significativamente mais tempo do que a anotação de imagens estáticas. Para resolver isso, ferramentas como a Ultralytics Platform ajudam a simplificar o fluxo de trabalho de anotação e treinamento.
Além disso, a eficiência computacional é fundamental. Processar vídeos de alta resolução em tempo real exige recursos de hardware significativos. O setor está cada vez mais a adotar a AI de borda, otimizando os modelos para serem executados diretamente em câmaras e dispositivos móveis, a fim de reduzir a latência e o uso de largura de banda. Os avanços futuros pretendem melhorar a generalização dos modelos, permitindo que os sistemas reconheçam ações até mesmo a partir de pontos de vista com os quais não foram explicitamente treinados.









