Interfaces Computacionais Alternativas OpenFaceMote Elaborado por: David Jardim 8745 Edou Suilen 8749
Motivação Cada vez mais existe uma politica activa na tentativa de providenciar uma acessibilidade integral à sociedade de informação, permitindo aos cidadãos com necessidades especiais o acesso da forma mais independente e natural possível.  Com a realização do nosso trabalho queremos contribuir para essa mesma politica, diminuindo as barreiras existentes entre os cidadãos com necessidades especiais e as tecnologias.
Público-Alvo O produto final deste projecto destina-se a qualquer pessoa que queira interagir com o computador sem ser do modo tradicional. Principalmente para pessoas que perderam total ou parcialmente as capacidades relacionadas com os membros superiores.
Objectivos Investigar as formas de interacção com o computador baseadas em som e vídeo. Investigar e desenvolver formas de capturar vídeo e som de forma a poderem ser tratadas como  input . Tratamento do input de forma a extrair comandos úteis para as aplicações. Escrever um artigo para publicação em conferências da especialidade com os resultados obtidos.
State of the Art Camera Mouse
State of the Art HeadMouse1
State of the Art Dragon Naturally Speaking
Bibliotecas Utilizadas JMyron Biblioteca escolhida para capturar vídeo PFaceDetect Biblioteca escolhida para detectar faces. Sphinx4 Biblioteca escolhida para reconhecer discurso e convertê-lo em texto. Processing – Core Núcleo da nossa aplicação.
Detecção de Faces Método  Viola-Jones   Características rectangulares simples, denominadas por  Haar Features. Existência de uma imagem Integral para a rápida detecção de características. O método  AdaBoost  para a aprendizagem máquina. Um classificador em cascata para combinar várias características de forma eficiente.
Haarlike   Features   A presença de uma  Haarlike Features  é determinada pela subtracção do valor médio do pixel na zona escura com o valor médio do pixel na zona clara.  Se o valor da diferença estiver acima de um determinado limiar, definida durante a aprendizagem, então podemos dizer que a característica está presente.
Detecção de Faces
Sphinx4
Sphinx4 O  Front End  vai receber o áudio da aplicação e vai transformar a forma das ondas do discurso em características utilizadas para o reconhecimento ( features ).  O  Decoder  vai juntar a informação que vem do  Front End  e do  Knowledge Base  para calcular, gerar resultados e processar o resultado ao utilizador.
Sphinx4 O  Knowledge   Base  é composto por três componentes: Acoustic Model  Contém uma representação (frequentemente estatística) de um som, criado pelo treino. Language Model Contém uma representação da probabilidade da ocorrência das palavras, descreve o que é provável que seja falado num determinado contexto. Dictionary   Contém a pronúncia das palavras que vão ser necessárias.
Sphinx4 Construção do gráfico acima requer um dicionário, que faça a correspondência entre a palavra “ one ” e os fonemas W, ao AX e ao N, e a palavra “ two ” a T e a OO. Requer o modelo acústico para obter os HMM’s para os fonemas W, o AX, o N, o T e o OO.
Fonética Dicionário com as palavras necessárias   Para criar a fonética das palavras analisámos os fonemas disponíveis no  Sphinx4  e criámos as nossas palavras. O  Sphinx4  disponibiliza 39 fonemas diferentes para a construção das palavras.
Diagrama de Classes
Implementação A aplicação final, possui 4 estados de utilização, nomeadamente: Learning. Incremental. Precision. Idle.
Ecrã de Carregamento Aqui é efectuado o carregamento de ficheiros, e o alocamento de memória necessária para o programa.
Estado Learning Obter a posição do utilizador. Mover as barreiras correspondentes às linhas de cor verde, consoante a posição da cara do utilizador. Definir uma área representativa da amplitude de movimento do utilizador. Esta área é definida pelo utilizador tendo em conta as posições máximas atingidas pelo mesmo ao movimentar a cabeça. Esta calibração é necessário se o utilizador desejar utilizar o modo Precision.
Estado Incremental A posição do rato é incrementada, consoante a direcção que o utilizador está “inclinado”. Além de mover o rato, obtém-se 8 direcções relativas ao movimento. Permite controlar o rato de um modo mais preciso. Mas de um modo menos fluído e menos intuitivo.
Estado Precision Área delimitada pelo rectângulo vermelho representa a amplitude de movimento do utilizador. O ponto central corresponde à posição do rato no sistema operativo. È intuitivo e mais fluído que o modo anterior. Necessita de optimização, neste momento não é muito exequível.
Configurações Neste ecrã são definidas as opções de configuração da aplicação.
Limitações Falta de precisão no controlo do rato no modo  Precision   Aplicação apenas funciona em sistemas operativos  Windows   Sucesso do reconhecimento do discurso nunca chega a ser 100%, existindo ocasiões em que o reconhecimento falha.
Trabalho Futuro Sugerimos a utilização da classe  EdgeDetection   que vai ser utilizada para detectar contornos na zona do nariz, para melhorar o modo Precision. Implementar ganhos na deslocação do rato consoante a distância relativamente ao centro. Criar um modelo acústico em português para melhorar o reconhecimento. Permitir a inserção de novas palavras.
Demonstração Incremental: Precision: Time Click:
Bibliografia Ben Fry, Casey Reas,  Processing ,  http:// processing.org / , 05/07/2008, 17/03/08. Warren, Jonah (2003),  Unencumbered Full Body Interaction in Video Games,  MFA Design and Technology, New York. Greenberg, Ira (2007),  Creative Coding Computational Art , Friends Of, New York. Hewitt, Robin (2007),  Seeing with OpenCV , SERVO Magazine, North Hollywood. Koppen, Paul (2008),  Intelligent Surveilance Systems,  Thesis, University Of Amsterdam. Josh Nimoy, Shawn Van Every,  JMyron ,  http:// webcamxtra.sourceforge.net /  , 05/07/2008, 24/03/08.   Bryan Chung,  PFaceDetect ,  http:// www.bryanchung.net/?page_id =251  , 05/07/2008, 21/04/08. Philip Worthington,  BlobDetection ,  http://www.v3ga.net/processing/BlobDetection/ , 05/07/2008, 31/03/08 . Cargal, J.M, Discrete Mathematics for Neophytes:  Number Theory, Probability, Algorithms, and Other Stuff, Capítulo 32 de 37. Bradsky, Gary (2005), Learning Based Computer Vision with OpenCV  http://www.intel.com/technology/itj/2005/volume09issue02/art03_learning_vision/p04_face_detection.htm , Intel Technology Journal.

Mais conteúdo relacionado

PPT
4 Graça Jara
PPTX
PDF
Comparação de Algoritmos Baseados em Q-Learning
PDF
HRL: Learning Subgoals and State Abstraction
PPTX
Q Learning Simulator
KEY
Math4 Kids Artech Final
KEY
Hierarchical Reinforcement Learning
PPTX
Aprendizagem por reforço
4 Graça Jara
Comparação de Algoritmos Baseados em Q-Learning
HRL: Learning Subgoals and State Abstraction
Q Learning Simulator
Math4 Kids Artech Final
Hierarchical Reinforcement Learning
Aprendizagem por reforço

Último (17)

PDF
Jira Software projetos completos com scrum
PPTX
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
PDF
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
PPTX
ccursoammaiacursoammaiacursoammaia123456
PPTX
Analise Estatica de Compiladores para criar uma nova LP
PPTX
Tipos de servidor em redes de computador.pptx
PPT
Aula de Engenharia de Software principais caracteristicas
PDF
SEMINÁRIO DE IHC - A interface Homem-Máquina
PDF
Processos no SAP Extended Warehouse Management, EWM100 Col26
PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PDF
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
PDF
Processamento da remessa no SAP ERP, SCM610 Col15
PPT
Conceitos básicos de Redes Neurais Artificiais
PDF
Banco de Dados 2atualização de Banco de d
PDF
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
Jira Software projetos completos com scrum
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
ccursoammaiacursoammaiacursoammaia123456
Analise Estatica de Compiladores para criar uma nova LP
Tipos de servidor em redes de computador.pptx
Aula de Engenharia de Software principais caracteristicas
SEMINÁRIO DE IHC - A interface Homem-Máquina
Processos no SAP Extended Warehouse Management, EWM100 Col26
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
Processamento da remessa no SAP ERP, SCM610 Col15
Conceitos básicos de Redes Neurais Artificiais
Banco de Dados 2atualização de Banco de d
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
Anúncio
Anúncio

Interfaces Computacionais Alternativas

  • 1. Interfaces Computacionais Alternativas OpenFaceMote Elaborado por: David Jardim 8745 Edou Suilen 8749
  • 2. Motivação Cada vez mais existe uma politica activa na tentativa de providenciar uma acessibilidade integral à sociedade de informação, permitindo aos cidadãos com necessidades especiais o acesso da forma mais independente e natural possível. Com a realização do nosso trabalho queremos contribuir para essa mesma politica, diminuindo as barreiras existentes entre os cidadãos com necessidades especiais e as tecnologias.
  • 3. Público-Alvo O produto final deste projecto destina-se a qualquer pessoa que queira interagir com o computador sem ser do modo tradicional. Principalmente para pessoas que perderam total ou parcialmente as capacidades relacionadas com os membros superiores.
  • 4. Objectivos Investigar as formas de interacção com o computador baseadas em som e vídeo. Investigar e desenvolver formas de capturar vídeo e som de forma a poderem ser tratadas como input . Tratamento do input de forma a extrair comandos úteis para as aplicações. Escrever um artigo para publicação em conferências da especialidade com os resultados obtidos.
  • 5. State of the Art Camera Mouse
  • 6. State of the Art HeadMouse1
  • 7. State of the Art Dragon Naturally Speaking
  • 8. Bibliotecas Utilizadas JMyron Biblioteca escolhida para capturar vídeo PFaceDetect Biblioteca escolhida para detectar faces. Sphinx4 Biblioteca escolhida para reconhecer discurso e convertê-lo em texto. Processing – Core Núcleo da nossa aplicação.
  • 9. Detecção de Faces Método Viola-Jones Características rectangulares simples, denominadas por Haar Features. Existência de uma imagem Integral para a rápida detecção de características. O método AdaBoost para a aprendizagem máquina. Um classificador em cascata para combinar várias características de forma eficiente.
  • 10. Haarlike Features A presença de uma Haarlike Features é determinada pela subtracção do valor médio do pixel na zona escura com o valor médio do pixel na zona clara. Se o valor da diferença estiver acima de um determinado limiar, definida durante a aprendizagem, então podemos dizer que a característica está presente.
  • 13. Sphinx4 O Front End vai receber o áudio da aplicação e vai transformar a forma das ondas do discurso em características utilizadas para o reconhecimento ( features ). O Decoder vai juntar a informação que vem do Front End e do Knowledge Base para calcular, gerar resultados e processar o resultado ao utilizador.
  • 14. Sphinx4 O Knowledge Base é composto por três componentes: Acoustic Model Contém uma representação (frequentemente estatística) de um som, criado pelo treino. Language Model Contém uma representação da probabilidade da ocorrência das palavras, descreve o que é provável que seja falado num determinado contexto. Dictionary Contém a pronúncia das palavras que vão ser necessárias.
  • 15. Sphinx4 Construção do gráfico acima requer um dicionário, que faça a correspondência entre a palavra “ one ” e os fonemas W, ao AX e ao N, e a palavra “ two ” a T e a OO. Requer o modelo acústico para obter os HMM’s para os fonemas W, o AX, o N, o T e o OO.
  • 16. Fonética Dicionário com as palavras necessárias Para criar a fonética das palavras analisámos os fonemas disponíveis no Sphinx4 e criámos as nossas palavras. O Sphinx4 disponibiliza 39 fonemas diferentes para a construção das palavras.
  • 18. Implementação A aplicação final, possui 4 estados de utilização, nomeadamente: Learning. Incremental. Precision. Idle.
  • 19. Ecrã de Carregamento Aqui é efectuado o carregamento de ficheiros, e o alocamento de memória necessária para o programa.
  • 20. Estado Learning Obter a posição do utilizador. Mover as barreiras correspondentes às linhas de cor verde, consoante a posição da cara do utilizador. Definir uma área representativa da amplitude de movimento do utilizador. Esta área é definida pelo utilizador tendo em conta as posições máximas atingidas pelo mesmo ao movimentar a cabeça. Esta calibração é necessário se o utilizador desejar utilizar o modo Precision.
  • 21. Estado Incremental A posição do rato é incrementada, consoante a direcção que o utilizador está “inclinado”. Além de mover o rato, obtém-se 8 direcções relativas ao movimento. Permite controlar o rato de um modo mais preciso. Mas de um modo menos fluído e menos intuitivo.
  • 22. Estado Precision Área delimitada pelo rectângulo vermelho representa a amplitude de movimento do utilizador. O ponto central corresponde à posição do rato no sistema operativo. È intuitivo e mais fluído que o modo anterior. Necessita de optimização, neste momento não é muito exequível.
  • 23. Configurações Neste ecrã são definidas as opções de configuração da aplicação.
  • 24. Limitações Falta de precisão no controlo do rato no modo Precision Aplicação apenas funciona em sistemas operativos Windows Sucesso do reconhecimento do discurso nunca chega a ser 100%, existindo ocasiões em que o reconhecimento falha.
  • 25. Trabalho Futuro Sugerimos a utilização da classe EdgeDetection que vai ser utilizada para detectar contornos na zona do nariz, para melhorar o modo Precision. Implementar ganhos na deslocação do rato consoante a distância relativamente ao centro. Criar um modelo acústico em português para melhorar o reconhecimento. Permitir a inserção de novas palavras.
  • 27. Bibliografia Ben Fry, Casey Reas, Processing , http:// processing.org / , 05/07/2008, 17/03/08. Warren, Jonah (2003), Unencumbered Full Body Interaction in Video Games, MFA Design and Technology, New York. Greenberg, Ira (2007), Creative Coding Computational Art , Friends Of, New York. Hewitt, Robin (2007), Seeing with OpenCV , SERVO Magazine, North Hollywood. Koppen, Paul (2008), Intelligent Surveilance Systems, Thesis, University Of Amsterdam. Josh Nimoy, Shawn Van Every, JMyron , http:// webcamxtra.sourceforge.net / , 05/07/2008, 24/03/08. Bryan Chung, PFaceDetect , http:// www.bryanchung.net/?page_id =251 , 05/07/2008, 21/04/08. Philip Worthington, BlobDetection , http://www.v3ga.net/processing/BlobDetection/ , 05/07/2008, 31/03/08 . Cargal, J.M, Discrete Mathematics for Neophytes: Number Theory, Probability, Algorithms, and Other Stuff, Capítulo 32 de 37. Bradsky, Gary (2005), Learning Based Computer Vision with OpenCV http://www.intel.com/technology/itj/2005/volume09issue02/art03_learning_vision/p04_face_detection.htm , Intel Technology Journal.