Você está na página 1de 157

UNIVERSIDADE DE LISBOA

Faculdade de Cincias
Departamento de Informtica

AVATARES EM LNGUA GESTUAL


PORTUGUESA

Jos Carlos Malhado Bento

PROJETO

MESTRADO EM INFORMTICA

2013

UNIVERSIDADE DE LISBOA
Faculdade de Cincias
Departamento de Informtica

AVATARES EM LNGUA GESTUAL


PORTUGUESA
Jos Carlos Malhado Bento

PROJETO

MESTRADO EM INFORMTICA

Trabalho orientado pela Professora Doutora Ana Paula Boler Cludio e co-orientado pelo
Professor Doutor Paulo Jorge Cunha Vaz Dias Urbano

2013

Agradecimentos

Para mim no seria possvel ter concretizado esta tese sem um conjunto de pessoas que me
rodearam durante esta realizao pessoal e acadmica. Agradeo em primeiro lugar aos meus pais
pelas condies que me criaram para desenvolver este trabalho, especialmente minha me pela
sua preciosa ajuda com o seu contributo e conselhos.
O meu especial obrigado vai para os meus orientadores, a Doutora Ana Paula Cludio e
Doutor Paulo Urbano que me apoiaram com a sua orientao e tive a sua compreenso durante
este percurso. Tenho a certeza que produzi um documento muito mais cientfico do que aquele que
existiria sem a sua participao.
Um obrigado tambm especial ao Jos Maria Dinis, porque no mbito desta tese, foram muito
importantes os seus ensinamentos e explicaes. Tambm quero agradecer alm do grande amigo
que o Marcos, tambm contribuiu para esta tese, juntamente com o Guns, o Tiago Antunes, o
Fasca e o Rafael que deram-me uma ajuda fundamental no meu percurso curricular.
Por ltimo, no menos importante, agradeo minha namorada pelo apoio e muita pacincia
que teve comigo.

Aos meus avs

Resumo
Em Portugal existem 33 mil surdos que usam a Lngua Gestual Portuguesa como sua lngua
materna. Esta lngua tem um lxico, regras sintticas e semnticas, tal como uma lngua oral. Os
intrpretes qualificados da LGP escasseiam, pelo que faz sentido recorrer a avatares capazes de
reproduzir esta lngua. As principais vantagens no uso de avatares so que a animao de um gesto
pode ser facilmente manipulada e reutilizada. Estas propriedades tornam possvel a combinao
exponencial de gestos de palavras em frases de lngua gestual, ao contrrio do vdeo que teria de
ser refeito totalmente sempre que se entenda alterar ou adicionar um gesto.
Recentemente tm proliferado as tecnologias de baixo custo, com especial destaque para o

sensor Microsoft Kinect , que permitem a aquisio de dados do movimento humano. Embora os
dados recolhidos pelo sensor sejam limitados ao nvel dos dedos, tornam o processo de captura de
movimentos muito mas acessvel e prtico do que os sistemas convencionais.
Neste sentido, explorei um conjunto de tcnicas para a aquisio do movimento humano e
traduo do mesmo para um personagem virtual. Como resultado dessa explorao, adotei uma

abordagem hbrida que utiliza o sensor Kinect para gravar o movimento corporal e facial,
enquanto o movimento dos dedos animado manualmente numa ferramenta de animao.
Foi desenvolvida uma prova de conceito que usa um avatar como intrprete gestual que de
uma forma divertida introduz conceitos bsicos de LGP dirigido a surdos e ouvintes, e em
particular a crianas. Os resultados da avaliao foram muito interessantes e mostraram que til
uma aplicao deste gnero.

Palavras-chave: lngua gestual portuguesa, LGP, avatar, animao, captura de movimentos,


crianas, ensino, kinect.

10

11

Abstract

In Portugal there are 33,000 deaf people that use Portuguese Sign Language (PSL) as their
mother language. This language has a lexicon, a syntactic and semantic rules such as an oral
language. The qualified interpreters of PSL are scarce, so it makes sense to use avatars capable of
reproducing this language. The main advantages in the use of avatars are the ease of manipulation
and reusability of their animation. These properties make it possible to exponential combine sign
gestures to create sentences, unlike the video which has to be totally remade whenever it is
necessary to change or add a sign.
Recently the dissemination of low-cost technologies, with special attention to the Microsoft
Kinect sensor, which allows the acquisition of motion data. Although the collected data is not
accurate on finger level precision, makes the process of motion capture more accessible and
practical than the conventional systems.
In this sense, we explored a set of techniques to translate human movement into a 3D
character. As a result of this development, I adopted a hybrid approach that uses the Kinect sensor
to record the body and facial movement, while the finger movement is animated with a manual
method by a software animation tool.
It was developed a proof of concept that uses an avatar as an sign language interpreter that in
a enjoyable environment, introduces basic concepts of SPL designed to deaf and hearing people,
and in particular to children. The results of the evaluation were very interesting and showed that it
is useful an application of this genre.

Keywords: portuguese sign language, PSL, avatar, animation, motion capture, children,
education, kinect.

12

13

Contedo
Lista de Figuras ......................................................................................................... 19
Lista de Tabelas ........................................................................................................ 23
Listagens................................................................................................................... 25
Captulo 1

Introduo ............................................................................................ 26

1.1 Motivao ............................................................................................................. 26


1.2 Objetivos ............................................................................................................... 27
1.3 Contribuies / Trabalho realizado ...................................................................... 28
1.4 Metodologia de desenvolvimento ........................................................................ 29
1.5 Estrutura do documento ....................................................................................... 29
Captulo 2

Conceitos e Trabalho Relacionado ......................................................... 31

2.1 Conceitos............................................................................................................... 31
2.1.1 Lngua Gestual Portuguesa ........................................................................... 31
2.1.2 Avatar ........................................................................................................... 33
2.1.3
2.1.4

Captura de movimentos ............................................................................... 36


Sensores de profundidade............................................................................ 37

2.2 Trabalhos Relacionados ........................................................................................ 41


2.2.1 CopyCat......................................................................................................... 41
2.2.2 Ensino da Lngua Gestual Assistido por Personagens 3D Virtuais ................ 42
2.2.3 Simon-the-Signer .......................................................................................... 44
2.2.4 TESSA ............................................................................................................ 45
2.2.5 Visia............................................................................................................... 45
2.2.6 eSign ............................................................................................................. 46
2.2.7

Curso de Lngua Gestual em DVD ................................................................. 48

2.3 Dicionrios Gestuais ............................................................................................. 48


2.3.1 Spread the Sign ............................................................................................. 48
2.3.2 Signing Savvy ................................................................................................ 49
2.3.3 Dicionrios Gestuais da VCom3D ................................................................. 50
2.3.4 Anlise comparativa entre Dicionrios Gestuais .......................................... 51
2.4 Sumrio ................................................................................................................. 51
14

Captulo 3

Investigao e Testes Prvios ................................................................. 52

3.1 Escolha do software de animao 3D .................................................................. 52


3.2 Adaptao e primeiros testes em animao 3D ................................................... 53
3.3 Soletrar palavras em LGP criao de plugin ...................................................... 54
3.4 Animao de gestos assistida por Kinect ............................................................. 55
3.5 Definio de gesto por coordenadas criao de plugin..................................... 59
3.6 Hand tracking desenvolvimento de algoritmos ................................................. 61
3.7 Finger tracking - testes ......................................................................................... 63
3.8 Finger tracking semiautomtico aplicao Pose Estimation ............................. 66
3.9 Sumrio ................................................................................................................. 73
Captulo 4

Gerao e animao do Avatar .............................................................. 74

4.1 Prottipo base - primeira iterao ....................................................................... 74


4.1.1 Visualizar frases em LGP ............................................................................... 75
4.1.2 Avaliao com surdos na Associao Portuguesa de Surdos ....................... 77
4.2 Novo avatar - segunda iterao ........................................................................... 79
4.2.1 Concepo de novo Avatar ........................................................................... 80
4.3 Novos gestos, captura facial e aplicao - terceira iterao................................ 82
4.3.1 Produo de novos gestos ............................................................................ 82
4.3.2 Captura facial ................................................................................................ 83
4.3.3 Aplicao....................................................................................................... 85
4.4 Sumrio ................................................................................................................. 85
Captulo 5

Os meus primeiros gestos ...................................................................... 86

5.1 Motivao ............................................................................................................. 86


5.2 Os meus primeiros gestos ..................................................................................... 86
5.3 Pblico-alvo .......................................................................................................... 89
5.4 Engenharia de Requisitos ..................................................................................... 89
5.4.1 Levantamento de Requisitos ........................................................................ 89
5.4.2 Anlise de Requisitos .................................................................................... 90
5.5 Desenho do Sistema ............................................................................................. 93
5.5.1 Arquitetura da aplicao .............................................................................. 94
5.5.2 Estrutura de Dados ....................................................................................... 95
15

5.5.3
5.5.4

Diagrama de classes ..................................................................................... 96


Design e Conceo de Interfaces .................................................................. 97

5.6 Implementao ................................................................................................... 104


5.6.1 Bibliotecas / APIs ....................................................................................... 105
5.6.2 Sistema de Autenticao ............................................................................ 105
5.6.3 Front-end .................................................................................................... 107
5.6.4 Backoffice ................................................................................................... 114
5.6.5 Problemas encontrados.............................................................................. 114
5.7 Resultados .......................................................................................................... 116
5.8 Sumrio ............................................................................................................... 116
Captulo 6

Avaliao de Os meus primeiros gestos............................................. 117

6.1 Objetivo............................................................................................................... 117


6.2 Participantes ....................................................................................................... 117
6.3 Mtricas .............................................................................................................. 117
6.4 Mtodo ............................................................................................................... 119
6.5 Resultados .......................................................................................................... 119
6.5.1 Primeiro questionrio teste ao Dicionrio .............................................. 120
6.5.2
6.5.3

Segundo questionrio teste ao modo Adivinhar ..................................... 121


Terceiro questionrio Perguntas genricas ............................................. 122

6.6 Sumrio ............................................................................................................... 123


Captulo 7

Concluso ............................................................................................ 124

7.1 Dificuldades encontradas ................................................................................... 126


7.2 Opinio Crtica .................................................................................................... 127
7.3 Trabalho futuro ................................................................................................... 127
Bibliografia ............................................................................................................. 130
ANEXOS .................................................................................................................. 135
Anexo 1 Contexto sociocultural dos surdos em Portugal ......................................... 136
Anexo 2 Especificaes tcnicas e algoritmo usado pelo Kinect .............................. 137
Anexo 3 Questionrio da avaliao do prottipo inicial para componente do Soletrar
palavras em LGP ................................................................................................................. 138
16

Anexo 4 Questionrio da avaliao do prottipo inicial para a visualizao de frases


em LGP ................................................................................................................................ 139
Anexo 5 Descrio formal do caso de uso Traduzir e Adivinhar gesto de palavras . 141
Anexo 6 Descrio formal do caso de uso Compositor de Frases ............................. 143
Anexo 7 Descrio dos PageMethods utilizados na aplicao front-end ................. 144
Anexo 8 Resultados da aplicao (algumas screenshots) ........................................ 146
Anexo 9 Guio da avaliao do Dicionrio ............................................................... 149
Anexo 10 Questionrio da avaliao do Dicionrio ................................................. 150
Anexo 11 Guio da avaliao do modo Adivinhar.................................................... 152
Anexo 12 Questionrio da avaliao do modo Adivinhar ........................................ 153
Anexo 13 Questionrio Genrico .............................................................................. 155

17

18

Lista de Figuras
Figura 1 - Modelo com texturas ............................................................................................................................ 34
Figura 2- Malha poligonal do avatar ..................................................................................................................... 34
Figura 3 Esqueleto do avatar .............................................................................................................................. 35
Figura 4 Ator com fato de velcro elstico e marcadores (sistema tico) (Dinis 2012)........................................ 37

Figura 5 - Microsoft Kinect ................................................................................................................................... 38


Figura 6 As 20 articulaes detetadas pelo Kinect ............................................................................................. 39
Figura 7 3Gear, teste simples ao finger tracking ................................................................................................ 39
Figura 8 FORTH Kinect 3D Hand Tracking, exemplo de tracking ........................................................................ 40
Figura 9 - Interface de jogo CopyCat (Lee, Henderson e Brashear 2005) .............................................................. 41
Figura 10 - Interface do Construtor 3D (Deusdado 2002) ..................................................................................... 42
Figura 11 -- Abecedrio 3D exibindo letra F (Deusdado 2002)........................................................................... 43
Figura 12 - Gesto do nmero 0 no Gesturio 2D (Deusdado 2002) ...................................................................... 43
Figura 13- Animaes Vdeo exibindo verbo Amar (Deusdado 2002) ................................................................ 43
Figura 14 Equipamento para a captura de movimentos a partir de um intrprete profissional de Lngua
Gestual. Utilizado nos trabalhos Simon-the-Signer, seco 2.2.4, e 2.2.5, da esq. para a direita
(Farzad, et al. 1999, Stephen Cox, et al. 2002, Verlinden, Tijsseling e Frowein 2002) ........................................... 44
Figura 15 - Intrprete virtual Simon (Farzad, et al. 1999) ..................................................................................... 44
Figura 16- Avatar Visia e interface da aplicao (Verlinden, Tijsseling e Frowein 2002) ...................................... 46
Figura 17 eSign (Zwitserlood, et al. 2005) .......................................................................................................... 47
Figura 18 - Curso de Lngua Gestual: contedos do primeiro ao terceiro nvel (esq. para a direita) ..................... 48
Figura 19 - Curso em Lngua Gestual: exerccios (esq.), tabela de classificao (direita) ...................................... 48
Figura 20 Interfaces Web (esq.) e de Android (direita) do Spread the Sign ........................................................ 49
Figura 21 Signing Savvy: construtor de frases .................................................................................................... 49
Figura 22 Signing Savvy: consultar gesto ........................................................................................................... 49
Figura 23 Signing Science Pictionary .................................................................................................................. 50
Figura 24 Gestos estticos para as letras A (esq.) e O (direita) em LGP no MotionBuilder ......................... 53
Figura 25 Plugin Soletrar palavras em LGP, situado na margem inferior do MotionBuilder .............................. 54
Figura 26 Brekel Kinect (captura) ....................................................................................................................... 55
Figura 27 MotionBuilder (captura) ..................................................................................................................... 55
Figura 28 - Captura de movimentos integrada num avatar em MotionBuilder .................................................... 56
Figura 29 Falha no tracking ................................................................................................................................ 57

19

Figura 30 Brao trespassa corpo do avatar ........................................................................................................ 57


Figura 31 - Comparao entre animao assistida por Kinect (esq.) e animao manual (dir.) ........................... 58
Figura 32 - Poses Animator: interface para carregar no avatar gestos estticos ................................................. 59
Figura 33 - Poses Animator: interface para salvar em ficheiro gestos estticos ................................................... 59
Figura 34 - Poses Animator: interface para visualizar e editar o contedo do ficheiro de gestos ......................... 60
Figura 35 - Poses Animator: interface para gerar a animao ............................................................................. 60
Figura 36 - Algoritmo de hand tracking por Depth Segmentation ........................................................................ 61
Figura 37 - Algoritmo de hand tracking usando as articulaes detetadas pelo Kinect........................................ 62
Figura 38 - Comparao entre os algoritmos de hand tracking desenvolvidos ..................................................... 62
Figura 39 Gesto da letra A em LGP com duas perspetivas diferentes ............................................................. 64
Figura 40 - Deteo de contornos para gesto da letra A (esq.) e gesto da letra F (direita) ............................... 65
Figura 41 - Deteo de contornos para gesto da letra B (esq.) e gesto da letra D (direita) ............................... 65
Figura 42- Deteo de contornos para configurao de mo em garra (usada na LGP, lado esq.) e gesto para
letra V (dir.) ........................................................................................................................................................ 65
Figura 43 - Pose Estimation: ecr inicial (esq.) e ecr depois de tirada a foto (direita) ........................................ 67
Figura 44 - Pose Estimation: interface de marcao de pontos com Zoom........................................................... 67
Figura 45 Pose do gesto mo aberta no MotionBuilder ........................................................................................ 68
Figura 46: Pose ...................................................................................................................................................... 68
Figura 47 - Pose Estimation: marcao de articulaes para o gesto relativo letra C em LGP ....................... 68
Figura 48 - Pose do gesto para letra C em LGP no MotionBuilder ..................................................................... 69
Figura 49 - Kinect Skeleton 3D em seated mode com esferas ............................................................................... 70
Figura 50 Kinect Skeleton 3D: full skeleton tracking com cubos ......................................................................... 70
Figura 51 - Kinect Skeleton 3D: visualizao de opes ........................................................................................ 71
Figura 52 - Kinect Skeleton 3D: esqueleto movido por rotaes ........................................................................... 72
Figura 53 - Soletrar palavras em LGP com palavras predefinidas (esq.) e Avatar utilizado (dir.) ......................... 74
Figura 54 Menu Story do MotionBuilder (esq.) e avatar utilizado (direita) ........................................................ 76
Figura 55 Avatar com problemas na importao ............................................................................................... 80
Figura 56 Foto dos avatares: (a) Artur - (b) Mimi - (c) Nucha............................................................................. 82
Figura 57 Faceshift: expresses faciais: feliz (esq.), surpreendido (direita), zangado (baixo) ............................ 84
Figura 58 Faceshift: mapeamento de blendshapes entre avatar e software ..................................................... 84
Figura 59 Gesto Ol em LGP: incio do gesto sem expresso facial (esq.) e a meio do gesto v-se a expresso
facial ...................................................................................................................................................................... 85
Figura 60 Ver um gesto na interface principal.................................................................................................... 87
Figura 61 - Compositor de frases (em baixo) ......................................................................................................... 88
Figura 62 - Adivinhar gesto ................................................................................................................................... 88
Figura 63 Gestor de Contedos .......................................................................................................................... 88
Figura 64 - Caso de uso da Autenticao no sistema ............................................................................................ 90
Figura 65 - Caso de uso para Traduzir e Adivinhar gestos de palavras ................................................................. 91

20

Figura 66 - Caso de uso para Compositor de Frases .............................................................................................. 92


Figura 67 - Caso de uso para Backoffice ................................................................................................................ 93
Figura 68 Arquitetura da aplicao .................................................................................................................... 94
Figura 69 Modelo de Dados do sistema ............................................................................................................. 95
Figura 70 Diagrama de classes do lado do servidor (front-end) ......................................................................... 96
Figura 71 Ficheiros javascript usados no lado do cliente (browser) ................................................................... 97
Figura 72 Prottipo de BF: interface inicial esq. e interface principal direita ............................................. 100
Figura 73 Prottipo de BF: interface principal iterado esq. e interface vdeo direita ................................. 100
Figura 74 Prottipo de BF (iterao sobre o interface compositor de frases) .................................................. 101
Figura 75 Interface principal (prottipo de BF esq. vs. AF direita) .............................................................. 101
Figura 76 Interface para visualizar vdeo (baixa esq. vs. alta fidelidade direita) ........................................ 101
Figura 77 Evoluo do prottipo de AF para a Lista de Palavras (evoluo em cima, verso final em baixo) . 103
Figura 78 Evoluo do prottipo de AF para Botes de Opes (evoluo em cima, verso final em baixo) .. 104
Figura 79 Compositor de Frases (prottipo de AF) ........................................................................................... 104
Figura 80 Autenticao (front-end esq. e backoffice direita) ..................................................................... 106
Figura 81 divs do layout: logo, contentBar e leftBar ........................................................................................ 108
Figura 82 Botes de opes: voltar ao interface inicial, ver definies, e fazer login/logout ........................... 108
Figura 83 - Lista de palavras ................................................................................................................................ 109
Figura 84 Ver Vdeo .......................................................................................................................................... 110
Figura 85 Compositor de Frases: arrastando uma palavra .............................................................................. 113
Figura 86 Grfico da mdia de respostas ao teste do Dicionrio ..................................................................... 120
Figura 87 Grfico em crculo de respostas do primeiro questionrio ............................................................... 121
Figura 88 Grfico da mdia das respostas ao questionrio do modo Adivinhar .............................................. 121
Figura 89 Grficos em crculo de respostas do segundo questionrio .............................................................. 122
Figura 90 Grfico da mdia dos resultados para o Questionrio Geral ........................................................... 122
Figura 91 Inteface Login (front-end)

Figura 92 Interface Home (front-end)................................ 146

Figura 93 - Interface Dicionrio, ver gesto (front-end) ........................................................................................ 146


Figura 94 Interface Dicionrio: compositor de frases (front-end) .................................................................... 147
Figura 95 - Interface Adivinhar Gesto: incio (front-end) ..................................................................................... 147
Figura 96 Interface Adivinhar Gesto, utilizador acertou (front-end) ................................................................ 147
Figura 97 Interface Login (backoffice) .............................................................................................................. 148
Figura 98 Interface Principal (backoffice) ......................................................................................................... 148
Figura 99 Interface Editar Utilizadores (backoffice) ......................................................................................... 148
Figura 100 Interface Ver Utilizadores (backoffice) ........................................................................................... 148

21

22

Lista de Tabelas

Tabela 1 - Comparao entre sensor Microsoft Kinect e Leap Motion ............................................................... 40


Tabela 2 Propriedades principais nos Dicionrios Gestuais descritos ................................................................ 51
Tabela 3 Frases exemplo em LP e respetiva glosa .............................................................................................. 75
Tabela 4 Fontes encontradas para definio do interface ............................................................................... 102
Tabela 5 Questionrio do teste ao Dicionrio .................................................................................................. 118
Tabela 6 Questionrio do teste ao modo Adivinhar ......................................................................................... 118
Tabela 7 Questionrio Geral ............................................................................................................................. 119
Tabela 8 Descrio formal do caso de uso Traduzir palavram em LG .............................................................. 141
Tabela 9 Descrio formal do caso de uso Adivinhar gesto para uma determinada palavra .......................... 142
Tabela 10 Descrio formal do caso de uso Traduzir frase em LG ................................................................... 143

23

24

Listagens
Listagem 1 - Criao de sesso atravs de cookie explcito (front-end) .............................................................. 106
Listagem 2 Criao de sesso e redirecionamento por FormsAuthentication .................................................. 106
Listagem 3 Lista de PageMethods ou mtodos AJAX utilizados no front-end .................................................. 107
Listagem 4 Cdigo para fazer uma pesquisa (front-end) ................................................................................. 109
Listagem 5 - Cdigo para alternar entre vdeo com loop activou ou inativo ....................................................... 110
Listagem 6 - Cdigo de definio de DragSources e DropTargets ..................................................................... 111
Listagem 7 Cdigo para processar a ao do utilizador quando tenta arrastar uma palavra para o espao
respetivo do Compositor de Frases ...................................................................................................................... 112
Listagem 8 Cdigo para fazer o menino assistente falar (em Adivinhar gesto) ............................................ 113
Listagem 9 Algoritmo para atribuir o valor do slider velocidade de vdeo do flowplayer, evitando o
comportamento estranho da atribuio direta entre o valor do slider e vdeo................................................... 115

25

Captulo 1
Introduo
Num contexto digital os avatares personificam um utilizador ou agente. So personagens
virtuais que representam graficamente entidades que tm usualmente, mas no exclusivamente,
aparncia humana. Os avatares ou personagens computorizadas tm vindo a ser aplicados numa
panplia de reas distintas, nomeadamente, na psicoterapia, indstria cinematogrfica e de
videojogos, redes sociais, publicidade, entre outras.
Por seu turno, a tecnologia de captura de movimentos (motion capture) tem permitido animar
estes personagens virtuais de forma mais natural dotando-os de movimentos credveis. Esta
tecnologia utiliza cmeras especiais e cenrios prprios para capturar o movimento humano. Este
trabalho focou-se numa rea particular de aplicao dos avatares: um intrprete virtual para
expressar Lngua Gestual.
Este projeto foi realizado no mbito da cadeira de Projeto de Engenharia Informtica no DILabMAg (Departamento de Informtica- Laboratrio de Modelao de Agentes).

1.1

Motivao
Os media eletrnicos, tais como a televiso, filmes e Internet so fontes de valor
incalculvel de informao e entretenimento, mas para um nmero significativo de pessoas, as
deficincias auditivas tornam difcil o desfrutar do mundo digital que a maioria toma como
garantido.1
Existem alguns mtodos para tornar acessvel a pessoas surdas, a informao divulgada no
mundo eletrnico. De todos os mtodos, o mais utilizado a legendagem 2. A leitura de legendas
muito til para pessoas com dificuldades auditivas ou que ficaram surdas ao longo da vida. No
entanto, as pessoas surdas congnitas ( nascena) tm dificuldades em compreender a lngua
escrita, e acham muito difcil interpretar as legendas. Esta situao deve-se ao facto de o surdo

Transcrio livre de (Power e Power s.d.)

A legendagem consiste na transcrio de discurso sonoro em texto.

26

congnito ter mais dificuldade do que uma pessoa ouvinte em estabelecer a relao entre as
palavras escritas e o sentido de abstrao das mesmas (Power e Power s.d.). Para a maioria dos
surdos, a lngua gestual a sua lngua materna, ou seja, uma vez que a sua primeira lngua, a
lngua que usam naturalmente. Esta lngua bastante diferente de uma lngua oral, tendo um
lxico e uma gramtica prprios. Os intrpretes qualificados de Lngua Gestual escasseiam pelo
que faz sentido recorrer a personagens virtuais ou avatares.
A computao grfica tem vindo a evoluir ao longo dos anos. A qualidade grfica dos
avatares est continuamente a aproximar-se de uma representao cada mais vez realista de
humanos verdadeiros. Este cenrio cria a oportunidade para aplicaes com personagens mais
expressivas, mais apelativas, qualidades determinantes para a usabilidade e aceitao da aplicao
por parte do pblico-alvo. Uma das vantagens do uso de avatares em relao ao vdeo a fcil
manipulao do avatar e do ambiente 3D onde est inserido.
Tradicionalmente, a expresso da Lngua Gestual em formato eletrnico faz-se recorrendo ao
vdeo. Existem vantagens e desvantagens no uso de avatares em detrimento do vdeo. A
desvantagem o tempo de produo da animao do avatar em comparao com a rapidez de
gravao de um gesto em vdeo. Todavia, a principal vantagem que a animao de um gesto
pode ser manipulada e reutilizada muito mais facilmente do que um vdeo. Estas caractersticas
permitem formar frases atravs da combinao de vrios gestos atmicos (i.e. gestos de palavras),
permite tambm a troca de intrprete virtual por outro distinto, ou at mesmo alterao das suas
roupas e adereos, enquanto para o vdeo isto no possvel sem ser refeito ou filmado de novo.
Uma vez que os avatares residem num ambiente virtual 3D, vo de encontro natureza
tridimensional da prpria Lngua Gestual, logo, este ambiente torna possvel a visualizao e
compreenso do gesto em ngulos diferentes. Assim abrem-se portas a aplicaes mais interativas
e a novos cenrios de aplicaes em relao ao uso do vdeo.
At h bem pouco tempo, a captura de movimentos era suportada exclusivamente por uma
tecnologia bastante cara. Sendo necessrio equipamento dispendioso, espao prprio, recursos
humanos especializados e caros para operar uma sesso de captura. O aparecimento recente de

novas tecnologias, com especial destaque para o Microsoft Kinect , muito menos dispendiosas,
veio tornar acessvel a captura de movimentos num ambiente vulgar e produzir animaes para um
avatar com movimentos mais realistas do que a tradicional animao 3D.

1.2

Objetivos
Este projeto tem como objetivo fundamental conceber um avatar animado que personifique
um intrprete virtual da Lngua Gestual Portuguesa (LGP). As etapas necessrias so a gerao do
modelo do avatar, passando pela animao do prprio com gestos de Lngua Gestual Portuguesa, e
desenvolver uma aplicao que suporte a interao com este personagem virtual.

27

O conjunto de gestos produzido neste trabalho ser representativo de uma prova de conceito, e
obtido por um processo de animao assistido por uma tecnologia de captura de movimentos de
baixo-custo. Pretende-se tambm chegar combinao de gestos atmicos de modo a formar
frases simples em LGP.

1.3

Contribuies / Trabalho realizado


Neste trabalho foram usados vrios avatares, um dos quais considerado adequado por tcnicas
da Associao Portuguesa de Surdos para executar gestos de LGP no mbito da interao com
crianas.
Foi realizada animao de cerca de 35 gestos que correspondem a palavras de LGP usando
um mtodo hbrido, por um lado a captura do movimento do corpo com o sensor de profundidade

Microsoft Kinect , e por outro, recorrendo a animao manual para descrever a configurao da
mo do gesto. Foram produzidos gestos para representar pronomes pessoais, pronomes
interrogativos, verbos, substantivos, entre outros. A partir deste conjunto foram feitas algumas
combinaes de gestos atmicos de modo a produzir animaes de frases em LGP.
De forma a demonstrar as funcionalidades acima conseguidas, foi criada uma aplicao Web
denominada Os meus primeiros gestos, que permite consultar, procurar palavras, ver a traduo do
seu significado em LGP, compor frases selecionando palavras ou gestos atmicos, e testar os
conhecimentos do utilizador atravs de um modo para adivinhar palavras. De modo a estender as
funcionalidades da aplicao anterior, foi desenvolvida outra aplicao Web do tipo Backoffice ou
gestor de contedos, destinada a superutilizadores para gerir os contedos da aplicao principal.
No desenvolvimento desta tese tambm resultaram como investigao e trabalho preliminar,
as seguintes ferramentas de software:
Dois plugins para a aplicao MotionBuilder (Autodesk 2011): o primeiro denominase Soletrar Palavras em LGP, converte qualquer letra introduzida por um utilizador
para um gesto de LGP; o segundo denomina-se Poses Animator e serve para carregar
num avatar gestos estticos de LGP (i.e. gestos de letras) que tenham sido
armazenados previamente num ficheiro no formato prprio da aplicao, alm de que
consegue produzir uma animao em tempo real de transies de entre vrios gestos
estticos armazenados em ficheiro.
Duas aplicaes Desktop: a primeira faz o seguimento (tracking) automtico da pose
corporal, juntamente com o tracking assistido pelo utilizador da pose 3D dos dedos, e
por conseguinte, converte essa informao capturada para pose de um esqueleto em
MotionBuilder; a segunda permite visualizar um esqueleto a mover-se conforme os
movimentos feitos por um utilizador atravs do sensor Kinect.

28

Dois algoritmos de hand tracking3 atravs do sensor Kinect: o primeiro utiliza Depth
Segmentation para detetar as mos, e o segundo utiliza a posio das articulaes das
mos fornecida diretamente pelo sensor.

1.4

Metodologia de desenvolvimento
A metodologia usada neste projeto foi o processo de desenvolvimento iterativo (DoIT 2005).
As iteraes ao longo do projeto foram:
1. Desenvolvimento de um prottipo composto por um plugin para Soletrar Palavras
em LGP (3.3 ) e por um subconjunto de frases em LGP feitas a partir da
combinao de gestos atmicos.
Visita APS de modo a avaliar o prottipo desenvolvido (4.1.2 ).
2. Criao de um novo avatar e a sua reavaliao por surdos, com o intuito de chegar
a um personagem virtual mais adequado ao utilizador (4.2 ).
3. Criao de uma aplicao Web que apresente contedos em LGP (Captulo 5).
Teste da aplicao com utilizadores (Captulo 6).
A principal vantagem desta metodologia envolver o utilizador no processo de
desenvolvimento. Em vez de esperar at que a aplicao se torne num produto final, fase em que
cada alterao tem um impacto muito grande, os problemas foram identificados e resolvidos nas
fases intermdias. Problemas como rigor insuficiente na animao, escolha de avatar inadequado
para o objetivo, entre outros. Outra vantagem deste mtodo foi que em cada iterao as metas do
projeto foram reavaliadas, conforme o insight obtido em cada iterao.

1.5

Estrutura do documento
Este documento composto por 7 captulos, estruturados da forma que a seguir se apresenta.
O captulo 1 apresenta uma vista geral do trabalho aqui descrito, bem como os objetivos
principais e as razes que motivaram este projeto.
O captulo 2 comea por apresentar um conjunto de conceitos relevantes ao entendimento dos
temas abordados na tese. Em seguida, apresenta uma perspetiva geral do estado da arte, relatando
os projetos relacionados com as reas de Lngua Gestual e Avatares.

Hand tracking consiste na determinao da posio da mo em cada instante de tempo.

29

No captulo 3 apresenta-se o trabalho preliminar realizado para dominar a tecnologia


utilizada. Neste captulo apresenta-se toda a investigao e testes efetuados nas reas de animao,
captura de movimentos, hand tracking e finger tracking.
O captulo 4 descreve o processo de gerao e animao do avatar, na componente corporal e
facial. Tambm se apresentam os resultados dos primeiros testes com utilizadores.
No captulo 5 apresenta-se a aplicao desenvolvida onde se descreve detalhadamente o
processo realizado na sua construo.
No captulo 6 descrevem-se os testes com utilizadores realizados aplicao desenvolvida.
Por ltimo, no captulo 7 faz-se a concluso do trabalho, resumindo os principais temas
abordados na tese e descrevendo os caminhos que o projeto pode tomar no futuro.

30

Captulo 2
Conceitos e Trabalho Relacionado
Este captulo apresenta os conceitos fundamentais do contexto desta tese, bem como alguns
trabalhos relacionados. Os primeiros trabalhos apresentados consistem em projetos de referncia
que cruzam as reas de Avatares e Lngua Gestual. Em seguida destaca-se um tipo particular de
projetos, os dicionrios de gestos, pois estes representam o grupo de aplicaes que mais se
aproxima da aplicao final desta tese. O captulo concludo com uma comparao entre os
trabalhos deste grupo, confrontando-se algumas das caractersticas mais importantes de cada um.

2.1

Conceitos
2.1.1 Lngua Gestual Portuguesa
A maioria dos pases com um nmero significativo de surdos congnitos tem uma lngua
gestual prpria. Em Portugal4 existe a Lngua Gestual Portuguesa (LGP), no Brasil existe a Lngua
Brasileira de Sinais (LIBRAS) e nos Estados Unidos existe a American Sign Language (ASL),
referindo apenas alguns exemplos.
No contexto da lngua gestual, define-se por gesto, um movimento ou sequncia de
movimentos necessrios representao de uma ideia. A execuo de um gesto pode ser
decomposta em trs componentes: movimento dos membros superiores, configurao e orientao
das mos, e expresso facial. O indivduo que gestua 5, isto , que executa gestos, ter de ter
sempre uma mo dominante (usualmente a direita), a sua mo principal e mais natural realizao
a lngua gestual.
As lnguas gestuais no so reprodues da lngua escrita e falada. Cada lngua gestual utiliza
expresses faciais e movimento corporal para criar uma linguagem prpria: com caractersticas
sintticas, gramaticais e semnticas, idnticas s das lnguas faladas. A lngua gestual impe

Para mais informaes sobre o contexto socio-cultural dos surdos portuguesa consultar o Anexo 1.

A palavra gestua (verbo gestuar) um termo especfico que significa transformar em gesto.

31

tambm que a representao contextual dos sentimentos, pensamentos e do raciocnio seja


transmitida, e no s as frases e palavras.
Em LGP, uma das formas de expressar os sentimentos pela adio dos gestos triste,
contente ou aborrecido frase, para nomear alguns. No entanto, a expresso dos sentimentos
representada principalmente pelo uso e reforo do gesto com expresses faciais. Por exemplo, a
expresso facial do sorriso associado frase em Lngua Portuguesa (LP) Eu passei no exame de
cdigo transmite uma ideia positiva e de felicidade. A intensidade da expresso facial tambm
define o nvel de entoao que se quer dar ao sentimento. A expresso facial define o sentido
emocional da mensagem, assim como tambm, serve para distinguir gestos em que a configurao
manual do gesto (i.e. movimento dos braos e configurao da mo) seja igual, mas que tenham
significados diferentes. Vejamos a frase em LP, O meu irmo chama-se Joo, em LGP o gesto
para irmo se for acompanhado de expresso da boca som papa, representa a frase referida.
Caso o mesmo gesto seja acompanhado com a expresso bochecha direita cheia, ento
corresponde palavra igual.
Muitas vezes uma palavra tem uma correspondncia direta com um gesto, porm, isso nem
sempre acontece. A palavra mdico surge da combinao do gesto doente seguido do gesto
auscultar. Nesse caso, considera-se mdico um gesto no atmico, composto pelos gestos
atmicos doente e auscultar.
A glosa passa para um registo escrito a forma como a estrutura da LGP se organiza. Os
exemplos em seguida que traduzem textualmente os gestos de LGP usam este mtodo. A LP tem
como estrutura frsica sujeito-verbo-objeto (SVO), por exemplo, consideremos a frase: "Eu vou
escola", onde "EU" o sujeito, "VOU" o verbo, e "ESCOLA" o objeto. A LGP tem dois tipos de
estrutura frsica possveis: sujeito-objeto-verbo (SOV) e objeto-sujeito-verbo (OSV). A frase
anterior ficaria ESCOLA EU IR (glosa), usando sintaxe OSV. O verbo aparece no infinitivo e no
fim da frase. As preposies, os artigos definidos e indefinidos so omitidos na lngua gestual
portuguesa.
Quem se expressa em lngua gestual, especialmente um surdo congnito, pensa visualmente
e gestua diretamente da forma como pensa. Na prtica, a ordem das palavras reflete a importncia
que se quer dar a cada uma. Consideremos um exemplo, no qual um sujeito quer dizer a algum
que vai ao cinema e est muito entusiasmado. A primeira coisa que o sujeito pensa no cinema e
depois em ir para l. Ento o sujeito gestuar: CINEMA EU IR (OSV). Por outro lado, se o sujeito
estiver sereno em relao a um passeio, e ocorrer-lhe a ideia de ir ao cinema, geralmente gestuaria:
EU CINEMA IR (SOV).

Conceitos gramaticais
A marcao do gnero realizada somente nos seres animados. utilizado o prefixo
mulher para marcar o gnero feminino, enquanto o masculino geralmente caracterizado pela
32

ausncia da marca homem. Para exemplificar o feminino, considere-se a palavra rainha, esta
traduzida pelo gesto mulher seguido do gesto rei. Todavia existem excees, por exemplo,
palavras como pai / me, ou carneiro / ovelha, tm um gesto distinto para cada gnero.
A concordncia de nmero pode ser realizada por vrias maneiras: repetio do gesto; por
redobro (i.e. realizao do gesto por ambas as mos); incorporao de um nmero (por ex.: LIVRO
CINCO); ou por incorporao do sufixo muitos. Normalmente, nestas situaes os gestos so
acompanhados de reforo da expresso facial.
Para a marcao do tempo verbal utilizado por sufixao o gesto de passado ou futuro
forma infinitiva do verbo, marcando o respetivo tempo verbal.
Os tipos de frase interrogativa e exclamativa requerem o uso da expresso facial durante toda
a frase. No caso da interrogativa, esta pode ser combinada com pronomes interrogativos que
surgem no final da frase. Como exemplo, a frase em LP Onde Vais?, ficaria em LGP TU IR
ONDE?. Quanto marcao da forma negativa, pode-se acrescentar o gesto no no fim da frase,
ou realizar-se simultaneamente a frase e o movimento natural da cabea referente a no.

Portugus Gestual
O Portugus Gestual (PG) utiliza o vocabulrio da LGP numa estrutura frsica igual da LP.
Serve unicamente para mostrar a ordem dos gestos com a sintaxe do Portugus, e no transmite de
maneira vlida o pensamento de um surdo congnito. O PG considerado um sistema artificial,
destinada a ouvintes, ao contrrio da LGP que uma lngua natural. Em cada lngua gestual existe
este sistema equivalente, por exemplo, no Reino Unido, existe o Sign Supported English (SSE),
que utiliza o vocabulrio da lngua gestual britnica com a estrutura frsica da lngua inglesa.

2.1.2 Avatar
A palavra avatar tem origem no Hindusmo e serve para designar a representao terrestre
de uma divindade. Em computao, avatar consiste na representao grfica do utilizador ou alterego deste. Certos autores (Damer, Judson e Dove 1999) tm uma definio mais ampla de avatar e
definem-nos como personagens, jogadores, atores virtuais, cones ou seres humanos virtuais.
Um avatar pode ter ou no aparncia humana, e ter uma forma tridimensional como nos jogos de
computador, ou uma forma bidimensional comum nos fruns da Internet. Nos mundos virtuais,
nomeadamente nos jogos, o avatar um personagem interativo. Em muitos casos, todos os aspetos
do personagem podem ser parametrizados como o tipo de musculatura, cabelo, pele ou roupa. Um
exemplo de um mundo virtual repleto de avatares o jogo Second Life (da Silva 2010).
Para percebermos como se anima um avatar inserido num mundo virtual, preciso primeiro
compreender a estrutura interna de um personagem virtual. Os pargrafos seguintes apresentam o
conceito de avatar no contexto da animao.
33

Um avatar um modelo grfico, cuja representao grfica assenta numa malha poligonal.
Esta malha, tambm conhecida como mesh, representa uma estrutura modelada a partir de formas
elementares geomtricas. No final da modelao da mesh obtm-se a superfcie que d forma
personagem (Figura 1). Em seguida necessrio representar o seu aspeto exterior, aplicando
materiais.
Os materiais so elementos que representam as propriedades de cor, intensidade de reflexo,
sombra, transparncia, etc. Um exemplo de material o vidro de um copo. Este material
definido pelo conjunto de todas propriedades ticas que fazem o vidro ter um aspeto transparente e
reflexivo. Na Figura 1, vemos o resultado da aplicao dos materiais malha ou superfcie do
personagem. Uma vez que a natureza de um material plana, necessrio um mapa de texturas
que molde o material no plano 2D para a fisionomia tridimensional do objeto alvo. Este mapa de
texturas consiste num mapa de coordenadas que a partir de uma imagem 2D envolve o objeto
3D.

Figura 2- Malha poligonal


do avatar

Figura 1 - Modelo com


texturas

De modo a que um avatar se consiga mover, necessrio criar o seu esqueleto. O esqueleto
composto por um conjunto de ossos e articulaes. As articulaes so os vrtices ou pontos
suscetveis de rotaes e translaes nos vrios eixos. ligao dos vrtices entre si, chamam-se
segmentos rgidos ou ossos. O conjunto de articulaes forma uma estrutura hierarquizada (Figura
3), onde cada articulao conhece, caso se aplique, a sua articulao pai e filho. Por exemplo, tanto
para o lado esquerdo como direito, a articulao do cotovelo tem como pai a articulao do ombro,
e o pulso como articulao filho.

34

Figura 3 Esqueleto do avatar


O processo seguinte criao de um esqueleto chama-se skinning. Esta operao tem como
objetivo associar os ossos geometria da mesh, isto faz com que medida que o esqueleto se
mova, a pele do avatar acompanhe o movimento.

Animao e sntese de gestos


A animao de um avatar consiste na definio dos valores de rotao e translao (nos vrios
eixos), para cada articulao em cada instante de tempo, dando a perceo de movimento. Existem
pelo menos dois modos para animar um avatar.
O primeiro modo consiste na forma tradicional de animao manual por keyframe. O
movimento produzido com base na criao de vrias posturas ou poses distintas, distribudas ao
longo de instantes temporais. O software utilizado para gerar o movimento, automaticamente
produz a animao atravs de uma funo de interpolao. Esta, responsvel por preencher as
posies de cada articulao para todas as frames entre uma dada pose inicial e final.
O segundo mtodo consiste na utilizao da tcnica de captura de movimentos descrito mais
adiante, em 2.1.3 .
A sntese de gestos o processo de produzir uma animao que contempla todas as
componentes de movimento que caracterizam um gesto, designadamente, o movimento dos
membros superiores, das mos, dedos, e a expresso facial. Tecnicamente existem duas formas de
sintetizar um gesto.
A primeira baseada na correspondncia direta entre os significados de palavras existentes
numa lngua oral e os gestos de uma lngua gestual. Neste caso, armazenado o significado da
palavra de uma dada lngua oral, fazendo-lhe equivaler um identificador de gesto. Esse
identificador corresponde a uma animao. Dessa forma, quando escrevemos uma palavra na
35

lngua oral que esteja armazenada, o avatar gestua o equivalente na lngua gestual. Este mtodo
utilizado nos projetos Simon-the-Signer, TESSA e Visia apresentados no trabalho relacionado.
A segunda baseia-se numa anlise lingustica do gesto. Nestes casos, realizada uma anlise
paramtrica dos elementos constituintes de cada gesto. Esses elementos so depois armazenados,
numa entrada correspondente ao gesto, o que pode incluir o equivalente numa lngua oral,
designadamente uma palavra. No geral, os parmetros analisados so a configurao, local da
articulao e da orientao das mos, movimento corporal e expresso facial. Deste modo, pode-se
gerar os movimentos do avatar diretamente a partir da descrio lingustica, ou seja, o sistema
compe o gesto a partir da soma das instrues do valor de cada parmetro (Martins, Ferreira e
Mineiro 2012). Este foi o mtodo utilizado pelo projeto eSign, descrito mais frente no estado da
arte.

Animao facial
O processo de animao facial usualmente realizado por Blendshapes ou Facial Bone Rig. O
ltimo recorre criao dos ossos da face que mais tarde so animados atravs da definio dos
valores de translao e rotao em cada osso. A grande vantagem deste mtodo que a mesma
animao pode ser utilizada para personagens distintas, desde que a fisiologia facial seja similar.
A tcnica de animao por blendshapes utiliza uma srie de morph targets pr-estabelecidos.
Cada morpth target armazena uma verso deformada da mesh com a expresso facial definida.
Durante a animao, a pose da cara na posio neutra interpolada com a posio dos vrtices
definidos por cada morph target. Geralmente, os valores de cada morph target vo de 0 a 1. Este
mtodo apresenta um nvel mais elevado de fidelidade nas expresses faciais do que o mtodo
anterior. No entanto, envolve muito mais trabalho manual na criao dos morph targets, e que por
sua vez, so especficos a cada personagem.

2.1.3 Captura de movimentos


A captura de movimento ou motion capture, consiste no processo de aquisio do movimento
e traduo do mesmo para um modelo digital bi ou tridimensional (Dinis 2012). O objeto de
captura pode ser direcionado a humanos, animais ou qualquer objeto a que se possa adicionar
sensores. Os dados adquiridos podem ser focados para o estudo e anlise do movimento, bem
como para a criao de animaes digitais.
Esta tcnica aplicada a uma grande diversidade de reas, nomeadamente, a aplicaes
mdicas, militares e de entretenimento. No desporto, o uso de motion capture tem interesse para
analisar o movimento de atletas com o objetivo de aumentar o seu rendimento desportivo e
prevenir eventuais leses. Na ergonomia, a tecnologia utilizada com vista ao desenvolvimento de
produtos mais adequados e confortveis ao pblico-alvo. tambm aplicado ao entretenimento
como por exemplo: no cinema, no filme Avatar de James Cameron, onde se investigou um novo
36

mtodo mais realista para capturar as expresses faciais; em jogos de computador como Grand
Theft Auto IV, Guitar Hero; nomeando apenas alguns exemplos.
A tecnologia (Figura 4) permite capturar a posio dos membros do corpo do indivduo, at
informaes mais complexas como movimento das mos, dedos ou movimentos faciais. No geral,
capturam-se separadamente os movimentos corporais dos movimentos faciais, devido s
circunstncias e subtilezas dos ltimos (Dinis 2012). O termo hand-over refere-se ao processo de
adio da animao de dedos e mos, a uma captura j realizada para o corpo atravs de, por
exemplo, uma luva de captura de movimentos (Measurand Inc. 2011).
O motion capture um processo complexo e composto por vrios passos sequenciais. Os
seguintes passos so usados numa captura com um sistema tico (Naugle 1999):
1. Preparao do estdio;
2. Calibrao dos sensores e volume da captura;
3. Captura ou gravao do movimento;
4. Tratamento de dados;
5. Ps-produo dos dados, ou seja, aplicao dos dados a objetos bi ou tridimensionais.
As vantagens principais desta tcnica so a rapidez no processo de animao e o resultado
realista que traz s animaes em detrimento da animao manual por keyframe. A sua maior
desvantagem ser dispendioso em termos de equipamento, software e pessoal especializado.

Figura 4 Ator com fato de velcro elstico e marcadores (sistema tico) (Dinis 2012)

2.1.4 Sensores de profundidade


Os sensores de profundidade estabelecem a relao entre um ponto da imagem, e a distncia a
que este se situa do sensor. Por outras palavras, o sensor de profundidade d-nos a coordenada Z
do espao tridimensional, em complemento, s coordenadas X e Y j obtidas pelas cmeras
tradicionais de cor RGB. Esta tecnologia apresentou o processamento de dados de profundidade de
uma forma muito inovadora do qual drasticamente cortou o preo de sistemas que at altura
37

faziam o reconhecimento de profundidade, nomeadamente, por cmeras Time of Flight ou cmeras


estereoscpicas. Com isto, estas cmeras vieram abrir portas investigao de algoritmos
modernos para realizar a captura de movimentos, tanto a nvel corporal, como das mos (hand
tracking), dos dedos (finger tracking), assim como tambm a nvel facial.

Microsoft Kinect

Microsoft Kinect uma cmera lanada em 2010 originalmente apenas como acessrio da

consola de jogos Microsoft Xbox . A cmera (Figura 5) capaz de fazer o reconhecimento: das
articulaes do utilizador, reconhecimento facial; e reconhecimento de voz. Mais tarde em 2012
foi lanado uma verso especfica para PC. O Kinect est equipado com uma cmera de cor RGB,
um sensor de infravermelhos, um emissor de luz infravermelha, e quatro microfones.

Figura 5 - Microsoft Kinect

O sistema capaz de reconhecer 20 articulaes (Figura 6) do corpo humano e alm disso,


tem suporte para a captura das expresses faciais. Todavia, no suporta a deteo direta da posio
dos dedos, essencial definio da configurao da mo num gesto. Este problema tem de ser
abordado a nvel de software, atravs de um algoritmo que faa finger tracking. Para consultar as
especificaes tcnicas e a descrio do algoritmo inovador usado por este sistema consultar o
Anexo 2.

38

Figura 6 As 20 articulaes detetadas pelo Kinect


Aplicaes testadas
3Gear: A aplicao 3Gear (Wang, Twigg e Kin 2012) um SDK (System Development Kit)
que suporta a implementao de algoritmos de hand e finger tracking. O software foi desenhado
para fazer o tracking tendo uma vista superior das mos do utilizador, estando direcionado para a
secretria deste e no para a sua frente. Uma vez que os gestos em Lngua Gestual so feitos de
frente para o recetor, este algoritmo no se adapta aos gestos de LGP. A outra limitao que este
software pretende detetar apenas a ponta dos dedos, excluindo o resto das suas articulaes
necessrias definio do gesto. Pela avaliao desta aplicao, conclui-se que o sistema no era
suficiente para suportar o tracking dos dedos inerentes aos movimentos gestuais. Na Figura 7, do
lado esq. est representado o modelo virtual da mo, e no lado direito, esto pintas com cores
distintas cada mo detetada pelo algoritmo.

Figura 7 3Gear, teste simples ao finger tracking


FORTH: O sistema seguinte (Oikonomidis, Kyriazis e Argyros 2011) uma API que permite
detetar 26 nveis de liberdade na articulao da mo. O sistema requer uma placa grfica NVIDIA
para funcionar, e apesar dos requisitos da mquina onde se testou o sistema, serem superiores aos
39

requisitos mnimos apontados, no foi possvel testar a aplicao dada a taxa de imagens por
segundo ser inferior a 1. Pelas observaes feitas nos vdeos de demonstrao, o FORTH faz o
tracking para a mo e dedos muito bem, sem perder o tracking, mesmo com dedos oclusos (Figura
8). No entanto, verificou-se que o utilizador faz sempre gestos muito lentos, sugerindo que o
tracking se perderia se aumentasse a velocidade do movimento. Dadas as observaes e as
limitaes tcnicas encontradas, este sistema tambm no pode ajudar a desenvolver a soluo
para uma captura de movimentos ao nvel dos dedos

Figura 8 FORTH Kinect 3D Hand Tracking, exemplo de tracking

Leap Motion
O Leap Motion focado para a captura do movimento das mos e dedos do utilizador.
uma pequena unidade desenhada para ser posicionada em baixo e frente do monitor. Tem um
alcance de 22 cm2. Em seguida, mostra-se na

Tabela 1 uma comparao entre as caractersticas deste sensor e do sensor Microsoft Kinect .

Microsoft Kinect

Vantagens

Deteo do esqueleto e face

Deteo de dedos

Acesso aos dados de


profundidade

Muito pequeno e mais


barato

Alcance curto

No tem deteo
esqueleto nem face

Sem acesso aos dados de


profundidade

Desvantagens

Leap Motion

Preciso baixa nos dados de


profundidade ao nvel dos
dedos

do

Tabela 1 - Comparao entre sensor Microsoft Kinect e Leap Motion


40

Durante os testes com as aplicaes j includas no SDK, conclui-se que apesar de ter uma boa
deteo de dedos no resolve a problemtica das ocluses entre eles, perdendo a localizao do
dedo quando existe uma ocluso ou quando se faz o movimento de aduo dos dedos. Torna-se
um sistema invivel na sua aplicao lngua gestual pois todos os gestos tm configuraes de
dedos que provocam a ocluso de outros, ou que fazem o movimento de aduo. Outra limitao
do sistema, semelhante encontrada no sistema 3Gear, que ambos se focam na deteo das
pontas dos dedos, e no tm em conta as restantes articulaes dos dedos.
Portanto, a minha escolha tecnolgica recaiu sobre o sensor Microsoft Kinect, porque alm
de ter tracking do esqueleto e suporte ao tracking das expresses faciais, permite o acesso aos
dados de profundidade, tornando possvel desenvolver algoritmos de tracking com base nesses
dados.

2.2

Trabalhos Relacionados
2.2.1 CopyCat
CopyCat (Lee, Henderson e Brashear 2005) um jogo interativo em que o utilizador controla
uma personagem atravs da realizao de gestos de Lngua Gestual Americana (ASL). O jogo
(Figura 9) desenhado para crianas surdas onde se pretende que estas melhorem as suas
capacidades lingusticas atravs da prtica de ASL. Primeiro, o utilizador assiste a um vdeo de
um intrprete humano a executar gestos em ASL, e por sua vez, o utilizador tem de imitar os
gestos que visualizou.

Figura 9 - Interface de jogo CopyCat (Lee, Henderson e Brashear 2005)


A interface do jogo composta por: (A) vdeo tutor; (B) vdeo ao vivo do utilizador; (C)
boto para ligar/desligar reconhecimento do gesto; (D) ambiente de jogo; (E) escolha de nvel.
O jogo tem duas verses: uma verso inicial que usa uma cmera de vdeo e duas luvas
coloridas com acelermetros (Lee, Henderson e Brashear 2005); e outra verso que usa apenas o
sensor Microsoft Kinect (Zafrulla, et al. 2011), lanada seis anos depois. As principais
caractersticas na utilizao do sensor Kinect em detrimento das luvas so: aumento da usabilidade
41

(i.e. conforto, melhor interao); custo mais acessvel; e um decrscimo na preciso do


reconhecimento de gestos.
Na verso Kinect do sistema, os elementos que se recolhem para identificar o gesto,
consistem nas caractersticas da pose corporal e da silhueta da mo. A extrao das caractersticas
da pose corporal, usa as posies tridimensionais das articulaes do tronco superior, fornecidas
pelo Kinect. Quanto silhueta da mo, a abordagem utilizada no contempla o finger tracking. Ao
invs, usada a posio tridimensional de cada ponto que se encontre na vizinhana da articulao
da mo, detetada pelo Kinect.

2.2.2 Ensino da Lngua Gestual Assistido por Personagens 3D Virtuais


Este trabalho (Deusdado 2002) tem por objetivo apoiar a comunidade surda com ferramentas
tecnolgicas com vista disseminao da LGP. O autor criou uma aplicao grfica
tridimensional online em que utiliza um humano virtual, cujo papel servir de tutor gestual. A
aplicao foi desenvolvida usando o Pulse3D. Esta tecnologia permite a visualizao de contedo
3D na Web custa da instalao de um plugin para o browser, sendo capaz de criar ambientes
virtuais interativos a trs dimenses.
A aplicao pretende ensinar a LGP de vrias formas, e por isso, composta por vrias
ferramentas, tendo cada uma um objetivo prprio. As ferramentas criadas foram: Construtor 3D;
Abecedrio 3D; Animaes Vdeo; e Gesturio 2D.
O Construtor 3D (Figura 10) permite a construo interativa de gestos de LGP. O utilizador
visualiza trs modelos grficos: um humano virtual completo, uma mo esquerda e uma mo
direita. Cada modelo dispe de manipuladores tridimensionais para rotaes e translaes de
forma a compor o gesto. Cada gesto criado pode-se associar a uma palavra, letra ou nmero. Esta
ferramenta pretende ajudar na memorizao de gestos, implcito no processo de construo virtual,
e pretende uniformizar o vocabulrio gestual, uma vez que cada gesto construdo ser
eventualmente associado univocamente a uma palavra.
O autor no teve uma grande preocupao com o realismo do modelo virtual, logo, o trabalho
focou-se em obter modelos grficos simples e leves.

Figura 10 - Interface do Construtor 3D (Deusdado 2002)


42

O Abecedrio 3D (Figura 11) uma ferramenta que permite a visualizao interativa de


animaes a trs dimenses para todas as letras do abecedrio. Com esta ferramenta o utilizador
observa o modelo do brao e mo de um humano virtual, com a possibilidade de ver a animao
de cada letra sobre quatro pontos de vista diferentes: frente, cima, do ponto de vista do humano
virtual e uma vista rotativa sobre o brao. Pretende facilitar a memorizao de gestos para as letras
do abecedrio da LGP.
A terceira ferramenta chama-se Animaes Vdeo (Figura 13), e tem como foco a visualizao
de animaes 3D dos verbos da LGP. Ao contrrio do Abecedrio 3D, estas animaes no so
interativas, de forma que no se pode ver a animao de vrios pontos de vista. No entanto, podese ver um humano virtual completo em vez de apenas o brao e a mo.
O Gesturio 2D (Figura 13) consiste numa biblioteca de imagens de gestos, nomeadamente
dos gestos relativos numerao. As imagens so acompanhadas de descries verbais com o
maior detalhe possvel na informao descritiva do gesto, ou seja, descreve a orientao,
localizao e os movimentos necessrios para definir o gesto.

Figura 11 -- Abecedrio 3D
exibindo letra F (Deusdado 2002)

Figura 13- Animaes Vdeo exibindo


verbo Amar (Deusdado 2002)

Figura 12 - Gesto do nmero 0


no Gesturio 2D (Deusdado 2002)

Os resultados da avaliao ao sistema, identificaram que os surdos so muito exigentes em


termos de usabilidade. O autor sacrificou o detalhe dos modelos grficos por modelos leves de
modo a obter um desempenho mais fludo. Pode-se apontar que esta deciso teve impacto nos
resultados, tal como o prprio autor conclui, necessrio aplicaes grficas realistas de modo a
serem aceites pelos utilizadores. Tambm foi verificado por Deusdado que os utilizadores
preferem ver vdeos de pessoas em vez personagens.
Deste estudo posso conjeturar que uma aplicao destinada a surdos que use personagens
virtuais, tem necessariamente de ter uma elevada qualidade grfica nas animaes, para essa
aplicao estar altura de uma que utilize vdeos com humanos, em vez de avatares.
Foi tambm interessante verificar que neste trabalho a prpria comunidade surda identificou a
necessidade de disseminao de dicionrios de gestos que combatam o aparecimento de vrios
gestos para a mesma palavra.

43

2.2.3 Simon-the-Signer
Este trabalho e os das seces 2.2.4 e 2.2.5 foram subsidiados pela Unio Europeia como
continuao do projeto ViSiCAST (Ralph, et al. 2000). Todos eles tiveram como objetivo
melhorar o acesso informao e servios por parte dos cidados surdos recorrendo a um
intrprete virtual. Foram utilizadas tcnicas de captura de movimentos para reproduzir os gestos
no avatar, sendo recolhidos por trs canais diferentes (Figura 14):

Luvas com 18 sensores resistivos para capturarem as posies dos dedos das mos;

Fato magntico para capturar as posies tridimensionais da mo, corpo e cabea;

Para as expresses faciais foi usada uma cmera com filtro de infravermelhos e 18
refletores posicionados na face do intrprete.

Figura 14 Equipamento para a captura de movimentos a partir de um intrprete profissional de


Lngua Gestual. Utilizado nos trabalhos Simon-the-Signer, seco 2.2.4, e 2.2.5, da esq. para a direita
(Farzad, et al. 1999, Stephen Cox, et al. 2002, Verlinden, Tijsseling e Frowein 2002)

O Simon-the-Signer (Farzad, et al. 1999), tambm conhecido por SignAnim, um avatar que
traduz em tempo real, contedos noticiosos em Sign Support English, a partir de texto em Ingls
(Figura 15).

Figura 15 - Intrprete virtual Simon (Farzad, et al. 1999)


44

A partir de uma base de dados de gestos, suportada pela tcnica de captura de movimentos, o
sistema estabelece a associao entre palavra e animao do gesto, conseguindo traduzir
diretamente texto em lngua gestual. Este processo de sntese do gesto similar quele que se
pretende implementar.
A lngua gestual escolhida no SignAnim foi o Sign Support English (SSE). Ao contrrio das
lnguas gestuais naturais, o SEE mantm a ordem das palavras da lngua oral, facilitando o
processo de traduo. No entanto, essa deciso teve implicaes negativas na aceitao do sistema
por parte do pblico-alvo, uma vez que a SSE no adotada pela maioria da comunidade surda do
Reino Unido. Por essa razo, os trabalhos desenvolvidos posteriormente (seces 2.2.4, 2.2.5 e
2.2.6), no utilizaram essa Lngua Gestual.
interessante notar que Farzad, et al. durante os testes, verifica que na tica dos surdos a
concatenao de vrios vdeo-clips de gestos, no uma soluo prtica, passando a cit-lo:
Um grupo de teste da comunidade local de surdos, comentou que os saltos entre clipes de
vdeo so intrusivos: consequentemente eles consideraram a leitura aborrecida e difcil.

2.2.4 TESSA
Este trabalho (Stephen Cox, et al. 2002) tem como objetivo facilitar a comunicao entre
surdos e funcionrios, num posto de correio. Este sistema reconhece o discurso oral do
funcionrio, fazendo a sua traduo para gestos em Lngua Gestual Britnica utilizando um avatar.
O processo de sntese de gestos similar ao do sistema anterior descrito (Simon-the-Signer). O
sistema TESSA foi inicialmente desenvolvida pela UEA (University of East Anglia) em parceria
com a empresa TeleVirtual Ltd. e com a colaborao do servio de Correios britnico.
Uma das vantagens do uso de avatares em relao ao vdeo a fcil manipulao do avatar e
do ambiente 3D onde est inserido. O TESSA tira proveito dessas caractersticas, permitindo
definir o melhor ngulo ou o nvel de zoom, na apresentao do avatar, assim como tambm,
alterar a sua identidade.
Durante a avaliao do sistema, o reconhecimento dos gestos foi razovel para um conjunto
de frases, e bom, para um conjunto de palavras, contudo, o nvel de satisfao foi medocre. Com
base nestes resultados, refora-se a ideia de que alm da elevada qualidade grfica do avatar,
necessria uma animao facial e corporal credvel, para que o sistema atinja nveis de satisfao
elevados na tica dos surdos.

2.2.5 Visia
O projeto Visia (Verlinden, Tijsseling e Frowein 2002) uma aplicao Web que utiliza um
intrprete virtual, para anunciar em Lngua Gestual a previso do estado do tempo. semelhante
ao projeto Simon-the-Signer, mas em vez de traduzir contedos noticiosos, traduz informao
45

meteorolgica. Alm disso, traduz o texto de vrias lnguas, designadamente, Ingls, Alemo ou
Holands, para a respetiva lngua gestual natural (BSL, DGS e NGT). necessria a instalao de
um plugin, apenas disponvel para o browser Internet Explorer, onde esto includos os ficheiros
de movimento que representam os gestos, obtidos por captura de movimentos.
O Visia teve uma viso mais elevada no que toca sntese do gesto utilizada em Simon-theSigner e TESSA. Ao passo que os sistemas anteriores estabelecem a relao direta entre a palavra
e a animao do gesto, Visia estabelece a relao entre a informao descritiva do gesto e a
animao deste. Os autores criaram o SiGML (Signing Gesture Markup Language), um sistema
que codifica os elementos que descrevem o gesto, designadamente a configurao da mo, da
expresso facial, e configurao do movimento. O seu objetivo codificar a informao descritiva
do gesto, e no o seu significado, tornando-se um sistema independente da regio da lngua
gestual.
O interface da aplicao Visia (Figura 16) pretende ser simples, no entanto, no contempla
uma forma de manipular a velocidade da animao. Este um fator importante para utilizadores
que no se adaptem ao intrprete virtual e que tenham dificuldades em seguir a velocidade dos
gestos.

Figura 16- Avatar Visia e interface da aplicao (Verlinden, Tijsseling e Frowein 2002)

2.2.6 eSign
A aplicao eSign (Zwitserlood, et al. 2005) tem como objetivo traduzir o contedo das
pginas Web para lngua gestual. O sistema composto por duas componentes. A primeira
consiste num avatar capaz de ser integrado em qualquer pgina Web, e que existe para traduzir
qualquer contedo que o autor da pgina queira traduzir. A segunda componente consiste numa
aplicao Desktop, que serve para criar o vocabulrio em lngua gestual que o avatar ter acesso.
Esta aplicao a continuao do projeto ViSiCAST, e usa muito da experincia adquirida nesse
projeto.
46

A principal diferena para os projetos anteriores (2.2.3, 2.2.4, 2.2.5), que o eSign no recorre
ao processo de captura de movimentos para suportar a animao. O processo de animao
consistiu em produzir em tempo real o movimento de um gesto esttico para outro. Por um lado,
este processo envolve algoritmos de Inverse Kinematics para definir os valores das rotaes das
articulaes do modelo para cada postura. Por outro lado, envolve algoritmos de interpolao entre
posturas, para definir a transio de uma pose para outra, de uma forma credvel de acordo com a
biomecnica do movimento humano (Kennaway 2002).
Analogamente ao Visia, o eSign utilizou SiGML para relacionar os gestos com a animao,
que por sua vez, guiam o avatar com os movimentos necessrios composio do gesto. De igual
modo ao sistema Visia, necessrio instalar um plugin para o browser de forma a visualizar o
avatar a traduzir a informao do Website. O interface da aplicao (Figura 17) permite ao
utilizador controlar certos aspetos do avatar como a posio da cmara virtual e parmetros visuais
como luz, entre outros.
A principal vantagem que eSign apresentou por no recorrer tcnica de captura de
movimentos foi um custo menos elevado no processo de animao. Todavia, a grande
desvantagem foi a elevada complexidade em desenvolver animaes realistas. O grande avano
que este projeto deu ao estado-da-arte, foi a descoberta de um mtodo que permite criar gestos de
Lngua Gestual sem a necessidade de produzir o gesto numa ferramenta de animao. O avatar
aparenta estar melhor graficamente que os usados nos trabalhos anteriores, mas infelizmente no
foram encontrados resultados da avaliao feita ao sistema. Seria interessante comparar os
resultados de Visia que utiliza a captura de movimentos, com esta soluo que no usa essa
abordagem.

Figura 17 eSign (Zwitserlood, et al. 2005)

47

2.2.7 Curso de Lngua Gestual em DVD


uma aplicao multimdia interativa (ValorVisual 2009) destinada ao ensino da Lngua
Gestual Portuguesa. Os contedos programticos do curso so apresentados em forma de vdeo e o
curso composto por 3 mdulos, com nveis progressivos de dificuldade (Figura 18). No primeiro
nvel tem contedos como o alfabeto, numerao, cores, animais, etc. No segundo nvel
apresentam-se adjetivos, antnimos, verbos e pequenas frases. No terceiro e ltimo nvel,
simulam-se conversas do quotidiano como dilogos em cafs, restaurantes, metro, bares, etc.

Figura 18 - Curso de Lngua Gestual: contedos do primeiro ao terceiro nvel (esq. para a direita)
O DVD da aplicao pode ser utilizado tanto na televiso, como no computador, contudo, no
computador possvel alm de visualizar as aulas, no final de cada lio, realizar exerccios para
passar lio seguinte. No fim de todos os exerccios, o utilizador tem acesso a um exame final.
Ao longo do percurso didtico possvel consultar a classificao, e aps o exame final, imprimir
o certificado. A Figura 19 mostra um exemplo de exerccio e a tabela de classificao.

Figura 19 - Curso em Lngua Gestual: exerccios (esq.), tabela de classificao (direita)

2.3

Dicionrios Gestuais
2.3.1 Spread the Sign
O Spread the Sign um dicionrio internacional online, cuja nica funcionalidade
apresentar vdeos de palavras de Lngua Gestual para 20 pases distintos. Tem lnguas gestuais
como: sueca, inglesa, americana, alem, francesa, espanhola, portuguesa, entre outras. O
dicionrio contm at ao momento 7194 vdeos para LGP. Esta plataforma um projeto
internacional da Unio Europeia, no mbito do programa Leonardo da Vinci (Programa Leonardo
48

da Vinci 2008). O dicionrio est disponvel tambm como aplicao para iPhone e Android com
a mesma funcionalidade que o Website. Na Figura 20 apresentam-se os interfaces para Website e
Android:

Figura 20 Interfaces Web (esq.) e de Android (direita) do Spread the Sign

2.3.2 Signing Savvy


Signing Savvy (Signing Savvy LLC 2009) um dicionrio online para Lngua Gestual
Americana (ASL). Este dicionrio alm da consulta de gestos por categorias (animais, cores,
nmeros, etc.), tambm tem funcionalidades como: listas de palavras; construtor de frases, quizzes
e flash cards. Estas funcionalidades tal como a verso para iPhone e Android da aplicao so
funcionalidades pagas.

Figura 22 Signing Savvy:


consultar gesto

Figura 21 Signing Savvy:


construtor de frases

A Figura 22 representa o interface que permite fazer a consulta de um gesto. Inclui a descrio
da articulao, frases de exemplo em contexto, gestos alternativos e dicas de memorizao. A
Figura 21 mostra o construtor de frases aps a introduo de uma frase pelo utilizador. A frase
introduzida decomposta em vrias palavras que podem ser alteradas ou ordenadas. O vdeo que

49

traduz a frase em ASL composto pela concatenao de gestos de cada palavra na ordem da
lngua oral e no da lngua gestual.
A funcionalidade listas de palavras serve para agrupar um determinado conjunto de conceitos
numa lista. A partir desta, possvel fazer algumas coisas interessantes como consultar
sequencialmente o seu vocabulrio com vista memorizao, criar flash cards, ou quizzes. Um
quiz corresponde a um conjunto de perguntas aleatrias, alternando entre dois tipos de questes. O
utilizador convidado a adivinhar dado um vdeo de um gesto, qual a sua palavra
correspondente, ou o processo inverso, dada uma palavra o utilizador tem de adivinhar qual o
gesto correto. Um flash card essencialmente conjunto de gestos que o utilizador visualiza um
gesto, apreende-o, e depois visualiza a palavra respetiva. Em seguida, passa ao prximo gesto e
repete o processo. uma ferramenta que serve de memorizao e permite preparar o utilizador
para os quizzes.

2.3.3 Dicionrios Gestuais da VCom3D


A VCom3D lanou uma famlia de 7 dicionrios (VCom3D s.d.). Os temas esto distribudos
entre Cincia, Matemtica, Terra, Cincia da Vida e Fsica. Estes so dicionrios ilustrados
direcionado para crianas surdas ou com deficincias auditivas, e que usem a Lngua Gestual
Americana ou Signed English. Cada dicionrio (Figura 23) permite consultar palavras especficas
ao universo do seu tema particular. Alm de cada palavra que consta no dicionrio, a maioria do
texto do Website passvel de ser traduzido pelo intrprete virtual, um avatar. Para se conseguir
visualizar o avatar preciso instalar um plugin disponvel apenas para o browser Internet
Explorer. Todos os dicionrios apresentam as palavras por ordem alfabtica e em particular dois,
permitem visualizar as palavras tambm por categoria (i.e. animais, flores, frutas, etc.). Incluem o
tipo de palavra (i.e. verbo, substantivo, adjetivo), plural, descrio do significado, palavras
relacionadas, e uma imagem representativa do conceito. O dicionrio permite escolher para
intrprete, um avatar de entre vrias etnias ou gneros, e permite rodar a sua posio para
visualizar o gesto em perspetivas diferentes. A velocidade da animao tambm pode ser definida
para mais lenta ou mais rpida como preferncia.

Figura 23 Signing Science Pictionary


50

2.3.4 Anlise comparativa entre Dicionrios Gestuais


A Tabela 2 sintetiza os pontos mais importantes de cada uma das aplicaes do tipo
dicionrio. So comparadas quatro caractersticas: composio de frases, componente para testar
os conhecimentos, uso de LGP, existncia de verso mobile, e uso de Avatar.
Plataforma

Composio

Componente para testar

de Frases

os conhecimentos

Spread the Sign


Signing Savvy
Dicionrios da
VCom3D

LGP

X
X

Verso
mobile

Avatar

X
X
X

Tabela 2 Propriedades principais nos Dicionrios Gestuais descritos


Constata-se que apenas o Spread the Sign tem traduo para LGP, contudo, de entre todos os
sistemas, o menos rico em funcionalidades. No outro extremo temos o Signing Savvy como o
mais completo, apresenta composio de frases, e componente para testar os conhecimentos,
nomeadamente atravs de Quizzes e Flash-Cards. de notar que a composio de frases feita
pela concatenao de vdeos, no sendo o mtodo mais adequado. tambm de realar que neste
sistema a ordem dos elementos da frase no corresponde ordem de elementos da lngua gestual.
Os dicionrios da VCom3D so os nicos que usam como intrprete um Avatar, porm, este
apenas se focam na componente de consulta e traduo de palavras. Alm disso, tiram partido das
vantagens de uso de avatares como: a possibilidade de escolha de um intrprete de uma lista de
avatares e a manipulao da posio da cmera para mostrar o gesto em ngulos diferentes.

2.4

Sumrio
Neste captulo, deu-se uma viso geral sobre os conceitos essenciais ao entendimento dos
temas abordados. Destacaram-se os projetos relacionados com os temas desta tese,
designadamente, a Lngua Gestual e Avatares. Por fim, identificaram-se alguns Dicionrios
Gestuais, analisando-se as suas caractersticas mais relevantes.

Composio de frases atravs da concatenao de vdeo no a mais indicada para surdos em (Farzad, et al.

1999).

51

Captulo 3
Investigao e Testes Prvios
No geral, este trabalho enquadra tecnologias relativamente recentes, como o sensor Microsoft
Kinect, por sua vez, so abordados desafios ainda no trvias, especialmente neste captulo, como
o finger tracking. Estes motivos conduziram a uma abordagem de trabalho exploratria, levando
ao desenvolvimento de algoritmos, aplicaes, e redefinio de metas ao longo do decorrer da
tese.
Este captulo, inicia-se pela apresentao dos motivos da escolha do MotionBuilder como
software de animao. Em seguida, apresenta e compara dois tipos de animao: a animao pelo
mtodo manual, que resultou num avatar que soletra palavras em LGP; e na animao assistida
pela captura de movimentos, focada para a interpretao de palavras de LGP.
O captulo concludo, com a investigao de um mtodo de finger tracking que
complemente a captura de movimentos do corpo obtida pelo Kinect, com a posio tridimensional
dos dedos ao longo do movimento. Esta abordagem resultou na investigao de um mtodo de
finger tracking semiautomtico, que envolve a ajuda do utilizador para detetar as articulaes dos
dedos.

3.1

Escolha do software de animao 3D


Existem vrias ferramentas de software para animao 3D como: Maya (Autodesk 2011),
Blender (Blender Foundation 2011), Animation:Master (Hash, Inc 2011), Poser (Smith Micro
Software, Inc 2011), MotionBuilder (Autodesk 2011), entre outras.
O MotionBuilder foi escolhido por ser um software muito eficiente no suporte animao por
captura de movimentos, com o qual j estava familiarizado. Outra vantagem relevante para a sua
escolha, foi o facto de este disponibilizar um SDK para desenvolver aplicaes que tiram partido
das suas funcionalidades, em linguagens como C++ e Python.

52

3.2

Adaptao e primeiros testes em animao 3D


Este teste foi importante porque trabalhei a importao de um avatar e sua integrao no
software, e por outro lado, modelei gestos estticos (i.e. gestos de letras) e respetiva animao e
comprovei a capacidade de interpolao do MotionBuilder.
O primeiro passo consistiu em procurar modelos gratuitos de humanos virtuais 6 a fim de
escolher um para a realizao de testes. O modelo que escolhi (Figura 24) j tinha definido a
estrutura de ossos e articulaes, o que facilitou a manipulao do modelo. O passo seguinte
consistiu em modelar dois gestos distintos e criar uma animao que fizesse a transio de um
gesto para outro. Interessava-me fazer o soletrar palavras, porque em LGP este processo usado
para descrever palavras que no tenham a representao do gesto em LGP de uma palavra em LP,
ou ento, quando se pretende soletrar nomes prprios ou siglas.
Uma vez que a cada articulao do esqueleto, no est convencionado um identificador nico,
no possvel ao MotionBuilder determinar automaticamente se a articulao x a articulao
da cabea ou dos ps. Deste modo o passo seguinte importao do modelo foi proceder sua
Characterization. Este processo consiste em mapear o nome de cada articulao do modelo com o
nome padro que o MotionBuilder identifica para essa articulao.
Seguidamente procedi produo da animao: usando o sistema de animao por keyframe,
criei duas keyframes, o modelo na primeira executava em LGP o gesto para a letra A, e
nalgumas frames a seguir executava o gesto para a letra O.

Figura 24 Gestos estticos para as letras A (esq.) e O (direita) em LGP no MotionBuilder


A transio obtida na animao entre o gesto de uma letra e o gesto de outra revelou-se fluda.
No seguimento deste resultado, decidi criar uma aplicao para traduzir qualquer letra em lngua
gestual portuguesa, importante como etapa preliminar para chegar criao de gestos de palavras,
e por conseguinte, construo de frases obtida pela combinao de palavras. O desafio principal
foi construir a animao dinamicamente com a transio de gestos para letras arbitrrias. Para isso,
aprendi os conceitos bsicos da linguagem de scripting Python, antes do desenvolvimento.

http://www.turbosquid.com acedido a 22 de Setembro de 2012

53

Soletrar palavras em LGP criao de plugin

3.3

Esta aplicao gera uma animao em tempo real de um avatar a traduzir para gestos de LGP
cada letra introduzida pelo utilizador e foi desenvolvida em Python como um plugin 7 do
MotionBuilder.
Em primeiro lugar criei os gestos de todas as letras de A a Z no MotionBuilder. Modelei cada
gesto definindo a configurao dos braos, mos e dedos. Cada gesto foi armazenado como uma
Pose 8 . Alm disso, criei uma pose neutra usada para a posio inicial do avatar durante a
animao. O avatar utilizado foi um dos modelos existentes no MotionBuilder designado por Mia.
Aps a criao da biblioteca de gestos ou poses, foi necessrio aceder a cada uma, atravs da
linguagem de scripting Python e construir dinamicamente uma animao. Para tal, defini uma
keyframe para cada letra, com um intervalo de 5 frames. Ao executar a animao, o software faz
automaticamente a passagem da pose de uma frame para a pose da frame seguinte. O valor de 5
frames para o intervalo entre as letras, foi obtido empiricamente como um timo valor para uma
animao fluda.
Foi desenvolvido um interface simples (Figura 25) que inclui uma caixa de texto para o
utilizador escrever uma palavra, e um boto para gerar a animao a partir do texto que o
utilizador pretende ver soletrado.

Figura 25 Plugin Soletrar palavras em LGP, situado na margem inferior do MotionBuilder

O conceito de plugin tambm conhecido no contexto do MotionBuilder como Tool. Consiste em vrias
instrues de cdigo escritas usualmente em Python para desempenhar uma ou vrias tarefas de forma automtica.
8

Pose no contexto do MotionBuilder determinada a postura do avatar, atravs da representao a posio e


orientao de todas as suas articulaes.

54

Conclu ao longo do desenvolvimento desta soluo que modelar um gesto para cada letra do
alfabeto uma tarefa muito demorada. Por conseguinte, modelar algo mais sofisticado como
palavras seria ainda mais trabalhoso, pelo que faz sentido recorrer a um sistema que torne o
processo de produo de gestos mais eficiente. O caminho seguinte foi usar um sensor de
movimentos para capturar o movimento apenas corporal, mas desta vez pretendo animar gestos de
palavras em vez de letras.

3.4

Animao de gestos assistida por Kinect


Antes de proceder captura, pesquisei qual o sensor de profundidade mais adequado ao
objetivo. Dessa pesquisa resultaram os sensores mais recentes e de baixo custo comos o Microsoft
Kinect e o Leap Motion. A comparao de ambos que levou escolha de um deles est definida
na seco dos Sensores de profundidade do Captulo 2.

Primeiro teste ao motion capture


Aps a escolha do sensor, foi necessrio fazer a ponte entre o Microsoft Kinect e o software
de animao. Fiz uma pesquisa pelo que j existia sobre a integrao dos dados do Kinect em
plataformas de animao, e encontrei algumas ferramentas que criavam esta ponte. Tais como: iPi
Recorder (iPi Soft 2011), iClone 5 (Reallusion 2011), Miku Miku dance (Higuchi 2008), Blender
Motion Capture Addon (NI MATE 2011), Easy Mocap (Easy Mocap 2011) e Brekel Kinect
(Brekelmans 2011). Optei pelo plugin para o MotionBuilder chamado Brekel Kinect, porque alm
de ter um bom desempenho na passagem do movimento humano para o avatar, j estava integrado
com o software de animao que estava a usar. O prximo passo foi proceder a um teste de
captura de movimentos. Depois de aberto o software Brekel Kinect (Figura 26), preciso garantir
que est distncia adequada para detetar o esqueleto completo do utilizador. Em seguida, liga-se
a receo dos dados no MotionBuilder (Figura 27), e procede-se gravao do movimento num
esqueleto predefinido pelo plugin. A informao transmitida consiste nas posies tridimensionais
de cada articulao detetada pelo sensor. Por fim, necessrio associar o movimento do esqueleto
ao avatar.

Figura 26 Brekel Kinect (captura)

Figura 27 MotionBuilder (captura)

55

O resultado foi a captura de movimentos do tronco humano, e transpostos para uma


personagem definida no MotionBuilder. Esta captura foi gravada no formato de ficheiro
proprietrio da aplicao (FBX), podendo ser reutilizvel para animar outra personagem. Na
Figura 28, v-se o esqueleto de cor amarela (Stick Figure), representando as articulaes do
utilizador detetadas pelo sensor, e do seu lado direito, a personagem Mia conduzida pelo
movimento do esqueleto.

Figura 28 - Captura de movimentos integrada num avatar em MotionBuilder

Animao de gestos de palavras de LGP


O passo seguinte aps a animao teste, consistiu em gravar gestos de palavras e fazer uma
comparao destes, com os mesmos gestos porm, realizados atravs de animao manual por
keyframe, confrontando o tempo de produo e a qualidade de animao de cada abordagem.
Foram escolhidas 3 expresses para a captura: a palavra Ol, o soletrar da expresso coloquial
LOL, e a expresso Ondas do mar.
Ao contrrio da animao criada manualmente por keyframes (3.2 ) a animao assistida pelo
Kinect necessita de um processo de produo mais complexo. Este processo foi identificado como
o seguinte pipeline:
1.
2.
3.
4.

Captura do movimento
Ligao do avatar aos dados do Kinect
Tratamento de dados
Adio da animao da mo e dedos animao corporal do avatar

56

O primeiro passo deste processo gravar o movimento do gesto atravs do plugin que envia a
informao do Kinect para o MotionBuilder.
A tarefa seguinte consiste em fazer a ligao dos dados capturados ao avatar que se quer
animar. Para isso faz-se a Characterization9 do Stick Figure (esqueleto controlado pelos dados do
Kinect) e posteriormente define-se esse personagem como Input Source no avatar.
Aps a ligao do avatar aos dados vindos do Kinect, procede-se ao Data Cleaning, isto , ao
processo de tratamento de dados. Este passo existe, porque os dados capturados 99% no podem
ser integrados diretamente no avatar. Por este motivo, o Data Cleaning tem dois objetivos. O
primeiro determinar a posio correta de cada articulao no conjunto de instantes da captura.
Isto necessrio quando o sensor no deteta com exatido a posio do osso durante o movimento
(Figura 29), ou no caso extremo da articulao no estar a ser temporariamente detetada. O

segundo objetivo corrigir aquelas posies que aparentam estar bem no esqueleto do Stick
Figure, mas ao passarem para o esqueleto do avatar no tm a mesma correspondncia. Isto
acontece porque a fisionomia do esqueleto do Stick Figure, apesar de prxima, no exatamente
igual fisionomia do esqueleto do avatar. Este tipo de falha inclui as posies quando o
movimento real faz o brao ou a mo passar muito junto ao corpo, e no avatar essa extremidade
trespassa o corpo do personagem (Figura 30).

Figura 29 Falha no tracking

Figura 30 Brao trespassa


corpo do avatar

O ltimo passo o chamado hand-over manual. Este passo consiste em fazer a animao
manual da mo por cima da animao capturada com o Kinect. Isto resulta em duas animaes
sobrepostas, ou seja, por um lado temos a animao do corpo capturada com o Kinect, e por outro,
uma animao da mo feita manualmente por keyframes. Este passo usa intensamente a animao
manual, pois necessrio definir a configurao e orientao da mo num intervalo temporal.
preciso ter um bom entendimento da descrio do gesto, perceber as pequenas nuances do
movimento, de modo a se atingir a definio da pose correta no instante correto. Especialmente
neste passo, fiz pequenos ajustes tendo em conta o gesto no todo, e no apenas na soma das suas
partes. Quer isto dizer, por exemplo, que por vezes necessrio aumentar a velocidade do

Processo descrito em Adaptao e primeiros testes em animao 3D.

57

movimento, por vezes diminuir, ou realar outros pormenores de modo a produzir um gesto
fidedigno. Sem alterar muito o original, se no corre-se o risco de ficar pouco fludo e robtico.

Comparao entre animao manual e animao capturada


A animao feita manualmente resultou numa animao menos fluda, em relao realizada
com a ajuda do Kinect. Esse facto visvel na Figura 31, onde se v do lado esquerdo o avatar com
uma postura descontrada enquanto no lado direito, est bastante mais rgida. O tempo de
produo de todos os gestos foi na mdia o mesmo, para as duas abordagens.

.
Figura 31 - Comparao entre animao assistida por Kinect (esq.) e animao manual (dir.)
O uso de animaes assistidas por Kinect tem a grande vantagem de obter resultados mais
realistas que recorrendo a animaes manuais. Por um lado, exige-se algum trabalho,
designadamente com o tratamento de dados de forma a corrigir falhas na captura; por outro lado,
compensatrio, dado o resultado realista da animao.
Apesar da animao obtida por edio manual, esse fator est dependente do nvel de
experincia do animador e da complexidade do gesto. Todavia, este tipo de animao pouco
natural difcil, dada a complexidade da biomecnica humana. O recurso ao Kinect tambm
vantajoso, porque diminui o tempo necessrio na criao de animaes caso o gesto no tenha
muitas falhas nas posies durante a captura. No caso do gesto para a expresso Ondas do Mar,
este tinha muitas falhas e fez com que na mdia o tempo de produo fosse igual para as duas
abordagens. Deste teste concluiu-se que possvel fazer uma captura de movimentos com o sensor
Kinect e animar um avatar com esse movimento. No entanto, o sensor tem tracking nativo do
movimento do corpo e da face, mas no dos dedos. No mbito da lngua gestual, a configurao da
mo uma componente essencial na descrio do gesto. O passo seguinte envolveu investigar
quais os dados necessrios transposio do movimento dos dedos, para um modelo da mo
tridimensional.

58

Definio de gesto por coordenadas criao de plugin

3.5

O prximo plugin desenvolvido para o MotionBuilder tem como objetivo testar a informao
necessria para determinar a configurao da mo num avatar, e foi desenhado tendo em conta trs
requisitos: carregar uma postura num avatar a partir de um ficheiro, salvar para ficheiro a pose do
avatar ativo, e produzir uma animao a partir da leitura de vrios ficheiros. Antes de iniciar o seu
desenvolvimento, fiz uma anlise estrutura de ficheiros com extenso BVH10. Verifiquei que a
informao essencial para definir uma postura representada para cada articulao pelas
coordenadas de translao e rotao em torno dos trs eixos principais (i.e. x, y e z).
Em seguida apresento os interfaces da aplicao a que chamei Poses Animator:

Figura 32 - Poses Animator: interface


para carregar no avatar gestos estticos

Figura 33 - Poses Animator: interface para


salvar em ficheiro gestos estticos

O interface da Figura 32 permite carregar ficheiros de gestos, para isso basta carregar no boto
Browse, escolher o ficheiro, e por fim carregar na opo Load File. O gesto contido no ficheiro ir
ser carregado para o avatar que est a ser utilizado como ativo no MotionBuilder. Tecnicamente,
esta operao l as coordenadas de translao e rotao, e define os seus valores para cada
articulao do avatar. possvel ver o contedo de cada ficheiro, carregando na opo Peek
Content como se pode ver na Figura 34Erro! A origem da referncia no foi encontrada..
O interface da Figura 33 permite armazenar gestos estticos (i.e. gestos de letras) em ficheiro,
salvando as coordenadas de todas as articulaes do avatar. possvel escolher as articulaes que
se pretender armazenar, selecionando-as primeiro no personagem, e em seguida clica-se na opo
Save. Da aparece a opo para escolher a pasta e o nome do ficheiro que se pretende salvar.

10

*.bvh um formato de dados prprio para captura de movimentos, pois armazena informao hierrquica dos ossos de um
esqueleto tal como informao do seu movimento. Um software de animao que trabalhe com este formato, consegue
mapear a informao do esqueleto e do seu movimento, e associ-los a um esqueleto de outro personagem.

59

Figura 34 - Poses Animator: interface para visualizar e editar o contedo do ficheiro de gestos

Figura 35 - Poses Animator: interface para gerar a animao


A interface da Figura 35 permite gerar animao com gestos arbitrrios que foram
armazenados em ficheiros. Esta interface tambm permite ao utilizador pr-visualizar o gesto
contido num determinado ficheiro. Ao se carregar em cima deste duas vezes, por exemplo em
1.pose (Figura 35), o gesto para representar o nmero 1 em LGP carregado no avatar ativo
do MotionBuilder. O sistema de transio de gestos estticos do Poses Animator, consiste em
distribuir vrias keyframes por diferentes instantes temporais, onde em cada um se representa um
gesto diferente. Este mtodo baseia-se no plugin Soletrar palavras j descrito na 3.3
Este desenvolvimento, testou que as coordenadas de translao e rotao so suficientes para
definir dinamicamente a configurao da mo num gesto de LGP. No fim, obtive uma soluo
com interesse particular para armazenar e representar gestos de letras num avatar, mas que pode
ser usado para lidar com qualquer postura esttica que se queira representar. O prximo passo foi
capturar as coordenadas da mo do utilizador, e por conseguinte, animar um avatar.

60

3.6

Hand tracking desenvolvimento de algoritmos


Para detetar as mos foram desenvolvidos dois algoritmos com diferentes abordagens,
utilizando o sensor Microsoft Kinect. Escolhi a linguagem C# para o desenvolvimento por ser
uma linguagem de alto nvel e com a qual me sinto confortvel.
A 1 abordagem baseou-se no princpio geral que as mos so as extremidades mais
prximas do sensor durante a execuo de um gesto. O mtodo Depth Segmentation consiste em
analisar todos os pontos dentro de um intervalo de profundidades, e descartar os restantes.
Considerando que as mos do utilizador vo estar mais prximas do sensor que as restantes partes
do corpo, admite-se que as mos vo se encontrar em dois limites de profundidade distintos, um
limite mximo e um mnimo. No entanto, Depth Segmentation por si s, no cobre os casos em
que o utilizador se afaste/aproxime do sensor, ou, quando o sensor posicionado a uma distncia
diferente do valor preestabelecido, saindo fora do intervalo. Para contornar estes problemas, decidi
calcular o intervalo de profundidade em cada frame, assim sendo, o intervalo adapta-se s
circunstncias descritas.
Para calcular a amplitude do intervalo de profundidade usei a seguinte frmula: defini para o
limite inferior, a distncia mnima a que o utilizador se encontra do sensor; e para o limite superior
usei o valor do limite inferior mais 150mm. O valor 150mm foi testado vrias vezes, e cheguei
concluso que era um valor suficientemente abrangente para definir a distncia entre o centro do
pulso at ponta do dedo. Para filtrar do intervalo todo os pixis que pertenam ao ambiente em
volta da mo, verifico se cada pixel corresponde ao conjunto de pontos que o Kinect deteta serem
do utilizador. Caso existe essa correspondncia, ento considero que o ponto do intervalo de
profundidade faz parte da mo. Na Figura 36, pintei de cor amarelo todos os pixis que pertenam
ao utilizador, enquanto a azul pintei os pixis respetivos s mos.

Figura 36 - Algoritmo de hand tracking por Depth Segmentation


A 2 abordagem mais simples que a primeira, pois o Kinect fornece as coordenadas para
qualquer articulao do corpo do utilizador. Sabendo essa coordenada, o algoritmo desenha uma
elipse volta da articulao de cada mo. Ambas as imagens da Figura 37 revelam os resultados
61

do mesmo algoritmo, contudo apresentam-nos de maneira diferente. A imagem da esquerda


mostra elipses volta das mos enquanto a imagem da direita define pontos brancos para o centro
de cada mo. Criaram-se duas vistas diferentes do algoritmo para se verificar com exatido o
centro da mo.

Figura 37 - Algoritmo de hand tracking usando as articulaes detetadas pelo Kinect


Na Figura 37, especificamente na imagem do lado esquerdo, descreve-se para efeitos de teste
uma elipse para a articulao da cabea, um esqueleto com os ossos e articulaes representativos
do utilizador (boneco verde), e as imagens da mo esquerda e direita isoladas do resto do corpo.
Estas ltimas podem servir como base para detetar os dedos, bastando excluir os pxeis que se
encontram numa profundidade diferente da profundidade da mo.
Aps o desenvolvimento destes dois algoritmos, criei uma aplicao teste que executa os dois
algoritmos simultaneamente (Figura 38) para efeitos comparativos.

Comparao das duas abordagens

Figura 38 - Comparao entre os algoritmos de hand tracking desenvolvidos


Na Figura 38, mostra-se os resultados das duas abordagens. Neste caso particular, nota-se que
no tiveram totalmente sucesso ambos os mtodos. Em relao mo direita, o algoritmo da 2
62

abordagem deteta a mo, enquanto o algoritmo por Depth Segmentation no (1 abordagem).


Relativamente mo esquerda nota-se que a 1 abordagem mais eficaz, embora a 2 abordagem
tambm detete a mo, no apresenta com preciso o centro da mo11. A bola vermelha na cabea
s para efeitos de teste no desenvolvimento e no tem nenhuma implicao no resultado da
deteo das mos. J o algoritmo por Depth Segmenation identifica uma mancha azul na cabea,
significando que est a indicar a cabea como mo. Este um dos problemas da abordagem
baseada em intervalos de profundidade, pois se algum ponto preencher as condies que o fazem
pertencer ao intervalo, ou seja, a mo chegou muito perto da cabea, o algoritmo identifica-o
como sendo um ponto da mo. Um possvel melhoramento para esta situao, seria ajustar o limite
superior e diminuir o valor de 150mm para um valor inferior, de modo a restringir um pouco mais
o intervalo de profundidade.
Durante todos os testes, o algoritmo da 2 abordagem, o algoritmo que usa as articulaes do
utilizador fornecidas pelo Kinect, foi mais preciso e eficaz que o anterior. razovel conjeturar
que pode ser melhorado, atravs da mistura de caractersticas do primeiro algoritmo, e assim gerar
um algoritmo mais robusto que o atual. Porm, o algoritmo rene condies suficientes para se
passar ao finger tracking, ou seja, deteo e localizao dos dedos.

3.7

Finger tracking - testes


O finger tracking no uma tarefa trivial e um dos maiores desafios encontrados nesta tese.
Existem avanos nesta rea utilizando o Kinect, nomeadamente por Stegmueller atravs do seu
contributo com a biblioteca Candescent NUI (Stegmueller 2012). Para ter uma ideia da
complexidade da deteo dos dedos, realizei alguns testes com esta biblioteca.
O teste a esta biblioteca teve como objetivo testar gestos simples, as letras do alfabeto de
LGP. Para isso, verifiquei quais as letras mais difceis de detetar, e as que no traziam problemas.
Alm disso, testei o algoritmo de tracking em duas perspetivas diferentes.
Os pontos vermelhos na imagem inferior da Figura 39 representam as pontas dos dedos
detetadas pelo algoritmo. Em ambas as perspetivas foi detetado a ponta do dedo do meio, porm,
no claro o contorno do resto dos dedos. O teste decorreu para todas as letras do abecedrio e os
resultados foram similares. O algoritmo em mdia detetou um, dois dedos por gesto. Todos os
gestos tm dedos que ficam ocultos, por vezes tapados por outros, noutras vezes porque no esto
de frente para o sensor.

11

As elipses so uma melhor forma de apresentar o resultado da 2 abordagem, por isso neste teste deixou-se a
vista dos pontos brancos de fora.

63

Figura 39 Gesto da letra A em LGP com duas perspetivas diferentes


O finger tracking aplicado lngua gestual muito mais complexo do que apenas detetar as
pontas dos dedos, derivado das ocluses dos dedos durante a execuo de um gesto e da falta de
preciso nos dados de profundidade relativos s extremidades da mo. luz destes resultados,
decidi investigar um pouco mais longe e desenvolver alguns testes com uma biblioteca de
processamento de imagem desenvolvida em C#.

AForge.NET
AForge.NET uma framework de processamento de imagem e inteligncia artificial. A
abordagem do teste anterior realizada por Stegmueller, utilizava os dados de profunidade do
Kinect. Uma vez que esses dados ao nvel dos dedos no so muito precisos, a minha abordagem
passou por tentar obter o contorno dos dedos atravs da imagem de cor RGB.
O primeiro passo consistiu em retirar os pixis que no correspondiam aos pontos da mo ou
brao. Ento apliquei um filtro de profundidade para tudo que estivesse a 70mm de distncia da
articulao da mo, ficaria a preto. O valor de 70mm foi um valor que restringiu mais o intervalo
de profundidade usado anteriormente (seco 3.6 ), mas empiricamente gerou melhores resultados
pois geralmente detetava a mo e o brao como pretendia.
Para detetar os contornos foi aplicado um algoritmo chamado Canny Edge Detector. Este
algoritmo pinta a branco os contornos dos objetos de uma imagem de entrada e tudo o que no
seja contorno, pinta a preto. Para destacar mais os contornos, adicionei um pouco de claridade
imagem de entrada do Canny, imagem que tem de estar em tom de cinza. Os resultados do
algoritmo podem ser vistos nas Figuras 40, 41 e 42 para vrios gestos de letras de LGP.

64

Figura 40 - Deteo de contornos para gesto da letra A (esq.) e gesto da letra F (direita)

Figura 41 - Deteo de contornos para gesto da letra B (esq.) e gesto da letra D (direita)

Figura 42- Deteo de contornos para configurao de mo em garra (usada na LGP, lado
esq.) e gesto para letra V (dir.)
O algoritmo eficaz a detetar a silhueta da mo, todavia, relativamente deteo do contorno
dos dedos no se apresenta to eficaz.
Letra A H distino do contorno para 4 dedos, exceto o dedo do polegar que est oculto.
de notar que o algoritmo Canny no teve nesta situao a melhor entrada de dados para o gesto,
pois o filtro de profundidade cortou alguns dos pixels na margem dos dedos mindinho e anelar.

65

Letra F Os dedos mindinho, anelar e do meio esto sobrepostos, da ser muito difcil ao
algoritmo distinguir os contornos para estes dedos. Alm disso, o contorno do resto dos dedos est
impreciso e pouco claro.
Letra B A distino dos contornos no muito clara ou precisa e volta a acontecer
ocluso dos dedos.
Letra D No h distino dos contornos em vrios dedos.
Configurao mo em garra Excelente distino de todos os dedos (configurao de mo
usada em LGP).
Letra V Sofre do mesmo problema que no gesto para a letra A, em relao ao corte de
pixels. A distino est boa apenas para dedo indicador e dedo do meio.
Nas configuraes dos gestos existem muitas ocluses, da o algoritmo desenvolvido por
Stegmueller tambm no foi eficaz na deteo dos dedos, pois as pontas dos dedos estavam quase
sempre escondidas. Embora seja possvel fazer melhoramentos relativamente definio de
contornos, possivelmente ajustando as configuraes de entrada do algoritmo Canny, a deteo
dos dedos nunca ir ser perfeita. Quando houver ocluso, o dedo no aparece na imagem, e
simplesmente no h contorno. Uma das solues possveis seria adivinhar, ou seja, obter um
algoritmo que tenha alguma flexibilidade e consiga prever a posio natural dos dedos quando se
encontram ocultos.
Fazer o tracking dos dedos com um algoritmo de forma automtica teria de ser algo bastante
bem feito para ser usado no mbito deste projeto. O mbito deste trabalho lida com gestos da LGP
que inclui configuraes de mos bastante complexas. Se for desenvolvido um algoritmo simples
para tratar esta situao este ter falhas, porque no resolver as ocluses e consecutivamente no
ser til. Por conseguinte, o passo seguinte foi realizar uma abordagem completamente diferente,
usando um sistema de finger tracking semiautomtico, ou seja, o processo de deteo envolve o
utilizador para marcar as posies das articulaes dos dedos. A seguir descrevo esta abordagem e
os problemas encontrados.

3.8

Finger tracking semiautomtico aplicao Pose Estimation


O Pose Estimation tem como objetivo capturar a pose 3D do tronco e mos. Para as
articulaes relativas ao tronco a captura feita de modo automtico, recorrendo ao Kinect. Para
as articulaes relativas s mos e dedos, a captura feita de forma assistida pelo utilizador,
marcando a posio da mo e todas as articulaes de cada dedo numa foto. Aps este processo, as
coordenadas do gesto so exportadas para ficheiro de modo a serem integradas num avatar no
MotionBuilder.
Este software foi desenvolvido como uma aplicao WPF (Windows Presentation
Foundation) em C#. O que me levou a ter optado por este tipo de aplicao, foi porque alm desta
66

ser a evoluo da classe de aplicaes Windows Forms, est dotada de mais controlos de utilizador
e mais fceis de usar que o seu tipo de aplicao predecessor. Em seguida apresento os interfaces
da aplicao:

Figura 43 - Pose Estimation: ecr inicial (esq.) e ecr depois de tirada a foto (direita)
A imagem da esquerda da Figura 43 representa o ecr inicial da aplicao onde se v o
utilizador a exibir um gesto para a cmera. Neste interface, o utilizador tira a foto fazendo o gesto
aps o software detetar o esqueleto do utilizador. Aps tirar a foto no interface inicial, o utilizador
passa ao interface seguinte representado na imagem da direita da Figura 43.
Este interface permite ao utilizador mapear as articulaes dos dedos de cada mo, ou seja,
associar os pontos da imagem s articulaes dos ossos da falange, falanginha, falangeta e ponta
do dedo. Os crculos coloridos em cima da mo situados em baixo da foto capturada pelo sensor,
representam os marcadores para cada articulao, dos quais o utilizador pode arrastar cada um
para cima da foto. Em alternativa tambm pode clicar em cima de um ponto qualquer da foto e
automaticamente o marcador posicionado nessa posio segundo uma ordem preestabelecida
para cada articulao. Uma vez que o sensor Kinect pode estar longe, como o caso do exemplo
apresentado, e tambm para resolver a sobreposio dos dedos num gesto, foi adicionada a
funcionalidade de Zoom imagem. Na Figura 44 pode-se ver essa funcionalidade aps a marcao
das articulaes pelo utilizador:

Figura 44 - Pose Estimation: interface de marcao de pontos com Zoom


67

O interface Figura 44 permite ao utilizador visualizar as coordenadas de cada articulao e


alm disso, considerando que o Kinect no preciso ao nvel da profundidade dos dedos, tambm
permite ao utilizador definir o valor de profundidade de cada articulao atravs da tabela que se
encontra mais direita. Na Figura 45, v-se o resultado da marcao das articulaes dos dedos
que o utilizador efetuou na foto, integrado num modelo de esqueleto no MotionBuilder.

Figura 45 Pose do gesto mo aberta no MotionBuilder


As imagens da Figura 45 representam o mesmo gesto, no entanto, com perspetivas diferentes:
a primeira representa uma vista por trs e na diagonal enquanto a segunda representa uma vista de
frente. Uma das limitaes de marcar numa foto 2D objetos que se encontram num espao 3D, a
sobreposio desses objetos. Por conseguinte, a funcionalidade de fazer Zoom ajudou a lidar com
esse problema, como mostra a Figura 46:

Figura 47 - Pose Estimation: marcao de articulaes para o gesto relativo letra C em LGP

68

Figura 48 - Pose do gesto para letra C em LGP no MotionBuilder


A primeira imagem da Figura 48 representa a vista de cima enquanto a segunda imagem
representa a vista de frente. Embora os dedos estivessem totalmente sobrepostos, e a marcao de
pontos ter sido difcil dada a proximidade entre as articulaes, foi possvel integrar o gesto da
letra C em LGP num esqueleto do MotionBuilder.
O prximo passo consistiu em obter os valores de rotao, e perceber como aplicar esses
valores num esqueleto. Para em seguida enviar os valores de rotao juntamente com as
coordenadas de translao dos dedos para o MotionBuilder. Este passo originou o
desenvolvimento de um software para realizar testes s rotaes, descrito na seco seguinte.

Kinect Skeleton 3D
A aplicao permite visualizar um esqueleto a mover-se conforme os movimentos feitos por
um humano atravs do sensor Kinect. As articulaes do esqueleto esto representadas atravs de
figuras geomtricas como esferas ou cubos. Para gerar grficos 3D, necessitei de uma API grfica
e optei por escolher a biblioteca WPF 3D, que j vem includa em qualquer aplicao WPF, por
causa da sua abstrao da complexidade e pelo seu nvel de desempenho grfico suficiente para o
que pretendia.
Nesta aplicao o utilizador pode optar por fazer tracking em modo normal ou modo sentado.
O modo normal faz tracking do esqueleto completo e o modo sentado faz tracking apenas das
articulaes do tronco superior.

69

Figura 49 - Kinect Skeleton 3D em seated mode com esferas


Na Figura 49, o tracking est definido para modo sentado, e o esqueleto est representado por
esferas. O Kinect Skeleton 3D permite representar o esqueleto com cubos tambm, porque mais
fcil com estes de ver a ligera diferena na orientao das articulaes. Na Figura 50 foi definido o
tracking de corpo inteiro, atravs da desmarcao da checkbox Seated Mode no canto superior
esquerdo.

Figura 50 Kinect Skeleton 3D: full skeleton tracking com cubos


A Figura 50 mostra outra funcionalidade da aplicao. O esqueleto encontra-se num espao
3D, logo possvel visualiz-lo em vrias perspetivas. Na imagem da esquerda, a cmera est na
posio por defeito, ou seja, direcionada para a frente do esqueleto, enquanto na imagem da direita
a cmera foi alterada para se posicionar de perfil. Para mover a perspetiva da cmera o utilizador
pode usar as teclas direcionais para rodar a perspetiva. As teclas Q, E, A, D alteram a translao
da cmera, e as teclas W e S para fazer Zoom In ou Zoom Out.
70

TRANSFORM SMOOTH PARAMETERS

Figura 51 - Kinect Skeleton 3D: visualizao de opes


Como se pode ver na Figura 51, tambm possvel o utilizador escolher entre 3 tipos de
Transform Smooth Parameters, os parmetros responsveis por definir o nvel de fluidez com que
as articulaes so tratadas pelo sistema de Skeleton Tracking. Os 3 tipos so: Default, Smooth e
Smoother.
MOVER ESQUELETO

Existem duas modalidades para animar o movimento do esqueleto. O movimento do esqueleto


pode ser realizado atravs dos valores de translao ou rotao das articulaes fornecidos pelo
Kinect.
ROTAES

Existem dois tipos de rotaes existentes no SDK do Kinect: absolutas e hierrquicas. Permiti
ao utilizador escolher entre elas quando define o tipo de movimento para Rotao. Em seguida
descrevo o algoritmo para definir os valores de rotao nas articulaes para os dois tipos de
rotao:

Rotao Absoluta - Obtm a posio da articulao. Faz o translate da figura geomtrica


e em seguida aplica-lhe a Rotao Absoluta. Faz isto para cada articulao.

Rotao Hierrquica Obtm a matriz de transformao da articulao pai. Calcula o


comprimento do osso, atravs da subtraco entre a posio da articulao pai e a posio
da prpria articulao. Faz o translate da figura geomtrica com o valor do comprimento
do osso e por fim aplica-lhe a Rotao Hierrquica. Faz isto para cada articulao.

71

Figura 52 - Kinect Skeleton 3D: esqueleto movido por rotaes


Como se pode verificar na Figura 52, as rotaes tanto no modo de rotao absoluta (imagem
da esquerdo) como hierrquica (imagem da direita) no corresponderam pose do gesto feita na
imagem de cor RGB.
De modo a chegar visualizao das rotaes fornecidas pelo Kinect, era necessrio dominar
a visualizao de translao das articulaes porque a definio de rotao para cada articulao
usa tambm o valor da translao. No domnio das translaes, o objetivo de mover o esqueleto
atravs delas foi atingido. No entanto, no caso das rotaes no.

Anlise ao finger tracking semiautomtico


As limitaes do software Pose Estimation no so impeditivas ao seu funcionamento, tendo
em vista o objetivo a curto prazo do software - captura apenas de gestos estticos (letras). No
entanto, a longo prazo, o software ter de ser estendido para capturar gestos dinmicos (palavras)
de modo a concretizar um dos principais objetivos da tese combinao de gestos atmicos em
frases de LGP.
Uma das limitaes encontradas a grande quantidade de pontos necessrios para definir a
posio de um dedo. So precisos 4 pontos para marcar um dedo, logo, para uma mo so precisos
20 pontos. Isto gera um problema quando passarmos captura de gestos que envolvam duas mos.
Para gestos estticos que usem duas mos sero precisos 2 vezes 20 pontos, logo 40 pontos.
Todavia, o mbito desta tese realizar a combinao de gestos de palavras (gestos dinmicos) e
no apenas letras (gestos estticos). Portanto, seria necessrio marcar em cada foto 40 pontos
vezes o nmero de frames que o gesto teria, onde cada frame um instante temporal durante a
execuo do gesto. um nmero muito elevado de marcao de pontos para ser considerado
prtica e vivel esta aplicao. Isto sem falar ainda da segunda limitao que o software tem.
Uma vez que o Kinect no tem detalhe suficiente para obter a profundidade com preciso de
cada dedo, necessrio que esse valor seja introduzido pelo utilizador. Por conseguinte, alm da
marcao de pontos por articulao necessrio introduzir um nmero de valores de profundidade
para cada dedo vezes 4 (nmero de articulaes) vezes 2 (nmero de mos) vezes o nmero de
frames que o gesto tem.
72

importante realar que o software foi produto de investigao e a sua linha de


desenvolvimento no seguiu uma linha reta. Inicialmente a marcao de pontos para cada dedo
apenas precisava de um ponto, visto basear-se na teoria de que o MotionBuilder conseguiria
definir a posio das restantes articulaes do dedo atravs do seu sistema de HIK (Human Inverse
Kinematics).
Contudo, ao longo do desenvolvimento verificou-se que no foi possvel definir a posio de
um dedo apenas com uma coordenada, logo, isso teve impacto nas limitaes do software
desenvolvido, e por conseguinte, na concluso da abordagem tomada. O objetivo da segunda
aplicao era essencialmente ajudar concretizao da primeira soluo. Uma vez que a
abordagem teria de ser alterada, e a primeira aplicao no seria continuada, ento tambm no se
prosseguiu com o desenvolvimento da segunda.

Concluso do finger tracking semiautomtico


O resultado desta investigao deu dois frutos incompletos. Por um lado, um software que
captura a posio dos dedos e integra esses valores num esqueleto do MotionBuilder, atravs da
associao entre pontos da fotografia de uma mo e as articulaes de cada dedo. O software
tambm captura a pose 3D do tronco, neste caso automaticamente. Por outro lado, um segundo
software que permite visualizar um esqueleto a mover-se com os movimentos feitos por um
humano atravs do Kinect.
O prximo passo consistiu em exibir a aplicao Soletrar palavras em LGP, para avaliao
por utilizadores surdos, e alm disso, avaliar frases simples em LGP que surgem pela combinao
de gestos atmicos. A animao da configurao da mo far-se- manualmente por keyframe para
cada gesto.

3.9

Sumrio
Este captulo consistiu na investigao de vrias reas, nomeadamente, de animao, captura
de movimentos, hand tracking, processamento de imagem e finger tracking.
O captulo abordou um conjunto de tcnicas ou tentativas de usar o Microsoft Kinect, para a
captura de movimentos aplicada concretizao de gestos de LGP. Numas vezes a animao
realizada totalmente manual, noutras assistida pelo sensor Kinect. Como este se revelou
limitado, adotei um mtodo hibrido, atravs da captura de movimentos do corpo com o sensor,
juntamente com a animao manual da configurao da mo.

73

Captulo 4
Gerao e animao do Avatar
Neste captulo apresenta-se a componente do trabalho realizado, relativa gerao e animao
das personagens virtuais que se integraram na aplicao final. Alm disso, complementa a
investigao anterior sobre a captura de movimentos, mas desta vez, capturando a componente em
falta interpretao da LGP, a expresso facial.
Em seguida, cada fase do trabalho descrita em seguida, comparada com a iterao do
processo de desenvolvimento respetiva.

4.1

Prottipo base - primeira iterao


A primeira iterao consistiu no desenvolvimento e avaliao por utilizadores de um prottipo
inicial. Este prottipo tem duas funcionalidades principais: permite Soletrar palavras em LGP
criao de plugin; e permite visualizar um conjunto de frases em LGP feitas a partir da
combinao de gestos atmicos.
A primeira funcionalidade do prottipo j tinha sido desenvolvida anteriormente (3.3 ) e
permite ao utilizador escrever uma palavra, e em seguida visualizar um avatar a executar o gesto
em LGP para cada letra do que foi escrito. Fizeram-se algumas modificaes ferramenta
desenvolvida anteriormente para contemplar cinco palavras que o utilizador no sabe partida
quais so, mas que ter de adivinhar o seu significado. As palavras escolhidas cobrem a maior
parte das letras includas no abecedrio: embora, Portugal, favor, caminhar e ajudas.

Figura 53 - Soletrar palavras em LGP com palavras predefinidas (esq.) e Avatar utilizado (dir.)

74

4.1.1 Visualizar frases em LGP


A segunda funcionalidade do prottipo consiste em apresentar ao utilizador 6 frases em
Lngua Gestual Portuguesa que foram geradas pela combinao de gestos atmicos de palavras.
Ao contrrio da primeira funcionalidade do prottipo (Soletrar palavras em LGP) do qual o
mtodo de animao foi realizado manualmente por keyframe, agora recorri captura de
movimentos para animar o corpo e animao manual para a configurao da mo. Esta
funcionalidade pretende ir mais longe que a primeira e apresenta frases em vez de palavras.
O conjunto de expresses composto por uma frase de saudao, quatro afirmativas e uma
negativa:
Frase em LP

Frase em LGP

Ol. Bom dia. Tudo bem?

OL BOM DIA TUDO BEM?

Eu vou escola.

EU ESCOLA IR

Ele tem um gato.

ELE GATO TER

Ele foi a vora.

ELE VORA IR

Eu no vou escola.

EU ESCOLA IR NO

Eu tenho uma gata.

EU MULHER GATO TER

Tabela 3 Frases exemplo em LP e respetiva glosa


A escolha destas frases teve em considerao certas palavras-chave como: passado, no e
mulher. Estas palavras permitem compor frases cujo tempo verbal est no passado, frases
negativas ou marcar o feminino de uma palavra. Note-se que o uso da palavra mulher antes de
gato forma a palavra gata, e a palavra passado ou futuro depois de um verbo, marca o
correspondente tempo verbal do verbo. A palavra no no fim da frase nega uma frase
declarativa em LGP.
Em seguida, foram capturadas as palavras ou os gestos atmicos que compem as frases
definidas. Para ser possvel a combinao de gestos, foi necessrio retirar da animao o segmento
inicial e final de cada gesto., ou seja, definiu-se como incio e fim de cada animao, o instante em
que as mos do avatar passam o nvel da cintura. Este processo foi feito sem prejudicar a
interpretao do significado do gesto em LGP.
Para a captura de gestos usou-se o sensor Kinect e o software Brekel Kinect que permitem
transpor os movimentos humanos para um avatar no MotionBuilder. O processo de captura dos
75

gestos foi o mesmo utilizado anteriormente e encontra-se descrito em Animao de gestos de


palavras de LGP. O passo seguinte foi a composio das frases.

Composio de Frases
Nesta fase foi necessrio juntar os gestos atmicos ou palavras numa s animao. Deste
processo resultaram 6 animaes, logo, 6 frases. Usando o menu Story do MotionBuilder foi
possvel criar vrias Tracks (contentores de animaes), e usar cada uma para formar uma frase.
Em cada Track juntou-se todos os gestos atmicos ordenados segundo as regras gramaticais da
LGP.
Ao concatenar as animaes preciso sobrepor a animao de um gesto com a animao do
gesto anterior. Tambm chamado de blend entre gestos, este processo consiste na interpolao
entre as duas animaes ou gestos. O MotionBuilder trata do processo de blend automaticamente
gerando uma animao fluda e consistente. O nvel de consistncia e fluidez est dependente de
dois factores: da diferena entre as duas animaes, logo, neste caso particular, depende da
diferena da posio das mos entre as animaes; e do tempo definido de blending, isto , do
tempo definido para a sobreposio entre as duas animaes. Estes dois fatores foram ajustados
para cada animao, de modo a obter cada animao com a melhor qualidade possvel.
Foram capturadas tambm duas animaes acessrias para marcar o incio e o fim do gesto.
Uma vez que cada gesto comea e acaba com as mos ao nvel da cintura, juntou-se a cada frase,
uma animao inicial e uma animao final. A animao inicial faz a passagem do estado inicial
do avatar (posio de descanso) para o incio do gesto enquanto a animao final faz a passagem
do fim do gesto para a posio de descanso do avatar.
A estrutura utilizada para compor as frases foi sujeito-objeto-verbo (SOV) segundo a mesma
regra utilizada no dicionrio de Lngua Gestual Portuguesa (Baltazar 2010).

Figura 54 Menu Story do MotionBuilder (esq.) e avatar utilizado (direita)


76

Na imagem do lado esquerdo da Figura 54, pode ver-se o menu Story que permite compor
frases. Cada Track tem o nome de Frase 1, Frase 2 e assim sucessivamente. Em cada Track
residem os gestos ordenados sequencialmente segundo a sintaxe da LGP. Na Frase 1 podemos ver
os gestos Incio do Gesto seguido de Ol, Bom dia, Tudo bem e Fim do Gesto. Para
efeitos demonstrativos no se realizou o blending dos gestos para se interpretar claramente o que
so os retngulos coloridos (as palavras), porm na Frase 2 j se pode visualizar o blending entre
os gestos e constata-se que graficamente os retngulos coloridos sobrepem-se ou intersetam-se
entre si. Depois de desenvolvidos as duas funcionalidades descritas, passou-se sua avaliao
com utilizadores surdos.

4.1.2 Avaliao com surdos na Associao Portuguesa de Surdos


A Associao Portuguesa de Surdos (APS) uma organizao que suporta e apoia a
comunidade de surdos em Portugal. Tem como fim defender os direitos legais individuais e
comunitrios dos surdos. Desloquei-me sede desta associao para avaliar o 1 prottipo com
utilizadores surdos.
A avaliao foi efetuada por duas surdas entre os 25 e 45 anos. Uma das surdas professora e
ensina Lngua Gestual a crianas de 1 a 3 anos. A associao tambm disps de uma intrprete
para traduzir a conversa entre ns. No decorrer da conversa inicial fiquei a saber que eles no
conhecem muitas aplicaes de aprendizagem para Lngua Gestual Portuguesa e no mexem
muito com computadores. As aplicaes mais utilizadas por surdos so DVDs como dicionrios
de Lngua Gestual, DVDs que contam histrias para crianas e DVDs para pais de filhos surdos
para aprenderem a comunicarem com os seus filhos.

Objetivos
A avaliao do primeiro prottipo teve trs objetivos principais:
1. Testar a qualidade grfica das animaes e dos avatares;
2. Testar a facilidade de interpretao das animaes;
3. Fomentar a discusso para a criao de uma aplicao til de LGP
O teste com utilizadores foi dividido em duas partes.
A primeira parte envolveu a utilizao da aplicao Soletrar Palavras em LGP e pretendeu
testar o desempenho do nosso intrprete virtual a soletrar palavras em LGP.
Na segunda parte, apresentou-se um conjunto de frases e pretendeu-se avaliar o desempenho
de um avatar a traduzir frases predefinidas para LGP.

Mtricas
77

As mtricas para a avaliao basearam-se em dois questionrios, um para cada parte da


avaliao. Ambos os questionrios medem o desempenho de uma funcionalidade particular do
prottipo. O primeiro questionrio recolheu as repostas relativas ao teste da componente de
Soletrar palavras em LGP enquanto o segundo recolheu o feedback relativo visualizao de
frases em LGP. Cada questionrio contm perguntas de repostas abertas e perguntas com escala
Likert de 3 nveis para avaliar a facilidade com que o utilizador interpretou os gestos.

Questionrios
Os questionrios usados na avaliao podem ser consultados no Anexo 3 para o primeiro teste
e no Anexo 4 para o segundo teste.

Resultados
Comemos o teste e os surdos ficaram entusiasmados pelo avatar da Figura 53. Ao apresentar
a primeira palavra (embora), os surdos sentiram muita confuso e no conseguiram perceber.
Queixaram-se que a animao estava muito rpida e alm disso, no conseguiam visualizar bem o
contraste entre o brao e a mo do avatar. Diminuir a velocidade de animao, tornou possvel a
interpretao. Aps 4 tentativas conseguiram interpretar a primeira palavra.
Passmos segunda palavra que era Portugal, que foi reconhecida ao fim de duas
tentativas. Ao longo do teste identificaram outro problema. Nas letras cujo gesto implica
direcionar a mo para baixo, como por exemplo, nas letras M e N, a animao no estava
correta, pois o brao afastava-se demasiado da posio correta. A posio correta posicionar a
mo no centro do corpo frente dos pulmes.
No segundo teste, o avatar utilizado era diferente (Figura 54). Os surdos confirmaram que este
avatar era mais adequado pois era mais fcil interpretar os gestos devido s mos estarem mais
expostas e contrastantes do resto do corpo. De seis frases apenas trs foram reconhecidas. Das
frases reconhecidas a primeira foi reconhecida mais facilmente que as restantes, enquanto as
outras duas tiveram de ser repetidas.
Foram identificados 6 causas para o no reconhecimento:

Construo frsica errada;

Regionalismos: execuo de gestos que so utilizados numa regio diferente da


regio donde os surdos residem;

M qualidade na animao para alguns gestos;

Falta de expresso facial do avatar;

Alternncia da mo dominante durante a execuo dos gestos;

78

Cinco das seis frases utilizadas usavam a estrutura frsica SOV, no entanto, os surdos
afirmaram que essa no era a ordem correta para os elementos da frase, mas sim OSV (objetosujeito-verbo). Outro motivo foi a utilizao de gestos como gato e ir que foram executados
como se faz no Porto e que so diferentes dos que os surdos usam habitualmente na regio de
Lisboa. Outra causa foi que alguns gestos como ir no estavam bem animados, e no caso do
gesto ir o gesto entrava em 3 frases. Para os gestos Escola e vora, a mo dominante era a
esquerda, enquanto para o resto dos outros gestos a mo dominante era a direita. No correto
fazer a alternncia da mo dominante durante a execuo dos gestos.

Concluso dos resultados


Foi muito importante o contacto com a associao. O teste com utilizadores reais evidenciou
os pontos fracos e fortes, e fez-me ver que necessrio um acompanhamento prximo da parte dos
surdos ao longo do trabalho.
O avatar usado no primeiro teste desadequado e foi descartado, pois quanto mais visveis as
mos estiverem, melhor ser para o surdo descodificar com sucesso a mensagem que o avatar est
a tentar transmitir visualmente. Conclu que seria necessrio refazer algumas letras, especialmente
as letras que implicam que a mo esteja virada para baixo e tambm reposicionar a posio do
brao nessas letras.
Em relao ao segundo teste, verificou-se que algumas expresses como ir tm de ser
refeitas para atingir uma animao com mais qualidade. Alm disso verificou-se que a ordem dos
elementos na frase no estava correta. No existe consenso na LGP quanto qual a ordem
predominante (Wikipedia 2007): alguns linguistas afirmam ser SOV, outros afirmam ser OSV.
Portanto, vou adotar daqui adiante a construo frsica OSV, a referida pelos surdos na avaliao.
Durante a reunio, foi discutido com uma surda cuja rea de trabalho o ensino de LGP a
crianas surdas, algumas necessidades da sua rea. Ela referiu que na sala de aula a utilizao de
um avatar para ensinar gestos de LGP cativaria o interesse das crianas pela aprendizagem.
Durante a conversa, discutiram-se duas ideias para aplicao de um avatar:
1. Avatar que contasse histrias a crianas;
2. Avatar que traduzisse palavras para LGP como cores, profisses, etc.
O ponto 2 foi a ideia que originou a aplicao final desta tese. Antes de passar descrio da
aplicao era necessrio integrar as alteraes suscitadas e gerar um avatar interessante para o
contexto infantil que tivesse em conta as opinies referidas durante a reunio.

4.2

Novo avatar - segunda iterao


A segunda iterao vem no seguimento da avaliao do prottipo inicial. Face s alteraes
suscitadas pelos surdos durante a avaliao, a segunda iterao consistiu em obter um avatar com
79

mais qualidade e mais adequado execuo de gestos no mbito de uma aplicao infantil.
Posteriormente, procedeu-se reavaliao do resultado por utilizadores surdos.

4.2.1 Concepo de novo Avatar


Ao contrrio dos avatares utlizados at aqui, este avatar foi criado por mim. Para facilitar a
criao foram utilizadas vrias ferramentas para gerar e trabalhar o avatar. As ferramentas
utilizadas foram: MakeHuman; DAZ Studio e Blender. Blender (Blender Foundation 2011) um
software open-source para modelao e animao 3D. MakeHuman (Makehuman TM 2011)
uma aplicao desenhada para a gerao de humanos virtuais fotorealsticos. DAZ Studio (DAZ
3D Inc 2011) uma ferramenta de ilustrao e animao 3D sem recorrer complexidade da
modelao.
O MakeHuman permitiu gerar facilmente duas personagens virtuais. Tendo em conta que a
aplicao final ser focada para crianas, ento decidi criar avatares de crianas. Com a finalidade
de haver diversidade racial, foram representados duas personagens: uma menina chinesa e um
menino africano. Depois de criados, estes foram exportados e importados para o Blender. A
exportao direta do MakeHuman para o MotionBuilder apresentou alguns erros ou
incompatibilidades pelo que tive de recorrer ferramenta Blender (Figura 55) como aplicao
intermdia que permitiu corrigir os problemas encontrados.

Figura 55 Avatar com problemas na importao


As incompatibilidades encontradas como se podem ver na Figura 55 foram: as texturas no
foram bem carregadas, designadamente, as pestanas e as sobrancelhas apareceram a preto; e a pele
do avatar trespassava a roupa do prprio. Em relao ao primeiro problema, a soluo passou por
apagar todos os vrtices que representavam as pestanas e as sobrancelhas, conseguindo assim
eliminar as figuras geomtricas a preto. Para resolver a segunda situao, tentou-se algumas
abordagens, uma das quais foi fazer o Vertex Modeling que consiste na alterao da posio dos
80

vrtices do modelo. No entanto, este mtodo demonstrou-se pouco prtico, pois era muito
demorado e pouco eficaz, visto que era necessrio alterar uma grande quantidade de vrtices e por
sua vez, algumas alteraes malha provocavam irregularidades indesejadas na forma/dimenso
do personagem. O mtodo utilizado passou por usar um Mask Modifier. Este mtodo consiste em
esconder um conjunto de vrtices. Criou-se um Vertex Group, que basicamente como o nome
indica um grupo de vrtices, agrupou-se apenas os vrtices responsveis pelos pontos da malha
que esto por baixo da roupa e aplicou-se um modificador do tipo Mask a esse grupo. Depois de
corrigido os problemas referidos, decidi criar um terceiro avatar. Neste caso foi criado uma
menina caucasiana recorrendo ao software DAZ Studio. A razo para ter usado outra ferramenta,
foi a necessidade de criar um avatar com uma aparncia completamente diferente dos personagens
anteriores, tanto ao nvel de estrutura fsica, como roupa, e por isso no se recorreu ao
MakeHuman como nos outros avatares. A exportao do DAZ Studio para MotionBuilder no
trouxe nenhum problema.

Resultados

(a)

(b)

81

(c)
Figura 56 Foto dos avatares: (a) Artur - (b) Mimi - (c) Nucha
Foram concebidos trs avatares j com esqueleto de diferentes raas, e a sua importao foi
testada com sucesso pelo software de animao MotionBuilder. Os trs avatares estavam
preparados para serem animados. A prxima fase foi decidir qual dos trs seria o melhor avatar na
perspetiva do pblico-alvo. Ento contactei de novo a Associao Portuguesa de Surdos para saber
qual dos trs seria o melhor modelo no papel de comunicador de LGP no mbito de uma aplicao
infantil. A APS voltou a contactar os surdos que estiveram presentes na avaliao do primeiro
prottipo e validaram que o avatar Nucha seria o mais indicado para o objetivo.
O prximo passo consistiu na ltima iterao do projeto e teve trs objetivos: animar o avatar
escolhido com vrias palavras e frases; investigar a captura e animao facial; desenvolver uma
aplicao que expusesse as funcionalidades do avatar como intrprete gestual.

4.3

Novos gestos, captura facial e aplicao - terceira iterao


A terceira iterao envolveu a produo de novos gestos para estender o vocabulrio
existente, mas desta vez, tendo em conta o feedback recolhido na primeira avaliao com surdos.
Uma das recomendaes era a falta de expressividade, e esse campo foi abordado atravs de
alguns testes captura facial e na sua integrao numa animao de corpo e mos previamente
elaborada. Por fim, esta iterao finalizou com a elaborao clara do conceito de uma aplicao e
a sua implementao de modo a exibir as funcionalidades de animao conseguidas at aqui.

4.3.1 Produo de novos gestos


A maioria dos gestos existentes possui uma qualidade razovel. No entanto, dois usavam
como mo dominante a esquerda, distinta da mo utilizada na maioria dos gestos. Com este
cenrio, emergiam duas opes: voltar a produzir os dois gestos utilizando a direita como mo
dominante, ou passar a maioria dos gestos para a mo esquerda. Como capturar e produzir a
animao dos dedos um processo demorado, a primeira opo seria muito mais fcil e prtica. A
desvantagem que os gestos produzidos foram frutos de um nvel de experincia baixo de
82

animao, e no refletiam a qualidade por mim desejada. Decidi capturar de novo todos os gestos,
exceto os dois que j se encontravam com a mo dominante a esquerda, e produzir para cada um a
animao de mos e dedos. Alm disso, capturei mais 22 gestos novos.
Os novos gestos incluram gestos para novas cidades, animais, cores, profisses, frutas,
verbos, pronomes interrogativos, entre outros. A escolha das novas palavras foi pensada j com a
ideia de quais as frases que poderiam ser feitas com a combinao dessas palavras. Alm disso,
para estender os conceitos de sintaxe do primeiro prottipo (marcao de gnero, negao de
frase, tempo verbal), foram capturados pronomes interrogativos para gerar frases interrogativas e
capturei a palavra muitos, para gerar palavras no plural em LGP. Relembro que uma das formas
de marcar o plural em LGP, pela adio da palavra muitos depois do substantivo.
A produo de 20 gestos desde a captura at ao gesto final, demora cerca de 10 horas, sendo
despendida uma mdia de meia hora para cada gesto. O passo seguinte envolveu fazer um teste
captura facial e integr-la num avatar.

4.3.2 Captura facial


Para a capturar as expresses faciais foram testados duas ferramentas: Brekel Kinect Pro Face
(BKPF) e Faceshift. Ambas exportavam os dados para o formato FBX de modo que facilitava a
importao direta para o software de animao MotionBuilder. A qualidade de tracking do BKPF
no to boa nem estvel como a do Faceshift, pelo que este motivo a ferramenta escolhida para a
captura foi o Faceshift.
O software utiliza um algoritmo de aprendizagem (machine learning algorithm) para otimizar
a qualidade do tracking a um utilizador especfico, pelo que precisa inicialmente de ser treinado
atravs da execuo de uma srie de expresses faciais. Aps treinar o software para se adaptar
minha face, procedi captura de expresses como feliz, surpreendido e zangado demonstradas na
Figura x.

83

Figura 57 Faceshift: expresses faciais: feliz (esq.), surpreendido (direita), zangado (baixo)
Na Figura 57 nota-se que a pose facial para as expresses feliz e surpreendido so bem
capturadas, mas expresso de zangado no bem capturada. Algumas expresses no so tao bem
capturadas como outras. A Figura 57 demonstra que o Faceshift consegue apresentar um avatar e
at importar um avatar externo e anim-lo com os dados da captura em tempo real. No entanto, os
avatares existentes por defeito no software apenas tm face e peito, pelo que importou-se um
avatar externo para testar a animao facial no MotionBuilder.
O Faceshift permite utilizar blendshapes para animar as expresses faciais. Os avatares
utilizados at ao momento no tinham blendshapes e uma vez que a plataforma online Project
Pinocchio (Autodesk 2013) gera muito facilmente avatares j com estes elementos, ento decidi
criar um avatar com esta ferramenta e importar para o Faceshift. Para integrar um avatar externo
no Faceshift necessrio mapear as blendshapes do avatar com as blendshapes que o software
est espera. O software tem um editor (Figura 58) que permite fazer esta associao, onde se v
de um lado a blendshape do software e a sua representao grfica na face de um modelo humano,
e do outro lado, as blendshapes do avatar e a sua representao grfica na face do avatar.

Figura 58 Faceshift: mapeamento de blendshapes entre avatar e software


Este processo demorado e complicado porque existem 48 blendshapes e 90% das
blendshapes do software no correspondem s do avatar. A soluo passa por jogar com os
valores das blendshapes no avatar at que a pose facial do modelo humano do Faceshift
corresponda com a pose facial do avatar.
84

Depois de realizado o processo anterior, capturou-se uma expresso facial de um sorriso e


exportou-se para o software de animao. Ao ser importado no MotionBuilder, o avatar
apresentou os olhos a preto (Figura 58). Julgo que o software no lida bem com materiais com
transparncias, ento a soluo passou por apagar os dois elementos que tinham transparncia. O
prximo desafio foi integrar a animao facial com uma animao do corpo j existente.
Para isso importei o gesto Ol, previamente utilizado no prottipo inicial. Associei o gesto
ao novo avatar, e atravs do menu Story consegui juntar a animao facial animao do corpo,
sincronizando o instante inicial e final de cada uma. Na Figura 59 vemos o gesto Ol em dois
instantes diferentes com animao facial incorporada.

Figura 59 Gesto Ol em LGP: incio do gesto sem expresso facial (esq.) e a meio do
gesto v-se a expresso facial

4.3.3 Aplicao
A aplicao concebida chama-se Os meus primeiros gestos e est descrita no prximo
captulo.

4.4

Sumrio
Este captulo enumerou as trs iteraes que descrevem a metodologia utilizada para realizar
os objetivos desta tese. O captulo comeou por abordar o desenvolvimento de um prottipo
inicial e a sua avaliao por utilizadores. Em seguida, o captulo descreveu o processo de criao
de trs avatares, onde um deles foi escolhido por surdos para colmatar as falhas do avatar utilizado
anteriormente. Por fim, apresentou-se o teste feito captura facial, mostrando o processo desde a
captura da expresso facial, passando pela sua integrao num avatar, at expresso facial ser
incorporada numa animao efetuada anteriormente para o corpo, incluindo mos e dedos.

85

Captulo 5
Os meus primeiros gestos
O trabalho realizado previamente pode ser aplicado em vrios contextos possveis. Este
captulo inicia-se pela motivao que levou elaborao de um conceito particular de aplicao.
O captulo descreve todo o processo de desenvolvimento de uma prova de conceito, uma
aplicao Web, que pretende introduzir conceitos bsicos de LGP e que foi desenhada
principalmente para crianas.

5.1

Motivao
Antes de passar ao desenvolvimento da aplicao, fiz uma breve pesquisa sobre como as
crianas surdas so ensinadas na escola. Li acerca da dificuldade que os alunos tinham em
aprender o portugus escrito. Li tambm que os mtodos de ensino da componente escrita tinham
em comum a associao de imagens aos conceitos ou ideias que se queriam transmitir ao surdo
(Camargo 2011) (Baptista 2010). Conclu que uma aplicao para ensinar conceitos bsicos de
Lngua Gestual Portuguesa, tem necessariamente de correlacionar o conceito que se quer ensinar a sua palavra escrita com a sua representao visual e o gesto respetivo em LGP.
Durante a reunio com surdos na Associao Portuguesa de Surdos (Avaliao com surdos na
Associao Portuguesa de Surdos), surgiu a ideia de criar uma aplicao que introduzisse
conceitos bsicos de LGP a crianas, com vrios temas como cores, profisses, etc. Como diz
Deusdado, a consulta de dicionrios para o ensino da LGP no suficiente, sendo que o aluno
deve um papel mais ativo e no processo de aprendizagem e no meramente s visualizao de
gestos. Com esse objetivo, decidi incluir uma componente, distinta dos dicionrios tradicionais,
que teste os conhecimentos do utilizador, atravs de um jogo simples de associao entre palavras
e gestos, e uma forma divertida de compor palavras em frases de LGP.

5.2

Os meus primeiros gestos


Esta aplicao pretende introduzir conceitos bsicos de LGP. Consiste num dicionrio
temtico que permite a consulta de palavras e a sua traduo em gestos de LGP. Tem temas como
86

cores, profisses, animais, frutas, cidades, verbos e pronomes pessoais e interrogativos. O


tradutor um avatar que comunica em Lngua Gestual Portuguesa os conceitos a serem
traduzidos. Os meus primeiros gestos tambm contempla a apresentao de vdeo com
humanos, no caso de no existir uma animao com um avatar para traduzir um gesto. Tem gestos
para palavras como: eu, no, ir, comprar, passado, bombeiro, laranja, Lisboa,
gato, co, vermelho e azul para nomear apenas algumas. Na Figura 60 pode-se ver o
avatar a traduzir para gestos de LGP a palavra verde.

Figura 60 Ver um gesto na interface principal


Tambm se pode compor frases com palavras do dicionrio. possvel arrastar uma palavra
de cada vez e compor uma frase com a sintaxe LGP. Por exemplo, um utilizador pode compor a
frase em LGP GATO VERDE, ou seja, "O gato verde" em LP. O avatar ento mostra a
sequncia de gestos para essa frase mais a frase em LP correspondente. A composio de frases
de estrutura simples, mas est focada para ensinar alguns conceitos gramaticais como: a marcao
de gnero, a marcao de tempo verbal, o singular/plural, a construo de frases negativas e
interrogativas. No compositor (Figura 61), ao combinar as palavras mulher, gato e verde,
obtm-se a frase A gata verde em LP e a visualizao dos gestos correspondentes. Os
primeiros gestos tambm inclui um modo jogo ou exerccio (Figura 62), para de uma forma mais
didtica testar os conhecimentos do utilizador. O utilizador escolhe uma palavra e so
apresentadas vrias animaes de gestos, sendo que apenas uma corresponde ao gesto dessa
palavra. O utilizador ter de adivinhar qual a animao correta.

87

Figura 61 - Compositor de frases (em baixo)

Figura 62 - Adivinhar gesto


Esta prova de conceito foi desenhada para ser extensvel, ou seja, permite facilmente a gesto
dos seus contedos atravs de um interface, ilustrado na Figura 63, para adicionar, remover e
editar palavras, gestos, frases e utilizadores por um administrador.

Figura 63 Gestor de Contedos

88

5.3

Pblico-alvo
Esta aplicao destina-se a dois pblicos-alvo distintos. Por um lado, destina-se a surdos,
principalmente crianas, que tenham LGP como primeira lngua, mas que sintam dificuldade em
associar o significado das palavras sua representao escrita. Por outro lado, destina-se a
ouvintes do qual se pressupe que a sua primeira lngua seja o portugus, mas que no tenham
conhecimentos de lngua gestual portuguesa e com o uso da aplicao aprendam a executar os
gestos para palavras e frases simples.

5.4

Engenharia de Requisitos
Para especificar as funcionalidades de Os primeiros gestos elaborei um documento com o
levantamento de requisitos. Como complemento desde documento foram desenhados alguns
diagramas de Casos de Uso de forma a elucidar os requisitos e ajudar na anlise do problema.
Recorri ao software Sybase PowerDesigner para criar estes artefactos por ser uma aplicao muito
completa em termos de funcionalidades virada para a documentao.

5.4.1 Levantamento de Requisitos


Requisitos funcionais
O sistema proposto ter de ter duas componentes. Uma componente ser o front-end, ou
aplicao principal, que permite consultar palavras e ver a traduo do seu significado em LGP,
entre outras funcionalidades. A segunda componente ser o Backoffice destinada a utilizadores
com perfil de Administrao para gerir os contedos da aplicao principal.
Em seguida enumero os requisitos funcionais da aplicao front-end:

Traduo de palavras para gestos em LGP


Agrupamento de palavras por Tema
Pesquisa de palavras
Combinao de gestos em frases em LGP
Traduo de frases para gestos em LGP
Visualizao de sugestes de frases existentes no sistema

Modo exerccio - adivinhar o gesto para uma determinada palavra


Permitir a visualizao de gestos com qualidade normal ou em alta-definio
Permitir a visualizao do gesto em cmara lenta e/ou em modo Loop
Sistema de perfis de utilizadores

Os requisitos funcionais do Backoffice ou Gestor de Contedos so:

Gerir temas, palavras, gestos e frases


Gerir utilizadores
89

Gerir os temas e palavras associados a cada utilizador

Requisitos no funcionais
Os requisitos no funcionais da aplicao front-end so:

Usabilidade: O sistema focado para crianas e convm ter um interface


simples, apelativo e intuitivo que permita ao utilizador chegar ao seu objetivo de
forma eficaz e satisfatria.

Extensibilidade: O sistema deve permitir adicionar novas entradas relativo a


temas, palavras, gestos e frases sem ter que recompilar a aplicao.

5.4.2 Anlise de Requisitos


Uma tcnica importante muito comum no desenvolvimento de sistemas de informao a
identificao dos Casos de Uso do sistema, de modo a facilitar a anlise e especificao de
requisitos. A descriao formal dos diagramas de caso de uso pode ser consultada nos Anexos
Anexo 5 e Anexo 6
Uma vez que o sistema formado por dois componentes, apresentam-se os diagramas de
Casos de Uso tanto para o front-end como para o backoffice, acompanhado da identificao e
descrio dos atores do sistema.

Caso de Uso Autenticao no sistema


Utilizador pessoa que utiliza a aplicao front-end.

Figura 64 - Caso de uso da Autenticao no sistema


90

O utilizador pode usar todas as funcionalidades do front-end sem se autenticar (Figura 64).
Contudo, foi planeado estrategicamente a possibilidade de autenticao com vista evoluo
futura do sistema. O exemplo que se implementou para demonstrar o potencial, foi a possibilidade
de um utilizador ter ar acesso a diferentes gestos e/ou temas diferentes de outro utilizador.
Nota: A funcionalidade de registo no foi contemplada propositadamente. necessrio
primeiro definir inequivocamente o contexto e a finalidade da autenticao. Existem vrias
possibilidades de uso: filtrar utilizadores comuns de utilizadores premium, ou seja, que pagaram
para obter mais contedos; ser usada no contexto aluno-professor, onde os alunos so orientados
por um professor que define como objeto de estudo, um conjunto de gestos. Portanto, aps a
definio clara do contexto da autenticao, procede-se criao de um interface de registo
adequado ao seu objetivo.

Caso de Uso Traduzir e Adivinhar gesto de Palavras


Utilizador pessoa que utiliza a aplicao front-end.

Figura 65 - Caso de uso para Traduzir e Adivinhar gestos de palavras


Este caso de uso (Figura 65) representa as aes possveis do front-end referentes a uma
palavra ou gesto. Relativo a cada palavra do sistema, o utilizador pode ver a sua traduo no gesto
respetivo, efetuar uma pesquisa e por ltimo, pode entrar no modo exerccio e adivinhar o gesto
que corresponde a cada palavra no sistema.
91

Caso de Uso Compositor de Frases


Utilizador pessoa que utiliza a aplicao front-end.

Figura 66 - Caso de uso para Compositor de Frases


Neste caso de uso (Figura 66), foram representadas as aes disponveis ao utilizador
relativamente a frases em LGP. O compositor de frases permite a combinao de vrias palavras
de modo a formar uma frase em LGP. Depois do utilizador combinar as palavras, pode visualizar a
traduo da frase em gestos de LGP.
O sistema tambm permite mostrar vrias frases aleatrias existentes na aplicao com o
intuito de servir de modelo composio de frases.

Caso de Uso Backoffice


Administrador pessoa com privilgios que utiliza a aplicao Backoffice.

92

Figura 67 - Caso de uso para Backoffice


O Backoffice uma aplicao de suporte ao front-end cuja funo permitir a gesto de
contedos do front-end. Por essa razo, no caso de uso da Figura 67 definiram-se as vrias funes
de CRUD (create, read, update, delete) que permitem gerir os contedos do front-end,
nomeadamente os temas, palavras, gestos e frases.
no Backoffice que tambm se gere os utilizadores e se define quais as palavras e temas que
cada utilizador pode ter acesso.

5.5

Desenho do Sistema
Esta seco comea por apresentar uma vista geral do sistema atravs da definio da
arquitetura utilizada. Nesta vista faz-se a definio dos componentes fsicos do sistema e as suas
relaes.
Em seguida, apresento o modelo ou a estrutura de dados que serviu de base implementao
da persistncia de dados do sistema. Apresenta-se um diagrama de classes onde esto modeladas
as entidades e as suas relaes da aplicao front-end. Tambm foram identificados os ficheiros
javascript implementados no lado do browser.

93

Por fim, descrevo o processo e os resultados do mtodo utilizado para o design e conceo
das interfaces.

5.5.1 Arquitetura da aplicao

Figura 68 Arquitetura da aplicao

Front-end e Backoffice
Estes so os componentes que so executados atravs de um browser e fazem a interface ao
utilizador (Figura 68). O front-end a aplicao Web principal enquanto o Backoffice ou Gestor de
Contedos uma aplicao Web de suporte. Cada aplicao tem como funo capturar os inputs
do utilizador, enviar pedidos ao servidor Web e apresentar a informao recebida.
Tecnologias Usadas
Usei HTML 5, CSS3, JavaScript, AJAX

Servidor Web
O servidor Web responsvel pelo processamento dos pedidos da aplicao Web. Este
componente implementa a lgica de negcio, e sua funo receber o pedido feito pela aplicao
Web, process-lo e enviar a resposta. Para concretizar esta tarefa faz pedidos base de dados.
Tecnologias Usadas
ASP.NET, C#

94

Base de Dados
Este o componente que permite a persistncia de dados do sistema. Realiza todas as tarefas
de leitura e escrita dos dados atravs de um SGBD (Sistema de Gestor de Base de Dados).
Tecnologias Usadas
Microsoft SQL Server

5.5.2 Estrutura de Dados

Figura 69 Modelo de Dados do sistema


Na Figura 69 representou-se com a mesma cor, as tabelas que tm uma funo em comum. A
azul esto as tabelas que representam os contedos, enquanto a verde esto as tabelas que
representam os dados do utilizador. As tabelas a azul Sentence, Theme, Gesture e Word
representam os contedos da aplicao. Cada palavra est associada a um tema, e cada gesto est
associado a uma palavra.
As tabelas a verde representam os dados do utilizador e a tabela UserThemes e UserWords
existem para implementar a lgica muitos para muitos entre o utilizador e temas/palavras
respetivamente.
95

5.5.3 Diagrama de classes


No diagrama da Figura 70, usou-se tal como na Figura 69, a mesma cor nas tabelas que tenham
uma funo em comum. Neste diagrama esto representadas as classes utilizadas no lado do
servidor relativas ao front-end:

Figura 70 Diagrama de classes do lado do servidor (front-end)


GestureVideo e SentenceQueryResult representam as classes de objetos que so enviados do
servidor para o browser.
WebMethods a classe que implementa os mtodos AJAX chamados por javascript no lado do
browser. esta classe que faz de interface entre os mtodos do cliente e a sua implementao no
lado do servidor.
A classe HTMLConstructor tem como funo converter os dados fornecidos pela base de
dados em cdigo HTML apresentvel.

96

A classe Database trata de fazer pedidos base de dados e retornar essa informao.
A classe SentenceQuery a classe que gere os pedidos do front-end relativamente a frases,
designadamente, retorna frases aleatrias (visualizar Sugestes de frases) ou responde aos pedidos
do componente Compositor de Frases.
A classe UserCookie trata de gerir os cookies utilizados na aplicao, designadamente tem a
funo de criar ou ler um cookie.

Modelo alto-nvel dos ficheiros javascript usados no browser


Em javascript no existe o conceito de classe nativa na linguagem, no entanto, a Figura 71
mostra os ficheiros de cdigo javascript implementados no lado do browser
Legenda
DragDrop.js responsvel por toda a lgica de
manipulao de objetos arrastveis.
Logged.js responsvel por gerir o interface
conforme o utilizador esteja autenticado ou no, e
por gerir o cookie.
Misc.js nenhuma funo em especfico, cdigo
comum a vrias pginas.
AdivniharVideo.js trata da interao do interface
e da lgica de pedidos ao servidor relativos ao
componente Adivinhar gesto.

Figura 71 Ficheiros javascript usados no


lado do cliente (browser)
RefreshContent.js trata da comunicao com o servidor e das alteraes do interface relativas ao menu tabs e
informao das palavras apresentadas na lista de palavras, ou no centro da interface.

5.5.4 Design e Conceo de Interfaces


O design e a conceo das interfaces seguiram o modelo de desenvolvimento centrado no
utilizador. Foram abordadas algumas tcnicas de Interao Pessoa-Mquina que passo a descrever
em seguida.

97

O primeiro passo consistiu na definio de personas e cenrios. O segundo passo foi a


elaborao de prottipos. Primeiro desenvolvi iterativamente prottipos de baixa-definio. Em
seguida, elaborei os prottipos de alta-definio. Ao longo do processo elaborei vrios designs
alternativos at chegar ao interface mais adequado. O desenho de interfaces incidiu sobre a
aplicao principal, o front-end. A aplicao Backoffice uma aplicao de suporte aplicao
principal pelo que no foi especificado como requisito a usabilidade. As aplicaes como o
Backoffice, que gerem contedos, tm o mesmo objetivo, logo tm uma estrutura similar e o seu
tipo de utilizador (administrador) tem um perfil mais experiente que o utilizador comum.

Compreenso dos Utilizadores


A base para um bom design de interfaces passa por compreender os utilizadores e as suas
tarefas de modo a obter um processo de desenvolvimento centrado no utilizador.
Conhecer os utilizadores, quem so, o que fazem, como fazem e quando fazem, foi o objetivo
da definio de Personas e Cenrios apresentados em seguida.
Personas
Personagem 1

Daniel um mido de 6 anos e surdo. Ele gosta muito de brincar com os seus Gormities e
o heri preferido dele o Super-Homem, porque este diferente dos outros tal como ele.
Tem um computador com Internet que usa muitas vezes para jogar.
Ao contrrio dos seus pais que so ouvintes, Daniel surdo de nascena, no entanto, fala
lngua gestual portuguesa que aprendeu espontaneamente em contacto com pessoas proficientes
na lngua. Anda no 1 ano de escola onde est a aprender lngua portuguesa, a sua segunda
lngua.
um mido um pouco fechado e o ensino da sua escola bilingue (Lngua Portuguesa e
LGP).
Personagem 2

Manuel tem 29 anos de idade e vive em Lisboa. um jovem alegre e bem-humorado. Tirou
uma licenciatura em Engenharia Civil, mas at agora no encontrou emprego na rea. Trabalha
como comercial numa loja de vender telemveis.
Gosta muito de ler e ir ao cinema. Joga todas as semanas no Euro milhes mas o nico
prmio que ganhou foram 10 euros. Um dos seus sonhos comprar um iate e ir viver para a
Austrlia.
98

No se d muito bem com computadores, pois s teve o seu primeiro computador aos 18
anos.
Manuel foi tio h pouco tempo de um menino surdo.

Cenrios
Cenrio 1

Manuel entra na aplicao. Seleciona a opo de Dicionrio. O sistema apresenta um ecr


com vrios temas. Escolhe o tema dos animais. O sistema retorna uma lista de vrios animais em
que cada animal acompanhado de uma imagem. Manuel seleciona a imagem do gato. O
sistema abre um vdeo onde se v a animao de um humano virtual a executar o gesto em
Lngua Gestual Portuguesa para a palavra gato.
Cenrio 2

Daniel entra na aplicao. Seleciona a opo Adivinhar. O sistema apresenta um ecr com
vrios temas. Daniel escolhe o tema das cores. O sistema retorna uma lista de vrias cores em
que cada cor acompanhada de uma imagem. Ele seleciona a cor roxa. O sistema apresenta
vrias animaes de gestos. Daniel escolhe uma delas, mas no corresponde cor certa. Sistema
avisa utilizador que gesto no corresponde palavra e diz que aquele gesto para a cor
vermelha. Daniel volta a tentar, e seleciona outro gesto. O sistema avisa utilizador que est certo
e volta ao menu da listagem de cores.

Prottipos
Nesta seco apresento os vrios prottipos construdos durante o design de interfaces tanto
de baixa fidelidade (BF) em papel, como os de alta fidelidade (AF). descrito o mtodo de
conceo dos prottipos e a evoluo do seu design.
Prottipos de baixa fidelidade
No esboo do lado esq. da Figura 72 est representado o interface inicial da aplicao que
serve de entrada ao sistema e define partida, o modo que o utilizador pretende utilizar a
aplicao. A aplicao pode ser usada como dicionrio, ou como teste aos conhecimentos (modo
exerccio/adivinhar).

99

Figura 72 Prottipo de BF: interface inicial esq. e interface principal direita


Aps a seleo em Consulta, d-se o seguimento para o interface principal, representado no
esboo direita. Achei que este interface podia ser melhorado, ento iterei mais uma vez o seu
desenho com os objetivos de adicionar uma barra de tabs para escolha de temas, uma combobox
para alternar entre modo o Consulta e Exerccio, e o menu Compositor de Frases. A iterao
resultou no esboo esquerda da Figura 73:

Figura 73 Prottipo de BF: interface principal iterado esq. e interface vdeo direita
Na Figura 73 est representado um click numa suposta palavra e a mudana do interface em
reao a essa ao. No esboo da direita, vemos o aparecimento do controlo de vdeo a sobreporse por cima dos outros elementos. Esta deciso deveu-se inteno de criar um interface que
permita ver um vdeo de uma palavra e ao mesmo tempo ter disponvel o mximo nmero de
palavras passveis de serem selecionadas. Tambm se verificou a expanso do menu Compositor
de Frases que permite combinar palavras atravs de um menu de escolha de palavras.
O desenho do controlo de vdeo e do Compositor de Frases foi iterado vrias vezes para
chegarem sua melhor localizao espacial no interface como se apresenta na Figura 74:
100

Figura 74 Prottipo de BF (iterao sobre o interface compositor de frases)


Prottipo de baixa fidelidade final vs. alta fidelidade inicial
Ainda foram feitas mais algumas iteraes nos prottipos de baixa fidelidade. A Figura 75 e a
Figura 76 mostram o passo seguinte a esse processo e a comparao com os prottipos de altafidelidade iniciais.

Figura 75 Interface principal (prottipo de BF esq. vs. AF direita)

Figura 76 Interface para visualizar vdeo (baixa esq. vs. alta fidelidade direita)

101

A Figura 76 mostra a introduo de uma barra arrastvel que define a velocidade do vdeo.
Tambm se verifica a adio de dois botes HD e SD que permitem ver o vdeo em alta-definio
ou qualidade standard respetivamente, mas que no prottipo de AF inicial ainda no tinham sido
desenhados.
Prottipos de alta fidelidade
At chegar ao design mais satisfatrio, o design de interfaces dos prottipos de alta fidelidade
implicou vrias iteraes. Surgiram vrias solues alternativas de desenho pelo que foi escolhido
em cada situao, o design que achei mais eficaz, coerente e fcil de usar para o utilizador.
Sabendo que um dos pblicos-alvo so crianas, procurou-se a criao de interfaces
interativas e cativantes. Era necessrio construir um interface colorido e com cores vivas. A
experincia do pblico-alvo com computadores no muito grande e tambm de modo a conceber
um interface intuitivo e fcil de usar, pretendi criar um interface simples, mas funcional.
Design grfico

A imagem de fundo utilizada encontrou-se na Internet. O logotipo foi criado em PhotoShop


usando as cores da imagem de fundo escolhida. A fonte usada na aplicao foi encontrada na
Internet e na Tabela 4 apresentam-se as fontes encontradas. Decidi escolher por comparao, as
duas ltimas fontes: a penltima para o corpo da aplicao e a ltima para o logotipo.
Fonte

Exemplo

ComingKiddo

Os meus primeiros gestos

GoldPanda

Os meus primeiros gestos

KiddySans
Os meus primeiros gestos

CuteLove

Tabela 4 Fontes encontradas para definio do interface


Lista de Palavras
A lista de palavras permite ao utilizador ver o conjunto de todas palavras para o tema
selecionado. Foi pensado para o utilizador ter uma viso geral de todas as palavras em texto, e
caso existam muitas mais fcil selecionar nesta lista uma palavra do que na seco onde se
misturam imagens com palavras. Tambm foi adicionado uma caixa de texto para a pesquisa de
modo a filtrar a quantidade de palavras. A pesquisa funciona medida que o utilizador escreve os
resultados da pesquisa vo sendo apresentados. Isto implementa um interface interativo, eficiente
102

e fcil de usar. Na Figura 77 mostra-se algumas solues de design alternativas que obtive, e a
soluo escolhida:

Figura 77 Evoluo do prottipo de AF para a Lista de Palavras (evoluo em cima, verso


final em baixo)

Botes de Opes
Os botes de opes encontram-se no canto superior direito da aplicao e permitem efetuar
login/logout, ver definies da aplicao e voltar ao interface inicial.
As solues alternativas de design que encontrei foram (Figura 78):

103

Figura 78 Evoluo do prottipo de AF para Botes de Opes (evoluo em cima, verso


final em baixo)
Compositor de Frases
O compositor de frases permite ao utilizador combinar gestos de modo a formar frases em
LGP. Depois de formar uma frase segundo as regras sintticas da LGP, pode visualizar a traduo
em LP da frase que comps.
Este elemento visual existe na margem inferior da interface principal. Por conseguinte, vai
roubar ateno a outros elementos dessa interface. Deste modo, desenhou-se o compositor de
frases de forma a que o contedo deste componente apenas seja visvel quando o utilizador assim
o entende. O contedo apresenta-se invisvel ao utilizador quando entra na pgina e s se abre
quando este clica em cima do separador, mantendo assim o interface principal simples e no
confuso.
Inicialmente no desenho do prottipo de BF, o compositor de frases tinha comboboxes para ir
adicionando palavras. No entanto, optei por definir que a construo de frases deve ser feita
atravs do mtodo de drag and drop, isto , o utilizador vai arrastando sequencialmente uma
palavra ou imagem para cima de uma caixa dentro do compositor. Desenhou-se a interao desta
maneira para implementar um interface simples, interativo e divertido (Figura 79).

Figura 79 Compositor de Frases (prottipo de AF)

5.6

Implementao
Em seguida, sero descritas as funcionalidades implementadas tanto do front-end como para o
backoffice do ponto de vista tcnico. Comeo por fazer um apanhado das bibliotecas / APIs que
foram utilizadas para facilitar o desenvolvimento ou necessrias para implementar determinada
funcionalidade. Em seguida, descrevem-se as funcionalidades, acompanhadas de algumas
screenshots dos elementos ou controlos mais importantes. Identificam-se tambm os problemas
encontrados mais relevantes.
104

5.6.1 Bibliotecas / APIs


Twitter Bootstrap coleo de ferramentas para criar websites. Contm botes,
painis, cones, etc., assim como componentes em javascript
jQuery - uma biblioteca em javascript cross-browser que tem como funo facilitar
e aumentar a velocidade de client-side scripting. tambm usada por outras APIs
descritas nesta seco
ASP.NET AJAX - extenso ao ASP.NET utilizada para fazer a comunicao entre
cliente-servidor sem PostBacks
AJAX Control Toolkit conjunto de controlos que implementam funcionalidades
AJAX.

5.6.2 Sistema de Autenticao


A aplicao front-end foi desenhada para ser aberta ao pblico. No necessrio registo
nem autenticao para us-la. No entanto, foi contemplado um sistema de perfis na estrutura
implementada. O sistema permite autenticar utilizadores.

Decises tcnicas tomadas


Por um lado, esta funcionalidade tem um papel estratgico, porque constituiu uma base para a
implementao de novos requisitos que assentam num perfil de utilizador. Desde requisitos como:
criao de base de dados de utilizadores; filtragem de funcionalidades conforme o perfil; entre
outros. Portanto, pensei que seria til criar uma estrutura que permita que o sistema mais tarde
evolua noutras direes.
Por outro lado, foi implementado sobre esta funcionalidade a filtragem de contedos como
temas e palavras, conforme as permisses do utilizador. Por exemplo: um determinado utilizador
pode ter temas que outro utilizador no tem.

Interface de Autenticao
Foi implementado o sistema de autenticao nas duas aplicaes: front-end e backoffice
(Figura 80).

105

Figura 80 Autenticao (front-end esq. e backoffice direita)


O front-end permite autenticar tanto utilizadores com perfil administrador como o resto,
enquanto o backoffice apenas autentica utilizadores com perfil de administrador. A validao da
autenticao feita pela correspondncia entre o endereo de email e password do utilizador, com
os dados existentes na base de dados.

Gesto da sesso
Em relao gesto da sesso, esta realizada por mtodos distintos para o front-end e
backoffice.
O front-end utiliza um cookie, criado no lado do Servidor (Listagem 1) aps validar a
autenticao, e envia na resposta ao cliente o cookie preenchido comos dados relativos ao
username, userid e perfil. A classe responsvel pela gesto da sesso a classe UserCookie.

HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName);


cookie.Expires = DateTime.Now.AddHours(8);
cookie.Values["username"] = name;
cookie.Values["userid"] = id;
cookie.Values["role"] = role;
Response.Cookies.Add(cookie);

Listagem 1 - Criao de sesso atravs de cookie explcito (front-end)

No caso do Backoffice, a criao de sesso usa outro mtodo. utilizado o sistema de


FormsAuthentication do ASP.NET. Aps a validao das credenciais por parte do servidor
criado tambm um cookie, contudo, isso feito de forma transparente para o programador. Como
mostra a Listagem 2, alm de criar a sesso ainda redireciona para o interface seguinte:
FormsAuthentication.RedirectFromLoginPage(name, true);

Listagem 2 Criao de sesso e redirecionamento por FormsAuthentication

106

Decises tcnicas tomadas


A gesto da sesso apesar de ser distinta nos dois casos, no teve nenhum motivo em especial
para ser diferente. Aconteceu porque o segundo mtodo foi aprendido mais tarde aps o
desenvolvimento do primeiro, e como parecia mais prtico optei por essa forma.

5.6.3 Front-end
A API Twitter Bootstrap revelou-se muito interessante: uma API simples cujos controlos
tm um look and feel bastante atrativo, e que foi adotada desde o incio da implementao para
criar interfaces sofisticadas. Esta biblioteca cross-browser, e apesar de no ser ainda um
requisito desenvolver para mobile, os seus controlos adaptam-se visualmente s medidas de
diferentes dispositivos como PC, telemvel, etc.
Outra API usada foi a ASP.NET AJAX de modo a criar interfaces interativas. Quase 100% dos
controlos utilizam AJAX. Os mtodos usados para comunicar entre cliente-servidor via AJAX
foram enumerados na Listagem 3:
string UpdateNavTabs(string id)
string UpdateLeftBar(string text, string themeId, string videoType)
string UpdateContentBar(string text, string themeId, string videoType)

SentenceQueryResult isValidWord(string[] words)


string GetRandomSentences(int rows)

GestureVideo[] GetRandomGestures(string differentFrom, string differentFromVideo, string themeId, string


videoType, string rows)

Listagem 3 Lista de PageMethods ou mtodos AJAX utilizados no front-end

Pode ser consultada uma descrio mais detalhada acerca de cada mtodo no Anexo 7.
As chamadas camada de dados usaram as funes do ASP.NET ADO.NET.

Modo Dicionrio
O modo dicionrio constitui o interface com mais interatividade e funcionalidades da
aplicao. Tem funcionalidade de pesquisa, drag and drop, tabs para mudar de tema,
funcionalidade de ver vdeo para palavra ou frase, e compositor de frases.
Comecei por criar a estrutura de espaos ou zonas atravs de HTML/CSS. O interface foi
separado por 3 grandes divs: logo, contentBar e leftBar. logo onde fica o logotipo e os botes de

107

opes. leftBar o espao para a lista de palavras e pesquisa, enquanto contentBar foi o espao
onde se situa a maioria da interao, designadamente ver vdeo e compor frases (ver Figura 81).

logo logo e botes


de opes

leftBar pesquisa e lista

contentBar listagem de

de palavras

gestos

Figura 81 divs do layout: logo, contentBar e leftBar


Botes de opes

Figura 82 Botes de opes: voltar ao interface inicial, ver definies, e fazer login/logout
A aplicao tem uma configurao (Figura 82) que permite alternar entre a visualizao de
vdeos com humanos, ou ento visualizao de animaes com avatar. Quando usada a
configurao de gestos com avatar, caso no haja animao com avatar disponvel para uma
determinada palavra, fornecido o vdeo com humanos, caso exista no sistema.
Lista de Palavras
A lista de palavras permite uma pesquisa por gestos (Figura 83). Foi feito de modo que basta
o utilizador escrever, a pesquisa feita automaticamente em background e os resultados so
apresentados ao utilizador sem necessidade de carregar enter.
Para isso associou-se o evento KeyUp da caixa de texto da pesquisa ao mtodo
SendClick(event) presente na Listagem 4 que por sua vez chama mtodos AJAX:
function SearchClick(event) {

var themeId = activeTabId


var text = document.getElementById('SearchText').value

PageMethods.UpdateLeftBar(text, themeId, "animation", OnUpdateLeftBarSuccess);


PageMethods.UpdateContentBar(text, themeId, "animation", OnUpdateContentBarSuccess);

108

Listagem 4 Cdigo para fazer uma pesquisa (front-end)

Figura 83 - Lista de palavras


Ver Vdeo
A visualizao do vdeo por motivos j justificados na seco dos Prottipos de baixa
fidelidade, usa um painel que aparece no canto inferior direito. Esse painel usa o componente
AjaxSidePanel12. Basicamente uma div criada dinamicamente em javascript sempre que se clica
numa palavra.
O controlo necessrio para mostrar o vdeo foi o flowplayer13. Esta escolha reside no facto de
ser um controlo esteticamente simples, muito configurvel e com disponibilizao de uma API
robusta e bem documentada para interagir com o componente. Para fazer o streaming de vdeo o
componente usa HTML 5 e caso o browser do cliente no suporte, usa Flash.
Um dos requisitos da aplicao era ver o vdeo em repetio e conseguir controlar a
velocidade do vdeo. Ento implementou-se um boto para a funcionalidade Loop (Listagem 5).
/* Makes the Video player loop the animation when user clicks the loop button */
var loop = true
function ToggleLoop() {

if (loop) {
document.getElementById("videoFlow").setAttribute("loop", "")
flowplayer().play()
}
else
document.getElementById("videoFlow").removeAttribute("loop")

12

AjaxSidePanel controlo disponvel em http://www.dynamicdrive.com/ acedido a 20 de Junho de 2013

13

flowplayer controlo disponvel em http://flowplayer.org/ acedido a 20 de Junho de 2013

109

loop = !loop;
}

Listagem 5 - Cdigo para alternar entre vdeo com loop activou ou inativo

Tambm se implementou com recurso a um slider do AJAX Control Toolkit, um controlo para
gerir a velocidade do vdeo, como se verifica na Figura 84. Considerei usar um slider da biblioteca
jQueryUI, mas achei esteticamente melhor o do AJAX Control Toolkit, e alm disso j estava a
usar esta biblioteca para outras funcionalidades.

Figura 84 Ver Vdeo


Compositor de frases
O compositor de frases o espao onde o utilizador pode combinar gestos e compor frases
com a sintaxe da LGP. Como j foi justificado na seco Compositor de Frases do Desenho do
Sistema, o compositor no est sempre visvel, ento foi necessrio usar um painel que colapsa o
seu contedo dinamicamente. Quando o utilizador clica num determinado boto o painel do
compositor de frases abre-se e vemos o seu contedo, voltando-se a carregar o painel fecha-se.
Recorreu-se ao uso do controlo Dropdownpanel14 para implementar esta funcionalidade.

14

Dropdownpanel controlo disponvel em http://www.dynamicdrive.com/ acedido a 29 de Junho de 2013

110

Caso o utilizador no saiba a ordem frsica da composio de frases em LGP, pode visualizar
sugestes de frases que apresentam uma comparao entre frases em LGP e frases em LP. Para
isso o utilizador basta carregar no hyperlink chamado sugestes aqui.
Sugestes de frases

Esta funcionalidade funciona da seguinte forma: quando o utilizador carrega a pgina,


pedido ao servidor um nmero de sugestes aleatrias que so guardadas no browser. Quando o
utilizador pretender ver as sugestes ao carregar no hyperlink de sugestes, ento so apresentadas
as sugestes previamente carregadas.
Aps fechar o painel das sugestes so pedidas novas sugestes ao servidor.
Drag-and-drop

Para facilitar a implementao a funcionalidade de drag-and-drop existe a biblioteca


jQueryUI, o suporte nativo do HTML5 e do ASP.NET AJAX. No entanto, foi escolhido o suporte
do ASP.NET AJAX pois aps a anlise a um cdigo fonte exemplo, a sua implementao parecia
simples e prtica.
Implementao do Drag-and-drop

preciso definir como DragSource e DropTarget os elementos que queremos trabalhar como
elementos arrastveis e elementos que possuam capacidade de serem alvo de Drops. O cdigo
responsvel por isso est apresentado na Listagem 6.
<script type="text/javascript">

// Make the "DropTarget" DIV a drop target.


var target = new Custom.UI.DropTargetBehavior
($get('DropTarget1'));
target.initialize();

// Make the "DragSource" DIVs drag sources.


var source = new Custom.UI.DragSourceBehavior
($get('wordContainer<%=WordName %>'), '<%=WordName %>', '<%=ImageName %>');
source.initialize();
</script>

Listagem 6 - Cdigo de definio de DragSources e DropTargets

111

Quando um elemento arrastado e entra numa zona de Drop, chamado uma funo AJAX
atravs de PageMethods para saber se aquele elemento pode ser deixado cair ali ou no. Se o
elemento dropable, e o utilizador deixa cair o objeto, ento definimos a imagem que corresponde
palavra para imagem de background do quadrado onde estamos a fazer drop.
Para saber se o elemento dropable ou no, lido a resposta que o servidor enviou.
Resposta do Servidor

A resposta do servidor um objeto SentenceQueryResult. Esse objeto inclui toda a


informao relevante frase, como a frase em LGP, a frase em LP, o tipo de frase, a ordem
sinttica e o vdeo da frase. A Listagem 7 mostra os casos possveis de resposta do servidor.
public SentenceQueryResult Query()
{
var adapter = new DataSets.Sentence_DataSetTableAdapters.SentenceTableAdapter();
var dt = adapter.GetSentences(wordsSeparatedBySemiColon);

if (dt.Rows.Count > 0)
{
foreach (DataSets.Sentence_DataSet.SentenceRow row in dt.Rows)
{
var words = row["LGP"].ToString().Split(';');

if ((words.Length - 1) == wordsNumber) // means that the sentence matched the words submited by the user
return new SentenceQueryResult(row["LGP"].ToString(), row["LP"].ToString(), row["TIPO"].ToString(),
row["ORDEM"].ToString(), row["VIDEONAME"].ToString());
}
return new SentenceQueryResult(); //means there is one or more rows with the words user submited or combination
of words
}
return null;

//means there is no row with that words or combination of words

Listagem 7 Cdigo para processar a ao do utilizador quando tenta arrastar uma palavra para o espao
respetivo do Compositor de Frases

Caso no exista frases no sistema que tenham a combinao das palavras que o utilizador est
a tentar construir, o objeto retornado a null. Caso exista, um incio de frase com as palavras que
o utilizador est a tentar combinar, retornado s a instncia da classe com os seus atributos a
null. Caso a frase combinada esteja completa o servidor retorna uma instncia da classe com todos
os seus atributos preenchidos corretamente.
112

Depois de uma resposta positiva do servidor, ou seja, aps o utilizador ter construdo uma
frase correta e completa, so habilitados o boto para traduzir a frase em LGP e apresentado a
verso em Portugus da frase como se pode ver na Figura 85:

Figura 85 Compositor de Frases: arrastando uma palavra

Modo Adivinhar / Exerccio


O modo adivinhar a interface que serve para testar os conhecimentos. No entanto, tem
muitas funcionalidades em comum da interface do modo dicionrio, como pesquisa, escolha de
tema e visualizao de vdeo. Muito cdigo comum s duas interfaces.
Para esta vertente da aplicao ser uma interface mais interativa e divertida adicionou-se um
elemento visual, um boneco de um menino.
Menino tutor/assistente
Este elemento serve apenas para passar informao para o utilizador. O boneco fala atravs
de um balo com a mensagem dentro do prprio balo. Esta funcionalidade foi implementada
recorrendo ao BalloonPopupExtender da biblioteca AJAX Control Toolkit.
Sempre que pretendo enviar uma mensagem ao utilizador, uso o cdigo da Listagem 8:
$get("BalloonPopupText").innerHTML = "Qual dos gestos corresponde palavra '" + word + "' ?"
showBalloonPopup(event)

Listagem 8 Cdigo para fazer o menino assistente falar (em Adivinhar gesto)

A primeira linha do cdigo para definir o contedo da div que contm a mensagem e a
segunda para mostrar o popup.
Ver Vdeo

113

Ao contrrio do painel utilizado para mostrar e esconder o vdeo no Ver Vdeo, no modo
Adivinhar no se usou esse painel. Ento recorri a um componente chamado Animated Collapsible
DIV15 que serviu para esconder o espao onde se vai mostrar os gestos. um componente similar
ao usado no Compositor de Frases. O painel encontra-se colapsado antes de o utilizador escolher a
palavra que quer adivinhar, aps a escolha da palavra, o painel abre-se e apresentado o espao
onde o utilizador visualiza o vdeo e escolhe qual dos gestos apresentados corresponde palavra.
Usou-se o controlo de vdeo flowplayer j referido anteriormente, mas desta vez temos uma
playlist com vrios vdeos.
Playlist
A playlist de vdeos construda dinamicamente. A escolha da palavra implica que um dos
vdeos a ser visualizados seja o que corresponde ao gesto. O resto dos vdeos so vdeos
escolhidos aleatoriamente, mas que faam parte do mesmo tema que a palavra.

5.6.4 Backoffice
O Backoffice foi implementado usando ASP.NET Dynamic Data. Esta framework permite
facilmente criar aplicaes Web que faam operaes CRUD (create, read, update, delete) nas
tabelas da base de dados. A framework automaticamente transforma o contedo de uma tabela, em
HTML, e gera automaticamente o interface para gerir os dados de cada tabela.
Esta ferramenta facilitou muito o processo de desenvolvimento do Gestor de Contedos. Aps
a utilizao da ferramenta, bastou fazer o design grfico e implementar o sistema de autenticao.

5.6.5 Problemas encontrados


Ver Vdeo Slider de velocidade do vdeo e flowplayer
Sempre que se arrastava o slider para mudar a velocidade do vdeo aconteciam duas situaes.
A primeira era que o evento que indicava que o slider tinha sido arrastado era duplicado, ou seja,
mexia-se o slider uma vez, mas o evento era despoletado duas vezes. A segunda situao era que
ao mexer um centmetro o slider, eram despoletados dezenas de eventos e a atribuio direta da
velocidade do vdeo no flowplayer gerava um comportamento muito estranho no vdeo.
A soluo encontrada foi criar um algoritmo (Listagem 9) que basicamente armazenava numa
queue os eventos que o slider despoletava, e s passado um determinado tempo aps o movimento
inicial do slider, que se definia no flowplayer a velocidade de vdeo com o ltimo valor na queue
de eventos.

15

Animated Collapsible DIV controlo em http://www.dynamicdrive.com/ acedido a 20 de Junho de 2013

114

/* Catch 'change' event of the Slider (speed slider) - and set the speed of the animation. however doesn't set
imediately, it waits some time first using a timer */
$addHandler($get("txtSpeed"), "change", SliderChanged);

var speedTimes = new Array();


var timerOn = false
/* Update the speed of the animation defined by the user on the slider */
function SliderChanged(x) {
var slideValue = $get("SpeedBoundControl").innerHTML

if (timerOn == false) {
timerOn = true
//start timer
window.setTimeout(ChangeVideoSpeed, 200)
}
speedTimes.push(slideValue) //add to array
}

function ChangeVideoSpeed() {
var last = speedTimes.pop();
speedTimes = [];

flowplayer().speed(last);
timerOn = false
}

Listagem 9 Algoritmo para atribuir o valor do slider velocidade de vdeo do flowplayer, evitando o
comportamento estranho da atribuio direta entre o valor do slider e vdeo

Compositor de frases incompatibilidade entre Drag and Drop e Ver Vdeo


O processo Drag and Drop implica detetar o click do utilizador para iniciar o processo. No
entanto, o Ver Vdeo implica tambm que haja um click em cima do mesmo elemento que
podemos fazer Drag. Portanto, isto gerou um problema que apenas uma das funcionalidades podia
funcionar ao mesmo tempo.
A soluo encontrada foi alterar o evento usado pelo Drag and Drop de mouseDown para
mouseMove. Assim sempre que se mexia o mouse por cima da palavra, era iniciado o processo de
Drag. Para evitar isso, detetamos se nessa situao o boto esquerdo do rato estaria a ser
pressionado. Se estivesse, ento entrava em modo Drag and Drop, se no, no entrava.

115

5.7

Resultados
Algumas screenshots do sistema tanto para o front-end como para o backoffice encontram-se
no Anexo 8.

5.8

Sumrio
O captulo descreve exaustivamente todo o processo de desenvolvimento de uma prova de
conceito, designada por Os meus primeiros gestos, que consiste numa aplicao Web com o
objetivo de introduzir conceitos bsicos de LGP, desenhada principalmente para crianas.

116

Captulo 6
Avaliao de Os meus primeiros gestos
Este captulo tem como objetivo apresentar os resultados da avaliao com utilizadores
realizada aplicao Os meus primeiros gestos em particular ao seu front-end.

6.1

Objetivo
A avaliao da aplicao teve trs objetivos fundamentais:

Teste usabilidade do sistema


Teste qualidade de animao (avatar e execuo dos gestos)
Teste utilidade de determinadas funcionalidades

O teste com utilizadores dividiu-se em trs partes.


A primeira parte pretende avaliar a componente de dicionrio, atravs do teste traduo de
palavras, a experincia de visualizao dos gestos e composio de frases.
A segunda parte pretende testar o modo adivinhar / exerccio, a componente mais didtica da
aplicao.
A terceira parte consistiu na recolha da opinio geral sobre a aplicao e a sua utilidade
prtica, e ainda no levantamento de novas funcionalidades a implementar.

6.2

Participantes
Participaram 3 pessoas, duas surdas e uma ouvinte proficiente em LGP. O conjunto era
composto por uma mulher com 25 anos, um homem com 34 e outro com 37.

6.3

Mtricas
As mtricas para avaliao basearam-se em questionrios que medem a usabilidade da
aplicao atravs da execuo de tarefas delegadas a cada participante. As tarefas foram

117

desenhadas de modo a que as funcionalidades da aplicao fossem todas exploradas. Tambm se


observou e registou-se notas sobre o comportamento dos utilizadores durante o uso da aplicao.
Os questionrios foram compostos por vrias perguntas na maioria usou-se a escala Likert de
5 nveis, noutras a escala Likert de 3 nveis, e as restantes perguntas eram de respostas abertas.
Os questionrios distribudos esto representados nas tabelas 5, 6, 7:
Pergunta
Facilidade de execuo de tarefas
Utilidade do compositor de frases para
aprender LGP
Facilidade em combinar gestos
Vale a pena existir vdeo HD e normal?
Tamanho da janela de vdeo
adequado?

Escala
1- Pouco Fcil
5- Muito Fcil
1- Pouco til
5- Muito til
1- Pouco Fcil
5- Muito Fcil
Sim / No / Talvez
Pequeno/Grande/Bom

Tabela 5 Questionrio do teste ao Dicionrio

Pergunta
Facilidade na execuo de tarefas
Facilidade no uso da pesquisa
Modo Adivinhar interessante?
Modo Adivinhar divertido?

Escala
1- Pouco Fcil
5- Muito Fcil
1- Pouco Fcil
51515-

Muito Fcil
Pouco Interessante
Muito Interessante
Pouco Divertido
Muito Divertido

Necessrio ver vdeo em cmara lenta


quando se tenta adivinhar?

Sim / No

Opo Full screen importante?

Sim / Secundrio / No
vale a pena

Tabela 6 Questionrio do teste ao modo Adivinhar

118

Pergunta
Utilidade da aplicao
Experincia de utilizao / facilidade
O avatar interessante?
Visual atrativo?
Qualidade dos gestos
Se fosse adicionado expresso facial
como achas que ficaria a qualidade dos
gestos?

Escala
1515151515-

Pouco til
Muito til
Muito M
Muito Boa
Nada
Muito
Nada
Muito
Muito Mau
Muito Bom

1- Muito Mau
5- Muito Bom

Tabela 7 Questionrio Geral

6.4

Mtodo
Na primeira parte o utilizador seguiu o primeiro guio, cujas tarefas testavam as
funcionalidades do dicionrio, e que pode ser consultado no Anexo 9. Enquanto na segunda parte,
o segundo guio (Anexo 11) tinha tarefas de forma a testar a vertente de adivinhar palavras
da aplicao. Na terceira parte no houve guio, apenas um questionrio. O participante realizava
tarefa a tarefa medida que ia lendo o guio. No fim da leitura de cada guio, o participante
respondia a um questionrio. Finalmente, aps ter testado tudo, respondeu a um questionrio com
questes gerais sobre a aplicao.
Conforme os participantes iam realizando os testes, fui fazendo perguntas quando me
apercebia de dificuldades para perceber o que poderia ser melhorado.

Questionrio
Os questionrios usados na avaliao podem ser consultados no Anexo 10 para o primeiro
questionrio, no Anexo 12 para o segundo e no Anexo 13 para o terceiro.

6.5

Resultados
Nesta seco apresentam-se os resultados dos questionrios, as observaes feitas ao longo do
teste, assim como tambm a anlise dos anteriores.

119

6.5.1 Primeiro questionrio teste ao Dicionrio

Teste ao Dicionrio
Facilidade de combinao de
gestos

4,3

Utilidade do compostior de frases

4,7

Facilidade de execuo de tarefas

4,3
1

Figura 86 Grfico da mdia de respostas ao teste do Dicionrio

O teste s funcionalidades gerais do modo Dicionrio revela bons resultados uma vez que
todos os valores do grfico (Figura 86) esto acima de 4,3.
Facilidade de execuo de tarefas este indicador representa que no modo geral a vertente de
Dicionrio da aplicao tem boa usabilidade (4,3), porm, este valor ainda pode, e deve ser
melhorado. Uma abordagem possvel a melhoria da usabilidade do Compositor de Frases, que
por conseguinte, aumenta a usabilidade do dicionrio em geral. Alm disso vai de encontro com as
observaes realizadas a um dos participantes.
Um dos surdos testados no conseguiu compreender como se iniciava o processo de combinar
gestos, isto , no compreendeu imediatamente que tinha de se arrastar as palavras. Depois de
perceber, achou muito fcil o processo de arrastar, porm, esta situao levantou a necessidade de
que preciso melhorar os indicadores informativos (textuais e principalmente visuais) de como
compor frases. O prprio surdo apontou uma das causas para esta situao, isso est descrito em
nota de rodap e ser usado como guideline a futuros desenvolvimentos16.
Foi quase unnime por parte dos participantes que o Compositor de Frases muito til no
contexto da aprendizagem de LGP. Isto um indicador que deve se apostar nesta ferramenta, e
que a sua evoluo deve ser uma prioridade.
Os indicadores apresentados revelam que esta componente da aplicao (dicionrio) foi bem
desenhada e implementada. Deduzo que o uso extensivo da tecnologia AJAX para atualizar o

16

O surdo ao incio no compreendeu que tinha de arrastar a palavra para compor a frase, apesar da informao
textual existente de propsito para aujudar iniciantes. Depois de discutir sobre isto com ele, o surdo disse que os
surdos no ligam a texto, e focam-se principalmente nas muito mais nas imagens do que um ouvinte.

120

contedo do interface, juntamente com o javascript desenvolvido para a interao, contribuiu para
este resultado.
Deve existir 2 tipos de qualidade vdeo?

Tamanho da janela de vdeo adequado?

No
33%
Sim
67%

Sim
100%

Figura 87 Grfico em crculo de respostas do primeiro questionrio

Estas perguntas (Figura 87) foram feitas para validar se a funcionalidade de ver vdeo em altadefinio tinha utilidade ou no, e se a dimenso da janela de vdeo, uma vez que os surdos so
muitos visuais, tambm estaria adequada. Pelos resultados nos grficos foram decises bem
tomadas.

6.5.2 Segundo questionrio teste ao modo Adivinhar

Teste ao modo Adivinhar


Adivinhar gesto divertido?

4,0

Adivinhar gesto interessante?

4,0

Facilidade em pesquisar por gesto

4,0

Facilidade de execuo de tarefas

3,0
1

Figura 88 Grfico da mdia das respostas ao questionrio do modo Adivinhar

Ao contrrio da componente Dicionrio , a componente Adivinhar (Figura 88) gesto tem


apenas um nvel satisfatrio (3 pontos) na Facilidade de execuo de tarefas. Esta situao leva
que o desenvolvimento prioritrio futuro passe a ser a resoluo dos problemas identificados neste
teste. No entanto, a avaliao de outros fatores que contribuem para a usabilidade do sistema como
ser interessante/divertido tiveram um bom feedback. Pela observao e discusso com os
121

participantes, estes referiram que necessrio melhorar o design de alguns botes porque
confundem o utilizador, nomeadamente, os botes que marca a respostam correta ou errada. Ainda
sugeriram acrescentar um pouco mais de interatividade como adicionar um elemento surpresa
sendo o prprio sistema a escolher o gesto para adivinhar.
No Adivinhar gesto ao veres vdeo, achas

A opo Fullscreen ao ver um vdeo importante ou

necessrio adicionar alguma coisa?

secundrio?

No

Importante

Opo
Slowmotion

Secundrio

Opo Loop

No vale a
pena

25%
50%
25%

Figura 89 Grficos em crculo de respostas do segundo questionrio

Pelos dados dos grficos da Figura 89, revela-se a necessidade de melhorar com mais
funcionalidades o controlo de vdeo no Adivinhar gesto. Em termos de fullscreen, a pergunta
surgiu para compreender as necessidades do pblico-alvo e saber era necessrio implementar esta
funcionalidade, s existente no Adivinhar gesto.

6.5.3 Terceiro questionrio Perguntas genricas

Teste ao Adivinhar Gesto


Qualidade dos gestos se tivessem
expresso facial?

4,3

Qualidade dos gestos

3,7

Visual atrativo?

4,3

Avatar interessante?

4,7

Experincia/facilidade de utilizao?

3,8

Utilidade da aplicao

4,7
1

Figura 90 Grfico da mdia dos resultados para o Questionrio Geral

122

Na Figura 90, a resposta pergunta Qualidade dos gestos se tivessem expresso facial?
permite saber at que ponto importante a expresso facial, relativamente qualidade dos gestos
j implementados que no tem essa caracterstica. O conjunto das respostas deste questionrio
permite-me resumir a aplicao desta forma:
Pontos fortes

Potencial e utilidade da aplicao para introduzir conceitos bsicos de LGP


Avatar chama a ateno e prende o interesse
Capacidade de complementar o vdeo por ser capaz de utilizar gestos atmicos
em frases

Pontos fracos

Qualidade dos gestos e facilidade de utilizao

Relativamente aos pontos fracos, os gestos devem ser validados por um surdo experiente
antes da divulgao ao pblico. A facilidade de utilizao da aplicao apenas boa, derivado dos
problemas identificados no modo Adivinhar. Depois de corrigidos esses problemas, penso que a
experincia de utilizao ficar muito boa.
A pergunta sobre Qualidade dos gestos se tivessem expresso facial? tem como objetivo
estimar qual a diferena que faz para um surdo ver o avatar com e sem expresso facial. Desta
forma possvel traar se um objetivo prioritrio, a adio de expresso facial. Depois de falar
com um participante, ele disse que as expresses faciais aplicadas s palavras so indiferentes,
porm, nas frases a expresso facial j faz toda a diferena tanto no sentido da frase, como no
nvel de satisfao retirado pela animao.
O aspeto do interface da aplicao foi considerado bom, quase muito bom, logo, no uma
prioridade a curto-prazo melhorar essa vertente.

6.6

Sumrio
Este captulo apresentou os resultados da avaliao por utilizadores. Os resultados
evidenciaram os pontos fracos e fortes da aplicao Os meus primeiros gestos.

123

Captulo 7
Concluso
Os objetivos traados para o trabalho descrito nesta tese foram:
1. Conceber um avatar animado capaz de produzir gestos de Lngua Gestual Portuguesa,
cujo processo de animao assistido pela captura de movimentos
2. Combinar gestos atmicos de modo a produzir frases simples em LGP;
3. Desenvolver uma aplicao que ilustre as vantagens do uso de avatares como
intrpretes virtuais de LGP.
O primeiro objetivo desta tese consistia na gerao de um avatar e a manipulao do seu
esqueleto com o intuito de produzir animaes de gestos de Lngua Gestual Portuguesa. No
domnio da animao, esta pode ser feita, pelo menos de duas formas: manipulao manual
recorrendo a um software de animao; ou recorrendo a sensores de movimentos para captura de
dados de movimento e posterior integrao destes no modelo virtual. A ltima forma resulta em
animaes com movimentos mais credveis e realistas que a anterior.
O objetivo ideal seria recorrer totalmente tcnica de captura de movimentos para reproduzir
um gesto nas trs componentes essenciais da interpretao de uma lngua gestual, nomeadamente,
corpo, mos e face. O sensor de movimentos Microsoft Kinect, uma tecnologia recente e em
evoluo, permitiu implementar o processo de captura de movimentos de um humano, e a
converso desse movimento para um avatar. Todavia, este sensor no tem suporte nativo captura
da localizao dos dedos, o que implicou a investigao de um meio para lidar com esse desafio.
A conceo de um algoritmo capaz de detetar as articulaes dos dedos em tempo real,
suficientemente robusto para ter em conta as ocluses existentes nas vrias configuraes
possveis da mo, no era um desafio trivial, sendo objeto de estudo de outras teses (Oikonomidis,
Kyriazis e Argyros 2011). Este processo no sendo um objetivo essencial, levou a investigao
noutra direo. Procurou-se um mtodo semiautomtico que envolvesse a participao do
utilizador para detetar os dedos, marcando numa foto a posio das articulaes de cada dedo.

124

Posteriormente marcao dos dedos na foto, as coordenadas de cada articulao seriam


convertidas do espao 2D para o espao 3D.
Esta investigao resultou num software capaz de converter, com o auxlio do utilizador, a
pose esttica 3D do corpo e mos para um esqueleto em MotionBuilder. Contudo, a investigao
no avanou da captura de gestos de letras para gestos de palavras devido, sobretudo, ao facto
deste mtodo no ser prtico para marcar a posio dos dedos das duas mos em vrios instantes
do tempo. Assim sendo, o percurso desta tese tomou outra direo.
A abordagem adotada consistiu em animar o avatar por um mtodo hbrido, utilizando dois
tipos de manipulao do avatar. Este mtodo consiste em, por um lado capturar o movimento do
tronco com o Kinect, e por outro lado, animar de forma manual por keyframe o movimento da mo
por cima da animao capturada com o Kinect. Foi identificado durante este processo um pipeline
para a criao dos gestos no avatar: captura do movimento do corpo, ligao do avatar aos dados
do Kinect, tratamento de dados, e adio da animao manual do movimento da mo e dedos.
O resultado desta primeira fase consistiu numa animao fluda de alguns gestos para serem
avaliados por indivduos proficientes em Lngua Gestual Portuguesa. Por conseguinte, foi
concebido e submetido a avaliao um primeiro prottipo composto por uma aplicao capaz de
exibir a traduo de qualquer letra para LGP, e a visualizao de um conjunto de frases em LGP
feitas a partir da combinao de gestos atmicos. Este prottipo concretizou o primeiro e o
segundo objetivo desta tese, a animao de um avatar e a composio de frases respetivamente.
A avaliao inicial revelou grandes potencialidades na tecnologia por parte dos surdos, tendo
estes sugerido a aplicao ao ensino de crianas, no entanto, apontaram algumas limitaes, por
exemplo, no avatar. Nesse sentido, procurei um avatar com caractersticas mais adequadas, entre
as quais, mais contraste entre mo e brao, roupas lisas e sem adereos. Da ter surgido o avatar
Nucha, que foi avaliado e considerado adequado interpretao de LGP. Posteriormente
desenvolveu-se uma aplicao de modo a expor as funcionalidades do uso de um avatar 3D
aplicado Lngua Gestual, animado com movimentos humanos.
Seguindo a sugesto dada pela comunidade surda, optei por desenvolver uma aplicao Web
que introduz conceitos bsicos em LGP de uma forma ldica, dirigida a crianas. Aps investigar
o mtodo de ensino das crianas surdas, conclu que o mtodo predominante o ensino bilingue
(Lngua Portuguesa e LGP). Verifiquei tambm que existe mais dificuldade na aprendizagem de
portugus escrito, por parte de crianas surdas do que por ouvintes, porque a sua lngua materna
diferente do Portugus (Baptista 2010). Portanto, perante esta dificuldade cheguei a um conceito
fundamental: a aprendizagem de crianas surdas e para surdos no geral, deve necessariamente
contemplar a associao entre a palavra, o gesto, e uma imagem representativa do conceito.
O resultado final foi a concretizao do terceiro e ltimo objetivo desta tese. A criao de uma
prova de conceito atravs da demonstrao de um dicionrio de gestos online, que introduz
125

conceitos bsicos de LGP, como palavras, frases simples, a sua construo frsica e uma
componente didtica para teste de conhecimentos. O pblico-alvo abrangente na medida em que
pode ajudar qualquer indivduo que queira obter conhecimentos bsicos de LGP, designadamente
crianas ou adultos. Porm, tambm pretende ajudar na associao de conceitos a palavras da
Lngua Portuguesa, destinado sobretudo a crianas surdas. A aplicao no pretende ensinar LGP,
nem substituir nenhum professor no seu ensino, mas complementar a aprendizagem atravs de
uma ferramenta divertida, e em simultneo constituir um dicionrio de gestos online.
A avaliao desta aplicao revelou resultados muito interessantes, e conclui que uma
aplicao com muitas potencialidades.
Como etapa final, investigou-se como capturar e integrar expresses faciais num avatar e
integrou-se em algumas palavras, designadamente nos pronomes interrogativos, as expresses de
surpresa.
Durante o desenvolvimento da tese, conclu que as grandes vantagens do uso de avatares em
detrimento do vdeo so:
O uso de um elemento original e cativante, um boneco animado como intrprete de
LGP
A vantagem da combinao (exponencial) de gestos atmicos de modo a formar frases
A grande desvantagem o tempo de produo de um gesto. Enquanto em vdeo se demora
apenas o tempo de execuo do prprio gesto, em animao, embora esteja dependente da
complexidade do gesto e da experincia do animador, verifiquei um tempo de produo de meia
hora para a animao de cada gesto.

7.1

Dificuldades encontradas
A maior dificuldade foi encontrar o caminho que levou soluo final do projeto. A natureza
da investigao sugeriu-me vrios caminhos medida que fui avanando neste trabalho. A minha
experincia anterior incidiu em projetos prticos com objetivos predefinidos e fixos. Por essa
razo foi difcil passar para uma metodologia de investigao, que assume a redefinio de
objetivos e metas conforme os resultados que vo sendo obtidos. Avatares em LGP um tema
vasto com uma grande diversidade de aplicaes, e a abrangncia deste domnio constituiu para
mim o maior desafio.
A animao 3D uma rea menos focada na Licenciatura e Mestrado em Engenharia
Informtica. Seria interessante ter usufrudo de mais disciplinas na rea de modelao e animao
3D.
O contacto com tecnologias recentes, como o Kinect e o Leap Motion, deu-me a oportunidade
de investigar reas pouco exploradas e em perceber at onde possvel chegar com este hardware
.
126

O mundo surdo muito diferente do mundo dos ouvintes. A perceo do mundo por parte dos
surdos implica maneiras diferentes de pensar, e por conseguinte, tm necessidades diferentes. O
que achamos certo para os surdos pode ser completamente diferente. Por outro lado, a
comunicao com surdos tem de ser acompanhada por intrpretes (salvo algumas excees), o que
gera barreiras na comunicao e cria obstculos na compreenso do pblico-alvo. A burocracia
envolvente ao contato com surdos pode ser complicada. Quando contactei com a APS, o processo
tornou-se demorado, foi necessrio delegar um intrprete e depois agendar conforme a
disponibilidade de todos. Observei que por vezes, foi um pouco difcil chegar comunidade, pois
realizei algumas tentativas de contato com surdos que no foram bem-sucedidas.

7.2

Opinio Crtica
Considero que ainda h muito trabalho para fazer no desenvolvimento da aplicao. Foi
desenvolvida uma prova de conceito que demonstra que o sistema tem utilidade, mas necessrio
carregar vrias palavras, vrios temas, para de facto se tornar num produto fora do laboratrio.
Foi demonstrado pelos resultados da avaliao que a funcionalidade de compor frases com gestos
muito interessante, portanto, esse deve ser um dos caminhos prioritrios. No entanto, a aplicao
pode evoluir muito mais, com adio de novas funcionalidades e jogos. Um dos pblicos-alvo de
Os meus primeiros gestos so as crianas, logo, a aplicao deve ser testada por elas.
O Microsoft Kinect um sensor focado para o tracking do corpo, e no para as mos ou
dedos, isto implica, a animao por um mtodo hbrido, sendo o ideal a utilizao de um mtodo
que capture alm do corpo, tambm a posio dos dedos, por exemplo, com luvas. Por vezes, o
tracking tem falhas e isto obriga que seja feito um trabalho intenso de tratamento de dados para
tornar a captura numa animao usvel num avatar. A tecnologia utilizada pode evoluir para
sistemas com melhor desempenho de tracking, e assim, permitir a captura da posio dos dedos e
tornar as animaes ainda mais credveis e com um tempo de produo inferior.
Algo a explorar melhor, ser a componente do rosto. Na LGP esta componente importante
particularmente nas frases, logo, para ter uma aplicao com mais qualidade na interpretao de
LGP, preciso estender esta animao a mais palavras e inclu-la em mais frases com expresses
bem destacadas.

7.3

Trabalho futuro
Resolver os problemas identificados na ltima avaliao por utilizadores.

Permitir a criao dinmica de frases sem que estas tenham de existir j predefinidas
no sistema.

127

Otimizar o processo de captura de gestos, por exemplo: estudar a opo iPi Soft que
usa dois Kinects e depois importar a animao para o MotionBuilder. Com duas
cmeras os dados podero no ter que ser sujeitos a tanto tratamento, logo, menos
tempo no pipeline da produo da animao e ao mesmo tempo animaes mais
fluidas.
Otimizar a aplicao com a criao de um sistema de cache, no browser ou no
servidor. De modo a prepara-la para grande quantidade de dados.
Carregar a aplicao com muitos dados. Adicionar vrios gestos, palavras, gestos, e
temas.
Garantir a operabilidade da aplicao em vrios browsers.
Testar o sistema com crianas surdas.
Estar atento a novas tecnologias, e aguardar a chegada da segunda verso do Kinect
esperada para 2014, mais poderosa que o primeiro.
Utilizar um avatar diferente dos que foi desenvolvido, e fazer a migrao da animao
para esse, de modo a dar a escolha ao utilizador do avatar que pretende ver.
Criar novos jogos, diferentes do Adivinhar gesto.
Reconhecer o gesto, tutorial. Gesto correto e gesto incorreto. Traduzir texto em LGP.
Filmes de animao com avatares mesmo surdos, combinando as frases.
Estudar a entoao nos gestos, e introduzir uma componente ao gesto para dar
personalidade a cada avatar em tempo real, alterando pequenos movimentos ou
adicionando pequenas animaes aleatrias. Um exemplo seria aumentar ou diminuir
a velocidades dos gestos para dar a entender que o avatar revela personalidade,
cansao ou outros fatores interessantes
Fazem falta no mundo surdo aplicaes Web dirigidas a eles. No s dicionrios, ou
aplicaes de suporte ao ensino, mas aplicaes que faam a ponte entre servios e
surdos. Por exemplo, aplicaes que traduzam texto para LGP, ou aplicaes que
traduzam voz para LGP: A tecnologia de animao do avatar desenvolvida at aqui,
pode partir como base para esses projetos.
128

Desenvolver aplicao para Android ou iPad de Os meus primeiros gestos


Usar o Unity 3D para introduzir o avatar no browser dentro de um plugin em vez de
ser num vdeo. Isto permitia interagir mais com o browser como rodar a cmera,
fazer zoom in ou out, e outras funcionalidades.

129

Bibliografia
Associao

de

Surdos

da

Alta

Estremadura.

s.d.

http://associacaosurdosaltaestremadura.org/index.php?id=44&_lang=PT (acedido em
10 de Janeiro de 2013).
Autodesk. Maya. 2011. http://www.autodesk.com/products/autodesk-maya (acedido em 22 de
Setembro de 2012).
.

MotionBuilder

Software.

2011.

http://www.autodesk.com/products/motionbuilder/

(acedido em 22 de Outubro de 2013).


. Project Pinocchio. 2013. http://projectpinocchio.autodesk.com/ (acedido em 20 de Junho
de 2013).
Baltazar, Ana Bela. Dicionrio de Lngua Gestual Portuguesa. Porto: Porto Editora, 2010.
Baptista, Maria Madalena Belo da Silveira. Alunos Surdos: Aquisio da Lngua Gestual e
Ensino. 9 de Maro de 2010.
Blender Foundation. Blender. 2011. http://www.blender.org/ (acedido em 22 de Setembro de
2012).
Brekelmans, Jasper. Brekel Kinect. 2011. http://www.brekel.com/kinect-3d-scanner/ (acedido
em 5 de Novembro de 2012).
Camargo,

Alessandra.

Libras

na

Educao

Infantil.

de

Julho

de

2011.

http://librasnaeducacaoinfantil.blogspot.pt/2011/07/dicas-para-trabalhar-com-aulunosurdo.html (acedido em 2013).


da Silva, Renata Cristina. Apropriaes do termo avatar pela Cibercultura: do contexto
religioso aos jogos eletrnicos. Contempornea 8. 2010. 120-131.
Damer, Bruce, Jeremy Judson, e Jackie Dove. Avatars!; Exploring and Building Virtual
Worlds on the Internet. Peachpit Press, 1999.

130

DAZ 3D Inc. DAZ 3D. 2011. http://www.daz3d.com/ (acedido em Outubro de 30 de 2013).


Deusdado, Leonel Domingues. Ensino da Lngua Gestual Assistido por Personagens 3D
Virtuais.

Biblioteca

Digital

IPB.

2002.

https://bibliotecadigital.ipb.pt/bitstream/10198/1211/1/TeseMestrado_Leonel.pdf
(acedido em 5 de Maro de 2013).
Dinis, Jos Maria Cardoso Carneiro. Noo de captura de movimento e a sua utilizao no
meio artstico. 2012.
DoIT.

Software

Development

Methodology

of

New

Hampshire.

2005.

http://www.nh.gov/doit/internet/standards/documents/AppendixESoftwarDevelopmentMethodologyReference021805.pdf (acedido em 22 de Outubro


de 2013).
Easy Mocap. Easy Mocap. 2011. http://mocap.cguse.com/en/ (acedido em 5 de Novembro de
2012).
Edward, Klima, e Bellugi Ursula. The Signs of Language. Harvard University Press, 1979.
Farzad, Pezeshkpour, Marshall Ian, Elliott Ralph, e Bangham J. Andrew. Development of a
Legible Deaf-Signing Virtual Human. Multimedia Computing and Systems IEEE
International Conference. 1999. 333-338.
Hash, Inc. Hash Animation:Master. 2011. http://www.hash.com/ (acedido em 22 de Setembro
de 2012).
Higuchi,

Yu.

Vocaloid

Promotion

Video

Project.

2008.

http://www.geocities.jp/higuchuu4/index_e.htm (acedido em 5 de Novembro de 2012).


iPi Soft. iPi Soft. 2011. http://ipisoft.com/ (acedido em 5 de Novembro de 2012).
Kennaway, Richard. Synthetic animation of deaf signing gestures. Gesture and Sign
Language in Human-Computer Interaction. Springer Berlin Heidelberg, 2002. 146157.
Kitagawa, Midori, e Brian Windsor. MoCap for artists: workflow and techniques for motion
capture. Taylor & Francis US, 2008.
Lee, Seungyon, Valerie Henderson, e Helene Brashear. CopyCat : Learning American Sign
Language (ASL) through a Gesture-Based Computer Game. Student Design
Competition International Conference. 2005.
131

Leonor.

LGP,

Comunidade

Cultura

Surda.

29

de

Abril

de

2013.

http://lgpcomunidadeeculturasurda.blogspot.pt/2013/04/origem-da-lingua-gestualportuguesa.html (acedido em 26 de Outubro de 2013).


Makehuman TM. Makehuman. 2011. http://www.makehuman.org/ (acedido em 30 de
Outubro de 2013).
Martins, Mariana, Jos Pedro Ferreira, e Ana Mineiro. Os Dicionrios e os Avatares Gestuais.
Lisboa: Universidade Catlica Editora, 2012.
Measurand Inc. Motion Capture Resources - History. 2011. http://www.motion-capturesystem.com/resources/history.html (acedido em 14 de Outubro de 2013).
Naugle, Lisa Marie. Motion Capture: Re-collecting the Dance. Proceedings of the TwentyFirst Biennial Conference. Barcelona, Spain, 1999. 208-213.
NI MATE. NI mate and Blender. 2011. www.ni-mate.com/use/blender/ (acedido em 5 de
Novembro de 2012).
Oikonomidis, Iason, Nikolaos Kyriazis, e Antonis A. Argyros. Efficient model-based 3D
tracking of hand articulations using Kinect. BMVC. 2011. 1-11.
Power, Des, e Mary Power. SIGN LANGUAGE AVATARS A NEW METHOD FOR
DEAF PEOPLE TO ACCESS MEDIA COMMUNICATION. MEDIA ACCESS
REVIEW, s.d.
Programa Leonardo da Vinci. Spread the Sign. 2008. http://www.spreadthesign.com/ (acedido
em 5 de Fevereiro de 2013).
Ralph, Elliott, Glauert John RW, Kennaway J.R., e Marshall Ian. The Development of
Language Processing Support for the ViSiCAST Project. Proceedings of the fourth
international ACM conference on Assistive technologies. 2000. 101-108.
Reallusion. iCone 5. 2011. http://www.reallusion.com/iclone/ (acedido em 5 de Novembro de
2012).
Signing Savvy LLC. Signing Savvy. 2009. http://www.signingsavvy.com (acedido em 23 de
Junho de 2013).
Smith Micro Software, Inc. Poser 3D. 2011. http://poser.smithmicro.com/ (acedido em 22 de
Setembro de 2012).

132

Stegmueller,

Stefan.

Candescent

NUI.

18

de

Maro

de

2012.

http://candescentnui.codeplex.com/ (acedido em 20 de Janeira de 2013).


Stephen Cox, Michael, et al. TESSA, a system to aid communication with deaf people.
Proceedings of the fifth international ACM conference on Assistive technologies.
2002. 205-212.
ValorVisual.

Curso

de

Lngua

Gestual

Portuguesa

em

DVD.

2009.

http://www.linguagestual.com/index.php (acedido em 5 de Maro de 2013).


VCom3D. Signing Math & Science Dictionaries. s.d. http://signsci.test.terc.edu (acedido em
10 de Junho de 2013).
Verlinden, Margriet, Corrie Tijsseling, e Han Frowein. A Signing Avatar on the WWW.
Gesture and Sign Language in Human-Computer Interaction. 2002. 169-172.
Vygotsy, Lev S. Pensamento e linguagem. 1989.
Wang, Robert, Chris Twigg, e Kenrick Kin. Gestural User Interfaces - 3Gear Systems. 2012.
http://www.threegear.com/ (acedido em 26 de Outubro de 2013).
Wikipedia.

Lngua

gestual

portuguesa.

2007.

http://pt.wikipedia.org/wiki/Lngua_gestual_portuguesa (acedido em 30 de Junho de


2013).
Zafrulla, Zahoor, Harley Hamilton, Helene Brashear, Peter Presti, e Thad Starner. American
Sign Language Recognition with the Kinect. Proceedings of the 13th international
ACM conference on multimodal interfaces . 2011. 279-286.
Zwitserlood, Inge, Margriet Verlinden, Johan Ros, e Sanny van der Schoot. Synthetic
signing for the deaf: eSign. 2005.

133

134

ANEXOS

135

Anexo 1 Contexto sociocultural dos surdos em Portugal


Em Portugal existem 33 mil surdos (Associao de Surdos da Alta Estremadura s.d.). Desde o
seu aparecimento, no ano de 1823 (Leonor 2013), a lngua gestual era proibida. Os surdos
usavam-na clandestinamente para comunicar. Nas escolas de ensino regular no havia intrpretes e
s em 1997 foi reconhecida como lngua oficial de Portugal a Lngua Gestual Portuguesa.
O pensamento est ligado intimamente linguagem (Vygotsy 1989). A forma de pensar de um
ouvinte diverge da forma de pensar de um surdo. Ao passo que um surdo pensa visualmente,
quem se expressa numa lngua oral tem um pensamento mais abstrato. Logo, estas diferenas
marcam a dificuldade dos surdos na adaptao ao universo das lnguas escritas.
Ainda existe uma grande quantidade de surdos analfabetos, muitos deles no sabem sequer
lngua gestual. Falam atravs de mmica e comunicam assim no seu dia-a-dia. Esta situao mais
predominante nas geraes anteriores. Porm, hoje em dia existe uma grande diferena para
melhor relativamente institucionalizao e educao dos surdos.
A lngua gestual assume, portanto, uma importncia fundamental para o surdo, para o seu
ambiente familiar, profissional e cultural. E envolve outras pessoas que com ele tm de comunicar.
Resumindo, a lngua gestual faz parte da cultura do surdo, tal como para um cidado portugus,
por exemplo, a lngua portuguesa faz parte da sua cultura.

136

Anexo 2 Especificaes tcnicas e algoritmo usado pelo Kinect


A cmera de cor RGB permite por defeito resolues de 640x480 a 30 frames por segundo,
porm possvel ir at 1280x1024 a 12 frames por segundo. A resoluo de profundidade suporta
resolues entre 80x60, 320x240 e 640x480 a 30 frames por segundo. O reconhecimento do
sensor de profundidade tem um alcance de 0.8 a 4 metros para a verso Xbox enquanto a verso
especializada para PC, tem um alcance de 0.5 a 3 metros.
A capacidade de fazer o reconhecimento automtico das articulaes, e por conseguinte,
construir um esqueleto virtual do utilizador, advm da captao dos dados de profundidade.
O hardware por detrs do Kinect foi inicialmente desenvolvida pela empresa PrimeSense, do
qual a Microsoft adquiriu posteriormente essa tecnologia. O processo que a cmera utiliza para
obter a profundidade chama-se structured light, e consiste na projeo de um padro de pontos
infravermelhos no espao. A forma como esses pontos se deformam em contacto com a superfcie,
permite calcular a distncia do emissor (sensor) ao objeto.

137

Anexo 3 Questionrio da avaliao do prottipo inicial para


componente do Soletrar palavras em LGP

Fase 1 - Soletrar:

Palavras

Palavra 1
Palavra 2

Palavra 3
Palavra 4
Palavra 5

Que palavra
reconheceu?

Qualidade

Observaes

1 Tem utilidade ou aplicao o soletrar palavras? (Nvel de utilidade de 1 a 5)

2 Onde imagina ver aplicado um exemplo deste tipo? (ensino a crianas? Por exemplo como?)

3 O que seria bom melhorar? (animao, boneco em si, expressividade do boneco, realismo, cenrio de
fundo mais adequado)

138

Anexo 4 Questionrio da avaliao do prottipo inicial para a


visualizao de frases em LGP

Fase 2 - Frases:

Frases

Frase 1

Frase 2

Frase 3

Frase 4

Frase 5

Frase 6

Que frase reconheceu?

Qualidade

Observaes

139

Fase 2 - Frases

1 Tem utilidade ou aplicao o soletrar palavras? (Nvel de utilidade de 1 a 5)

2 Onde imagina ver aplicado um exemplo deste tipo? (ensino a crianas? Por exemplo como?)

3 O que seria bom melhorar? (animao, boneco em si, expressividade do boneco, realismo, cenrio de
fundo mais adequado)

4 De 1 a 3 como classificaria o nvel de realismo do exemplo apresentado? E qual o nvel


para o exemplo anterior, o soletrar palavras?

5 Comparando o exemplo anterior com este, o que achou da mudana do boneco? Qual o
melhor?

6 No exemplo anterior, o boneco tinha muito pouca expressividade ou nenhuma em


relao a este exemplo. Concorda? Qual a importncia da expressividade na passagem da
mensagem atravs do boneco? O que acha que poderia melhorar neste aspecto?

140

Anexo 5 Descrio formal do caso de uso Traduzir e Adivinhar


gesto de palavras
Caso de Uso
Sumrio

Traduzir palavra em Lngua Gestual


O utilizador visualiza animao de um avatar a comunicar
em lngua gestual de uma determinada palavra

Actor
Pr-condio

Descrio

Criana
Utilizador selecionou modo consulta

1. Utilizador escolhe o tema que quer consultar.


2. Sistema carrega e mostra todas as palavras que tem
para o tema escolhido.
3. Utilizador escolhe a palavra que quer consultar.

Alternativas

2.a - Sistema no tem palavras para tema


2.b - Sistema avisa utilizador que no tem palavras para
aquele tema e pra

Ps-condio

Utilizador v animao do gesto correspodente palavra


que escolheu

Tabela 8 Descrio formal do caso de uso Traduzir palavram em LG

Caso de Uso

Sumrio

Actor
Pr-condio

Descrio

Adivinhar gesto para uma determinada palavra


O utilizador tenta adivinhar de entre vrias animaes de
gestos de LGP qual o gesto que corresponde a uma determinada
palavra
Criana
Utilizador selecionou modo adivinha

1. Utilizador escolhe o tema para a adivinha.


2. Sistema carrega e mostra todas as palavras que tem para
o tema escolhido.
3. Utilizador escolhe uma palavra.
4. Sistema carrega aleatoriamente animaes de gestos
alm daquela que corresponde palavra escolhida.
5. Utilizador visualiza todas os gestos.
6. Utilizador seleciona o gesto que corresponde palavra.
141

2.a - Sistema no tem palavras para tema


2.b - Sistema avisa utilizador que no tem palavras
para aquele tema e pra
Alternativas
6.a - Gesto selecionado no corresponde palavra
6.b - Sistema avisa utilizador que est errado e solicita nova
tentativa

Ps-condio

Sistema avisa que utilizador acertou na escolha e volta


lista de palavras

Tabela 9 Descrio formal do caso de uso Adivinhar gesto para uma determinada palavra

142

Anexo 6 Descrio formal do caso de uso Compositor de Frases

Caso de Uso
Sumrio
Actor
Pr-condio

Descrio

Traduzir frase em Lngua Gestual


O utilizador visualiza animao de um avatar a comunicar
em lngua gestual de duas palavras de temas diferentes
Criana
Utilizador selecionou modo consulta

1. Utilizador escolhe o tema que quer consultar.


2. Sistema carrega e mostra todas as palavras que tem
para o tema escolhido.
3. Utilizador escolhe a primeira palavra que quer
consultar.
4. Sistema carrega animao com a palavra escolhida.
5. Utilizador escolhe outro tema.
6. Sistema carrega e mostra todas as palavras para o tema
escolhido.
7. Utilizador clica com o segundo boto do rato ou fica
com o rato algum tempo em cima da palavra
pretendida.
8. Sistema mostra um boto para permitir combinar a
palavra selecionada anteriormente com a actual.
9. Utilizador clica nesse boto.

2.a - Sistema no tem palavras para tema


2.b - Sistema avisa utilizador que no tem palavras para
aquele tema e pra
6.a - Sistema no tem palavras para tema
Alternativas
6.b - Sistema avisa utilizador que no tem palavras para
aquele tema e pra
9.a - Utilizador tenta combinar duas palavras invlidas
9.b - Sistema avisa o utilizador do erro e pra

Ps-condio

Utilizador v animao do gesto correspondente


combinao das duas palavras que escolheu

Tabela 10 Descrio formal do caso de uso Traduzir frase em LG

143

Anexo 7 Descrio dos PageMethods utilizados na aplicao


front-end
string UpdateNavTabs(string id)
string UpdateLeftBar(string text, string themeId, string videoType)
string UpdateContentBar(string text, string themeId, string videoType)

SentenceQueryResult isValidWord(string[] words)


string GetRandomSentences(int rows)

GestureVideo[] GetRandomGestures(string differentFrom, string differentFromVideo, string


themeId, string videoType, string rows)

UpdateNavTabs
Este mtodo vai buscar contedo da div dos temas, do qual string id corresponde id do tema que
o utilizador seleccionou.

UpdateLeftBar
Este mtodo vai buscar o contedo para a div da seco da lista de palavras, do qual string text
corresponde string de procura que utilizador escreveu, string themeId corresponde ao id do tema
activo, e string videoType corresponde ao tipo de vdeo que o utilizador pretende visualizar.

UpdateContentBar
Este mtodo vai buscar o contudo da div principal, onde se seleciona as palavras, do qual
string text corresponde string de procura que utilizador escreveu, string themeId corresponde ao id do
tema activo, e string videoType corresponde ao tipo de vdeo que o utilizador pretende visualizar.

144

isValidWord

Este mtdo verifica se a frase que o utilizador est a tentar combinar corresponde a alguma
combinao de palavras existentes, do qual string[] words corresponde a um array com as palavras
que o utilizador sequencialmente combinou no compositor.
Se no corresponder, retorna null, se corresponder mas no combinar com a frase completa,
retorna uma instncia de SentenceQuery.
Se corresponder a uma frase completa, ento retorna uma instncia de
atributos correctamente preenchidos.

SentenceQuery

com os

GetRandomWords
Este mtodo retorna uma lista de frases aleatrias das frases existentes no sistema, do qual
rows corresponde ao nmero de frases que se pretende receber.

int

GetRandomGestures
Este mtodo retorna um array de objetos GestureVideo contendo vdeos de gestos aleatrios, do
qual string differentFrom corresponde palavra que utilizador quer adivinhar, string differentFromVideo ao
vdeo da palavra que utilizador quer adivinhar, string themeId ao id do tema que a palavra
corresponde, string videoType ao tipo de vdeo que o utilizador pretender ver e string rows o nmero de
vdeos com que vamos misturar/baralhar o vdeo certo.

145

Anexo 8 Resultados da aplicao (algumas screenshots)

Figura 91 Inteface Login (front-end)

Figura 92 Interface Home (front-end)

Figura 93 - Interface Dicionrio, ver gesto (front-end)


146

Figura 94 Interface Dicionrio:


compositor de frases (front-end)

Figura 95 - Interface Adivinhar Gesto:


incio (front-end)

Figura 96 Interface Adivinhar Gesto, utilizador acertou (front-end)

147

Figura 97 Interface Login


(backoffice)

Figura 100 Interface Ver


Utilizadores (backoffice)

Figura 98 Interface Principal


(backoffice)

Figura 99 Interface Editar


Utilizadores (backoffice)

148

Anexo 9 Guio da avaliao do Dicionrio

Guio da experincia ao Dicionrio

Tarefas:
Comea por Entrar no modo dicionrio

1) V o gesto para a cor Azul

2) V o gesto para o animal Pssaro

3) V o gesto em alta-definio para o mesmo gesto

4) Compe a seguinte frase O gato azul.


(caso no saibas LGP ou precises de ajuda, v as sugestes de frases existentes)

5) V a traduo para a frase que compuseste

6) Pe a animao em cmara lenta e em modo de repetio

149

Anexo 10 Questionrio da avaliao do Dicionrio

Este questionrio pretende saber a tua opinio sobre o website Os meus primeiros gestos.

Obrigado pelo teu tempo!

1. Idade: _____ anos

2. Sexo:

Masculino

Feminino

3. Profisso: ___________________________

4. Dificuldade em executar a tarefas:


Muito Difcil

Muito Fcil

5. Achas que vale a pena existir vdeo de qualidade normal e em alta-definio?


Sim

No

Talvez

7. O tamanho da janela de vdeo adequado:


pequeno

grande

Est bom

150

Compositor de Frases

8. Achas-te til o compositor de frases para aprender LGP?


Pouco til

Muito til

9. Foi fcil combinar os gestos?


Pouco Fcil

Muito Fcil

10. O que podia ser adicionado ou melhorado?


Nada
Frases mais complexas
Muitas combinaes e muitas frases
Por
exemplo:
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
________________________________________________________

151

Anexo 11 Guio da avaliao do modo Adivinhar

Guio da experincia do modo Adivinhar

Tarefas:

1) V quantas frutas tem a aplicao (se quiseres v o gesto para uma delas).

2) Entra no modo Adivinhar (se no conseguires pede ajuda).

3) Seleciona o tema das Cores e faz uma pesquisa como quisesses encontrar a palavra
Verde.

4) Carrega na palavra Verde e tenta adivinhar qual dos gestos corresponde a essa palavra

5) Agora tenta adivinhar o gesto para a palavra Pssaro, mas desta vez falha na primeira
tentativa.

FIM

152

Anexo 12 Questionrio da avaliao do modo Adivinhar

1. Dificuldade em executar as tarefas:


Muito Difcil

Muito Fcil

2. O que achaste da pesquisa? Fcil de usar?


Muito Difcil

Muito Fcil

2.1. Algo a melhorar na pesquisa?


No

Sim

O qu: ?

Modo Exerccio

___________________________
_______________________________
_______________________________
_______________________________
_______________________________

3. O que achaste do modo Adivinhar/Exerccio:


Pouco Interessante

Muito Interessante

4. Achaste divertido?
Pouco Divertido

Muito Divertido

4.1. Tens alguma ideia para melhorar?


_________________________________________________________________

153

5. Achas que era necessrio no Adivinhar gesto, veres algum vdeo em cmara lenta?
Sim

No

Tambm se justifica ter:


Boto para repetio contnua do vdeo:
Vdeo alternativo com qualidade superior:

6. A opo Full Screen ao ver um vdeo, achas que uma opo importante ou
secundria:
Importante

Secundria

No vale a pena

154

Anexo 13 Questionrio Genrico

1. A aplicao til:
Pouco til

Muito til

2. Como classificas a experincia / facilidade de usar a aplicao?


Muito M

Muito Boa

3. O avatar interessante?
Nada

Muito

3.1.Porqu?
_______________________________________________________________
___________________________________

4. Visualmente achas o site atractivo?


Nada

Muito

155

5. Qualidade dos gestos que observaste:


Muito Maus

Muito Bons

5.1. Na tua opinio, se os gestos anteriores tambm tivessem expresso facial


qual a qualidade com que cada gesto ficaria:
Muito Mau

Muito Bom

5.2. O que achas deveria ser melhorado em relao aos gestos:


__________________________________________________________________
_____________________________________________________________________
________________________

6. O que poderia ser melhorado na aplicao? O que gostaste menos de ver?


___________________________________________________________________________
_______________________________________________________________________________
______________________________________________________________________________

7. Observaes...
___________________________________________________________________________
_______________________________________________________________________________
______________________________________________________________________________

156

157

Você também pode gostar