Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de...

8
Utilizando a Biblioteca OpenPose para reconhecimento de movimentos em um jogo terapêutico Esther Cardoso da Silva 1 ; Dionne Cavalcante Monteiro 2 ; Antônio Fernando Lavareda Jacob Júnior 3 Resumo: A reabilitação fisioterapêutica é um processo composto por tarefas repetitivas e, portanto, com altas taxas de evasão de pacientes. Os jogos para o auxílio da prática de exercício, exergames, oferecem uma alternativa de baixo custo para tornar esse processo mais agradável. Porém, os exergames comerciais não possuem as rotinas de exercícios necessários para a reabilitação de pacientes com necessidades específicas. Portanto, o desenvolvimento de jogos sérios para a reabilitação de pacientes vêm ganhando grande espaço dentro do meio acadêmico e da área da saúde. Skyway é um exergame terapêutico desenvolvido por estudantes de Engenharia da Computação da Universidade Federal do Pará voltado para o desenvolvimento do equilíbrio corporal que utiliza o sensor de profundidade Kinect® para a interação com o jogo. Devido ao término do suporte ao Kinect® pela fabricante em setembro de 2017, tornou-se interessante a substituição do mesmo por uma ferramenta mais moderna. Foi realizada uma análise do jogo e de ferramentas para substituição. A biblioteca OpenPose foi selecionada por apresentar uma opção de baixo custo e que torna possível a utilização de uma simples webcam para a captura de poses. A biblioteca, apesar de certa dificuldade de implementação apresentou bons resultados, não havendo grandes alterações no desempenho e funcionamento do jogo. Palavras-chave: Jogos sérios, Reabilitação, Visão Computacional. Introdução Jogos são um elemento da natureza de todos os seres vivos, podendo ser observados até mesmo em comunidades de animais. É anterior ao surgimento da cultura e um componente essencial da inteligência humana que faz parte de todas as atividades da sociedade, como religião, esportes, guerras e até mesmo o surgimento da arte. E, normalmente, desempenham papéis importantes dentro dessas práticas como servir de experiência para situações reais, gastar energia 1 Universidade Federal do Pará 2 Universidade Federal do Pará 3 Universidade Estadual do Maranhão

Transcript of Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de...

Page 1: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

Utilizando a Biblioteca OpenPose para reconhecimento de movimentos em um jogo terapêutico

Esther Cardoso da Silva1; Dionne Cavalcante Monteiro2; Antônio Fernando Lavareda Jacob Júnior3

Resumo: A reabilitação fisioterapêutica é um processo composto por tarefas repetitivas e, portanto, com altas taxas de evasão de pacientes. Os jogos para o auxílio da prática de exercício, exergames, oferecem uma alternativa de baixo custo para tornar esse processo mais agradável. Porém, os exergames comerciais não possuem as rotinas de exercícios necessários para a reabilitação de pacientes com necessidades específicas. Portanto, o desenvolvimento de jogos sérios para a reabilitação de pacientes vêm ganhando grande espaço dentro do meio acadêmico e da área da saúde. Skyway é um exergame terapêutico desenvolvido por estudantes de Engenharia da Computação da Universidade Federal do Pará voltado para o desenvolvimento do equilíbrio corporal que utiliza o sensor de profundidade Kinect® para a interação com o jogo. Devido ao término do suporte ao Kinect® pela fabricante em setembro de 2017, tornou-se interessante a substituição do mesmo por uma ferramenta mais moderna. Foi realizada uma análise do jogo e de ferramentas para substituição. A biblioteca OpenPose foi selecionada por apresentar uma opção de baixo custo e que torna possível a utilização de uma simples webcam para a captura de poses. A biblioteca, apesar de certa dificuldade de implementação apresentou bons resultados, não havendo grandes alterações no desempenho e funcionamento do jogo.

Palavras-chave: Jogos sérios, Reabilitação, Visão Computacional.

Introdução

Jogos são um elemento da natureza de todos os seres vivos, podendo ser observados até mesmo em comunidades de animais. É anterior ao surgimento da cultura e um componente essencial da inteligência humana que faz parte de todas as atividades da sociedade, como religião, esportes, guerras e até mesmo o surgimento da arte. E, normalmente, desempenham papéis importantes dentro dessas práticas como servir de experiência para situações reais, gastar energia 1Universidade Federal do Pará 2Universidade Federal do Pará3Universidade Estadual do Maranhão

Page 2: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

corporal sobressalente, inspirar a criatividade, entre outras coisas (Huizinga, 2000). Com o surgimento e popularização de dispositivos eletrônicos, também foram projetados meios de entretenimento que tirassem proveito dessas tecnologias.

No início da década de 1940, antes mesmo da popularização da venda de computadores, Raymond Redheffer (Redheffer, 1948) desenvolveu o que acredita-se que seja a primeira forma de entretenimento eletrônico interativo: uma máquina que conseguia jogar Nim contra um jogador humano. Nesse jogo, cada jogador retira um objeto de uma pilha, e é derrotado quem retirar o último objeto dela. Apesar de utilizar circuitos simples, a máquina conseguiu uma porcentagem de vitórias de 85% sobre os oponentes durante os seis meses em que ficou em exposição.

Somente em 1971 começaram a surgir jogos comerciais com o desenvolvimento de uma versão do jogo Spacewar! por Nolan Bushnell, chamada de Computer Space, comercializada pela empresa Nutting Associates em uma máquina de fliperama. Posteriormente, em 1972, Bushnell deu origem à indústria de jogos com a fundação da empresa Atari, que também lançou, no ano de 1977, o primeiro console doméstico chamado de Atari 2600 Video Computer System (VCI).

Atualmente, o mercado de jogos movimenta bilhões de dólares por ano. A maioria das casas americanas possuem algum dispositivo utilizado para jogar. Os jogos eletrônicos fazem parte do cotidiano, principalmente de adultos, independentemente do gênero. (ESA, 2018)

Diante disso, existem vários estudos voltados à melhora da satisfação do jogador durante o exercício dos jogos eletrônicos. Um modelo bastante aceito como base para a modelagem de jogos é o de (Csikszentmihalyi, M., 1990), que relaciona a experiência de certa atividade com a dificuldade de progredir em uma operação e a habilidade do jogador. Os estados da experiência podem variar entre “frustrante”, “chato” e, quando há equilíbrio entre dificuldade e habilidade, atinge-se o estado ideal, chamado de “flow”.

Esse modelo serve como base para o desenvolvimento de softwares para adicionar contexto à atividades repetitivas, os chamados “jogos sérios”. Esses

Page 3: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

jogos não têm foco principal em entreter os jogadores, mas sim, em inserir hábitos saudáveis, ensinar, ou auxiliar a prática de exercícios.

O processo de reabilitação é compostos de exercícios para desenvolvimento de movimentos específicos em pacientes de fisioterapia. Porém, essas atividades são bastante repetitivas, resultando em uma taxa alta de evasão (Unnikrishnan; Moawad; Bhavani, 2013). O lançamento das plataformas providas de controles com sensores de movimento Wii, Playstation 3 e Xbox, auxiliaram a inserção de exergames ao mercado, que são jogos que combinam atividades físicas com elementos de videogame, rastreando movimentos do corpo ou reações do usuário, tentando envolver os usuários em um sistema mais agradável e interativo (SCHMIDT et al., 2018, p. 1-6).

Porém, os exergames comerciais não possuem as rotinas de exercícios necessários para a reabilitação de pacientes com necessidades específicas, por não terem foco terapêutico. Portanto, o desenvolvimento de jogos sérios específicos para a reabilitação de pacientes vem ganhando grande espaço dentro do meio acadêmico e da área da saúde (Pirovano et al., 2016).

Skyway é um jogo terapêutico desenvolvido para auxiliar o progresso de sessões fisioterapêuticas, voltado para o desenvolvimento do equilíbrio corporal e consiste em controlar uma asa delta com o objetivo de guiá-la para dentro de argolas que aparecem no cenário. O jogo foi desenvolvido no Unity3D, utilizando o Kinect®, um sensor de movimento e profundidade, para capturar poses e movimentar o personagem do jogo de acordo com a inclinação do tronco do paciente. Porém, em outubro de 2017, a empresa Microsoft anunciou o término do suporte ao Kinect®, o que pode trazer inconveniências na manutenção do software, como incompatibilidades com sistemas operacionais ou ferramentas de desenvolvimento no futuros.

Devido a descontinuidade da biblioteca do Kinect®, tornou-se desejável modernizar o módulo de captura de poses do jogo. A biblioteca OpenPose foi a escolhida para a substituição, pois, por ser relativamente nova, possui uma comunidade bastante ativa e por não apresentar custos para ferramentas não comerciais.

Page 4: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

Metodologia

O jogo Skyway (Figura 1) foi desenvolvido por estudantes de Engenharia da Computação da Universidade Federal do Pará, com a ajuda de especialistas da área da fisioterapia, para tornar o sessões fisioterapêuticas focadas em desenvolver movimentos do tronco de pacientes com problemas de locomoção mais agradáveis.

Figura 1. Imagem do jogo Skyway

A aplicação também conta com um módulo de captura de dados que estrutura em formato JSON e envia os dados de cada sessão, como erros e acertos das argolas, posições assumidas pelo jogador durante a sessão, etc., para uma ferramenta ainda em desenvolvimento que tem como objetivo exibir os dados em forma de gráficos para que o fisioterapêuta tenha a possibilidade de analisar o progresso do paciente no tratamento.

Múltiplos desenvolvedores ajudaram na construção do Skyway, assim, aumentando muito a complexidade dos códigos do projeto, dificultando o mapeamento do mesmo. O diagrama da Figura 2 apresenta uma interpretação que representa de forma eficaz as classes do software.

Page 5: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

Figura 2. Diagrama de Classes do Skyway

A ferramenta é iniciada com uma interface de controle orientada ao especialista. Nesta é possível definir, ao início de uma sessão de treino, parâmetros que coordenam a execução da ferramenta nesta sessão específica. Para este fim foi implementada a classe “Interface”, essa é responsável por controlar os parâmetros de execução, como: link para o módulo de coleta de

Page 6: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

dados, identificador do paciente, identificador do fisioterapêuta, velocidade de aparecimento das argolas e dificuldade da sessão. A sessão de reabilitação é iniciada ao especialista selecionar a opção “Avançar”.

Após a inserção das configurações da sessão, é construído o cenário do jogo propriamente dito. Inicialmente é instanciado um objeto referente à classe “GameManager”, para que esse seja criado é necessário a existência prévia de um objeto “Interface” instanciado na etapa anterior, uma vez que este transfere seus dados para o objeto “GameManager”. Em seguida o “GameManager” constrói o cenário de execução conforme os parâmetros definidos.

Com a definição dos critérios necessários para execução, o jogo é iniciado. O controle do jogador é gerenciado por um objeto da classe “PlayerController”, que armazena as informações do personagem no ambiente virtual e faz uso do módulo de captura de movimentos do OpenPose. Neste é feita a captura de informações dos movimentos do jogador pela webcam e a atualização da posição do personagem virtual a partir dos dados coletados.

Considerações finais

Este trabalho foi realizado com o objetivo de suceder melhoramento e manutenção ao jogo Skyway, que tem como função auxiliar a progressão de tratamentos fisioterapêuticos. Substituindo a ferramenta de desenvolvimento do Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes do corpo humano, que permite a utilização de uma variedade de sensores.

Para tal, foi elaborado um diagrama de classes do jogo e descrição das principais funcionalidades dessas classes, assim como um estudo da implementação da biblioteca do OpenPose para Unity3D, com a finalidade de facilitar na juntura das mesma.

Espera-se que a aplicação melhorada possa auxiliar na obtenção de resultados mais acurados e relevantes, comparados ao seu antecessor. Tendo em vista que a biblioteca utilizada provou ter compatibilidade com a plataforma na qual o jogo foi desenvolvida.

Entre as dificuldades encontradas ao decorrer deste trabalho, pode-se destacar o fato de a biblioteca OpenPose, por ser relativamente nova, apresentar

Page 7: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

certas dificuldades na utilização. Apesar disso, a resolução dessas dificuldades contribuiu para aumentar o conhecimento técnico sobre as ferramentas manuseadas para a manutenção do software.

Como trabalhos futuros, propõe-se uma refatoração de código com a finalidade de padronizar as estruturas do jogo. E, também, a implementação da movimentação vertical do personagem, que utiliza profundidade.

Referências Bibliográficas:

PIROVANO, Michele et al. Exergaming and rehabilitation: A methodology for the design of effective and safe therapeutic exergames. Entertainment Computing,v. 14, p.55-65, out. 2015.

SCHMIDT, S. et al. Impact of Virtual Environments on Motivation and Engagement During Exergames. In: 2018 Tenth International Conference on Quality of Multimedia Experience (QoMEX). IEEE, 2018. p. 1-6.

Unnikrishnan, R., Moawad, K., Bhavani,& R. A physiotherapy toolkit using video games and motion tracking technologies. In: Global Humanitarian Technology Conference: South Asia Satellite (GHTCSAS), pp. 90-95, IEEE, 2013.

Pirovano, M., Surer, E., Mainetti, R., Lanzi, P., Borghese N. Exergaming and rehabilitation: A methodology for the design of effective and safe therapeutic exergames. In: Entertainment Computing 14, 55–65, 2016.

NAKAI, Masato et al. Prediction of Basketball Free Throw Shooting by OpenPose. In: Proceedings of Fifth International Workshop on Skill Science, SKL. 2018.

MICROSOFT. Kinect para Windows. Disponível em: <https://developer.microsoft.com/pt-br/windows/kinect>. Acesso em: 06 de junho de 2019.

GITHUB. “OpenPose”. Disponível em: https://github.com/CMU-Perceptual-Computing-Lab/openpose. Acesso em: 5 de Abril de 2019.

HAN, Jungong et al. Enhanced computer vision with microsoft kinect sensor: A review. IEEE transactions on cybernetics, v. 43, n. 5, p. 1318-1334, 2013.

Page 8: Universidade Federal do Pará Universidade Estadual do Maranhão · Kinect®, atuador de entrada de dados, pela biblioteca Openpose, ferramenta para detecção de filiação das partes

RIOS, Luiz Romário Santana. Visão computacional. Departamento de Ciência da computação - Universidade Federal da Bahia, Salvador, BA, 2011.

DA ROCHA, Rafaela Vilela; BITTENCOURT, Ig Ibert; ISOTANI, Seiji. Análise, Projeto, Desenvolvimento e Avaliação de Jogos Sérios e Afins: uma revisão de desafios e oportunidades. In: Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE). 2015. p. 692.

VAGHETTI, César Augusto Otero; DA COSTA BOTELHO, Silvia Silva. Ambientes virtuais de aprendizagem na educação física: uma revisão sobre a utilização de Exergames. Ciências & Cognição, v. 15, n. 1, p. pp. 64-75, 2010. apud Bekker e Eggen, 2008; Berkovsky e colaboradores, 2009.

CSIKSZENTMIHALYI, M. Flow: The Psychology of Optimal Experience, w York: Haper and Row. 1990.

REDHEFFER, Raymond. A machine for playing the game nim. The American Mathematical Monthly, v. 55, n. 6, p. 343-349, 1948.

HUIZINGA, Johan. Homo ludens. Editora Perspectiva. Tradução, João Paulo Monteiro. 2000.

ESA, Entertainment Software Association. Essential Facts About The Computer And Videogame Industry. 2018. Disponível em: https://www.theesa.com/esa-research/2018-essential-facts-about-the-computer-and-video-game-industry/