Saúde
Estimativa de Pose de IA em Aplicativos de Fitness

Por Maksym Tatariants, Engenheiro de Ciência de Dados na MobiDev.
A estimativa de pose humana refere-se a uma tecnologia – relativamente nova, mas evoluindo rapidamente – que desempenha um papel significativo em aplicativos de fitness e dança, permitindo-nos colocar conteúdo digital sobre o mundo real.
Em resumo, o conceito de estimativa de pose humana é uma tecnologia baseada em visão computacional capaz de detectar e processar a postura humana. A parte mais importante e central dessa tecnologia é a modelagem do corpo humano. Três modelos de corpo são mais proeminentes nos atuais sistemas de estimativa de pose humana – baseado em esqueleto, baseado em contorno e baseado em volume.
Modelo Baseado em Esqueleto
Esse modelo é composto por um conjunto de articulações (pontos-chave), como joelhos, tornozelos, pulsos, cotovelos, ombros e orientação dos membros do corpo. Esse modelo é notável por sua flexibilidade e, como tal, é adequado para estimativa de pose humana em 3 dimensões e 2 dimensões. Com modelagem em 3 dimensões, a solução usa uma imagem RGB e encontra as coordenadas X, Y e Z das articulações. Com modelagem em 2 dimensões, é a mesma análise de uma imagem RGB, mas usando as coordenadas X e Y.
Modelo Baseado em Contorno
Esse modelo utiliza os contornos do torso e membros do corpo, bem como sua largura aproximada. Aqui, a solução pega a silhueta do quadro do corpo e renderiza as partes do corpo como retângulos e limites dentro dessa estrutura.
Modelo Baseado em Volume
Esse modelo geralmente usa uma série de varreduras em 3 dimensões para capturar a forma do corpo e converte-a em uma estrutura de formas e malhas geométricas. Essas formas criam uma série em 3D de poses e representações do corpo.
Como Funciona a Estimativa de Pose Humana em 3D
Os aplicativos de fitness tendem a confiar na estimativa de pose humana em 3 dimensões. Para esses aplicativos, quanto mais informações sobre a pose humana, melhor. Com essa técnica, o usuário do aplicativo gravará a si mesmo participando de um exercício ou rotina de treinamento. O aplicativo analisará então os movimentos do corpo do usuário, oferecendo correções para erros ou imprecisões.
O fluxograma típico desse tipo de aplicativo segue geralmente esse padrão:
- Primeiro, coletar dados sobre os movimentos do usuário enquanto ele realiza o exercício.
- Em seguida, determinar quão correto ou incorreto foram os movimentos do usuário.
- Finalmente, mostrar ao usuário, por meio da interface, quais erros ele pode ter cometido.
No momento, o padrão na tecnologia de pose humana é topologia COCO. A topologia COCO é composta por 17 marcos ao longo do corpo, variando do rosto aos braços às pernas. Observe que COCO não é o único quadro de pose corporal, mas é o mais comumente usado.
Esse tipo de processo geralmente faz uso de tecnologia de aprendizado de máquina profunda para a extração de articulações na estimativa da pose do usuário. Em seguida, emprega algoritmos baseados em geometria para dar sentido ao que foi encontrado (analisar posições relativas das articulações detectadas). Ao usar um vídeo dinâmico como dados de origem, o sistema pode usar uma série de quadros, não apenas uma imagem, para capturar seus pontos-chave. O resultado é uma representação muito mais precisa dos movimentos reais do usuário, pois o sistema pode usar informações de quadros adjacentes para resolver quaisquer incertezas sobre a posição do corpo humano no quadro atual.
Dentre as técnicas atuais para usar estimativa de pose em 3D em aplicativos de fitness, a abordagem mais precisa é aplicar primeiro um modelo para detectar pontos-chave em 2D e, subsequentemente, processar a detecção em 2D com outro modelo para converter em previsões de pontos-chave em 3D.
Na pesquisa que publicamos recentemente, uma fonte de vídeo única foi usada, com redes neurais convolucionais com convoluções temporais dilatadas aplicadas para realizar a conversão de pontos-chave de 2D para 3D.
Após analisar os modelos atualmente disponíveis, determinamos que o VideoPose3D é a solução mais adaptada às necessidades da maioria dos aplicativos de fitness impulsionados por IA. A entrada usando esse sistema deve permitir a detecção de um conjunto de pontos-chave em 2D, onde um modelo, pré-treinado no conjunto de dados COCO 2017, é aplicado como um detector em 2D.
Para a previsão mais precisa da posição de uma articulação ou ponto-chave atual, o VideoPose3D pode usar vários quadros ao longo de uma sequência curta de tempo para gerar informações de pose em 2D.
Para aumentar ainda mais a precisão da estimativa de pose em 3D, mais de uma câmera pode coletar vistas alternadas do usuário realizando o mesmo exercício ou rotina. Observe, no entanto, que isso requer mais poder de processamento, bem como arquitetura de modelo especializada para lidar com múltiplas entradas de fluxo de vídeo.
Recentemente, o Google lançou seu sistema BlazePose, um modelo orientado a dispositivos móveis para estimar a pose humana, aumentando o número de pontos-chave analisados para 33, um superconjunto do conjunto de pontos-chave COCO e dois outros – BlazePalm e BlazeFace. Como resultado, o modelo BlazePose pode produzir resultados de previsão de pose consistentes com modelos de mãos e face, articulando semântica corporal.
Cada componente dentro de um sistema de estimativa de pose humana baseado em aprendizado de máquina precisa ser rápido, levando no máximo alguns milissegundos por quadro para detecção e rastreamento de pose.
Devido ao fato de que o pipeline BlazePose (que inclui componentes de estimativa e rastreamento de pose) precisa operar em uma variedade de dispositivos móveis em tempo real, cada parte individual do pipeline é projetada para ser muito eficiente computacionalmente e executar a 200-1000 FPS.
A estimativa de pose e rastreamento em vídeo, onde não se sabe se e onde a pessoa está presente, é geralmente feita em duas etapas.
Na primeira etapa, um modelo de detecção de objeto é executado para localizar a presença de um humano ou identificar sua ausência. Depois que a pessoa é detectada, o módulo de estimativa de pose pode processar a área localizada que contém a pessoa e prever a posição dos pontos-chave.
Uma desvantagem desse setup é que ele requer que os módulos de detecção de objeto e estimativa de pose sejam executados para cada quadro, o que consome recursos computacionais extras. No entanto, os autores do BlazePose conceberam uma maneira inteligente de contornar esse problema e utilizá-lo de forma eficiente em outros módulos de detecção de pontos-chave, como FaceMesh e MediaPipe Hand.
A ideia é que um módulo de detecção de objeto (detector de face no caso do BlazePose) pode ser usado apenas para iniciar o rastreamento de pose no primeiro quadro, enquanto o rastreamento subsequente da pessoa pode ser feito usando exclusivamente as previsões de pose após algum alinhamento de pose, parâmetros para os quais são previstos usando o modelo de estimativa de pose.
A face produz o sinal mais forte sobre a posição do torso para a rede neural, como resultado da variação relativamente pequena na aparência e contraste alto em seus recursos. Consequentemente, é possível criar um sistema rápido e de baixo overhead para detecção de pose por meio de uma série de suposições justificáveis baseadas na ideia de que a cabeça humana será localizável em todos os casos de uso pessoal.
Superando os Desafios da Estimativa de Pose Humana
Utilizar a estimativa de pose em aplicativos de fitness enfrenta o desafio do volume de poses humanas, por exemplo, as centenas de asanas em muitos regimes de yoga.
Além disso, o corpo às vezes bloqueará certos membros, capturados por qualquer câmera dada, os usuários podem usar trajes variados que obscurecem recursos corporais e aparências pessoais.
Ao usar qualquer modelo pré-treinado, observe que movimentos corporais incomuns ou ângulos de câmera estranhos podem levar a erros na estimativa de pose humana. Podemos mitigar esse problema em certa medida usando dados sintéticos de um modelo de corpo humano em 3D renderizado, ou ajustando com dados específicos do domínio em questão.
A boa notícia é que podemos evitar ou mitigar a maioria das fraquezas. A chave para fazer isso é escolher os dados de treinamento e a arquitetura do modelo certos. Além disso, a tendência de desenvolvimento no campo da tecnologia de estimativa de pose humana sugere que alguns dos problemas que enfrentamos agora serão menos relevantes nos próximos anos.
A Palavra Final
A estimativa de pose humana holds uma variedade de usos futuros potenciais fora da área de aplicativos de fitness e rastreamento de movimentos humanos, desde jogos até animação, Realidade Aumentada e robótica. Isso não representa uma lista completa das possibilidades, mas destaca algumas das áreas mais prováveis onde a estimativa de pose humana contribuirá para nosso paisagem digital.
















