Reconhecimento de Gestos Humanos usando interface natural
Por: Gustavo Rigamonti • 2/6/2016 • Relatório de pesquisa • 7.633 Palavras (31 Páginas) • 262 Visualizações
UNIVERSIDADE DE SÃO PAULO - USP
ESCOLA DE ENGENHARIA DE SÃO CARLOS – EESC
DEPARTAMENTO DE ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO
LABORATÓRIO DE VISÃO COMPUTACIONAL – LAVI/EESC/USP
Relatório final – IC-RUSP 2013/2014
Reconhecimento de gestos humanos usando interface natural
Período de execução do projeto: 01-08-2013
a
31-07-2014
Aluno:
Gustavo Henrique Rigamonti Nº USP: 7569925
Orientador:
Adilson Gonzaga
São Carlos
2014
SUMÁRIO
1. INTRODUÇÃO.
2. OBJETIVO.
3. MATERIAIS E MÉTODOS.
4. RESULTADOS: ANÁLISE E DISCUSSÃO.
4.1 – Distância ideal de funcionamento:
4.2 – Ângulo ideal de operação:
4.3– Análise estatística:
A) Quanto ao uso de tecnologia em sala de aula:
B) Quanto ao uso do aplicativo desenvolvido neste relatório:
5. ETAPAS DO PROJETO.
6. CONCLUSÃO.
REFERÊNCIAS BIBLIOGRÁFICAS.
ANEXO A
ANEXO B
1. INTRODUÇÃO.
Como já se foi levantado, uma das linhas de pesquisa extremamente importante na atualidade é a busca da facilitação da interação homem computador. Os métodos tradicionais de interação entre usuários e dispositivos geralmente impõem algumas dificuldades ao acesso. Fazer com que as pessoas não precisem mudar seus hábitos ou modos de agir para acessar um computador e sim fazer com que este “entenda” ações naturais e inerentes aos seres humanos e as compreenda de maneira satisfatória e transformando-as num comando é a ideia chave nestas pesquisas. Num mundo onde a inclusão é cada vez mais considerada e necessária, faz-se importante essas adaptações visando possibilitar o uso das máquinas e dispositivos eletrônicos seja por pessoas pouco experientes, seja por pessoas com alguma dificuldade motora. O desenvolvimento de uma interface inteligente implica numa maior facilidade para se dizer ao computador ou a uma máquina o que deve ser feito.
Certamente o maior agente no desenvolvimento dessa área é a indústria de games que, insistentemente, busca inovar na experiência fornecida por seus consoles aos usuários. Desenvolvido pela Microsoft, o Kinect é um sensor de movimentos de última geração que possui tecnologia capaz de permitir aos jogadores interagir com os jogos eletrônicos sem a necessidade de ter em mãos um controle. A princípio, o Kinect foi concebido para estender as capacidades do console Xbox; posteriormente houve o desenvolvimento deste hardware para utilização em computadores, que com o adjunto de ferramentas auxiliares, possibilitou a usuários mais experientes a criação de aplicações que fazem uso do Kinect.
Abaixo temos a Figura 1 que mostra as características principais do Kinect tanto na sua versão para Windows quanto para sua versão para Xbox[1]:
1. Câmera RGB (Red, Green, Blue) que permite o reconhecimento facial da pessoa que está em frente ao console e reconhecimento corporal a certas distâncias;
2. Sensor de profundidade (Emissor IR + Sensor de Profundidade IR) que permite que o dispositivo “mapeie” o ambiente a sua volta em três dimensões;
3. Microfone embutido, que além de captar as vozes nas proximidades, consegue diferenciar os ruídos externos; portanto, barulhos ao fundo não atrapalham o seu funcionamento;
4. Possui um motor que possibilita um ajuste (limitado) de angulação do aparelho.
[pic 1]
Figura 1 – Esquema do Microsoft Kinect
Apesar do Kinect para Windows e do Kinect para Xbox serem tão parecidos em vários aspectos, existem diversas diferenças sob o ponto de vista dos programadores. Deve-se ter em mente que a ideia para o console é aperfeiçoar a experiência do jogador, ou seja, desenvolver aplicativos não é a primeira proposta tal qual no Kinect para Windows [2].
Na Tabela 1 se tem uma melhor exemplificação quais são as diferenças de funcionamento dos dois tipos de Kinect existentes:
Tabela 1 – Distância do usuário ao Kinect
Kinect | Distância mínima de operação: | Distância máxima de operação: |
para Windows: | 0,8m | 4,0 m |
para Xbox: | 0,4m | 4,0m |
A distância máxima de operação é semelhante, mas ao contrário do funcionamento no console, o funcionamento no Windows permite uma proximidade bem maior entre o usuário e o Kinect. Isso se dá em função da criação de um novo firmware que “ativa” o “Near Mode tracking” [2], ou seja, ativa o reconhecimento de objetos a uma distância próxima ao aparelho sem que haja perdas na precisão. Além dessas diferenças funcionais, o Kinect para Windows requer aparatos adicionais: uma fonte alimentadora externa (12 volts) e um cabo adaptador para a entrada USB comum aos computadores.
2. OBJETIVO.
Objetivou-se neste projeto de Iniciação Científica o desenvolvimento de um software que possibilitasse e facilitasse a interação entre usuário e computador por meio de reconhecimento de gestos fazendo o uso do Kinect, capturando a posição dos braços do usuário para reconhecer gestos pré-definidos e aplicá-los como comandos no computador. Com isto em foco decidiu-se desenvolver uma espécie de programa que facilitasse as apresentações feitas no Microsoft Office PowerPoint para exemplificação. O software desenvolvido possibilitará a apresentação de slides com avanço e retorno de cada página utilizando apenas movimentos pré-definidos pelo programador dos braços direito e esquerdo, livrando assim o apresentador de um slide da tarefa de ficar clicando com o mouse toda vez que quiser avançar ou retroceder seus slides. Alcançados os objetivos de desenvolvimento do projeto, ressalta-se o aprendizado e melhora do aluno na área de visão computacional, seu desenvolvimento como programador na linguagem C# e também seu amadurecimento na área acadêmica, fatos extremamente importantes, já que estes não são aprendizados recorrentes na graduação.
...