101
Universidade Federal de Pernambuco Centro de Informática Pós-graduação em Ciência da Computação TIARI: Uma TIARI: Uma TIARI: Uma TIARI: Uma Interface Interface Interface Interface para Entrada de Texto em para Entrada de Texto em para Entrada de Texto em para Entrada de Texto em Sistemas de Realidade Aumentada Sistemas de Realidade Aumentada Sistemas de Realidade Aumentada Sistemas de Realidade Aumentada por Isabel Wanderley da Silveira ([email protected]) Dissertação submetida ao Centro de Informática da Universidade Federal de Pernambuco, como requisito parcial para obtenção do grau de Mestre em Ciência da Computação. Dissertação orientada por Djamel F. H. Sadok Djamel F. H. Sadok Djamel F. H. Sadok Djamel F. H. Sadok Professor Adjunto do Centro de Informática da Universidade Federal de Pernambuco Co-orientada por Veronica Teichrieb Veronica Teichrieb Veronica Teichrieb Veronica Teichrieb Pesquisadora Visitante do Centro de Informática da Universidade Federal de Pernambuco Recife, Agosto de 2007.

TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Universidade Federal de Pernambuco

Centro de Informática

Pós-graduação em Ciência da Computação

TIARI: Uma TIARI: Uma TIARI: Uma TIARI: Uma InterfaceInterfaceInterfaceInterface para Entrada de Texto em para Entrada de Texto em para Entrada de Texto em para Entrada de Texto em

Sistemas de Realidade AumentadaSistemas de Realidade AumentadaSistemas de Realidade AumentadaSistemas de Realidade Aumentada por

Isabel Wanderley da Silveira

([email protected])

Dissertação submetida ao

Centro de Informática da

Universidade Federal de

Pernambuco, como requisito

parcial para obtenção do grau

de Mestre em Ciência da

Computação.

Dissertação orientada por

Djamel F. H. SadokDjamel F. H. SadokDjamel F. H. SadokDjamel F. H. Sadok

Professor Adjunto do Centro de Informática da

Universidade Federal de Pernambuco

Co-orientada por

Veronica TeichriebVeronica TeichriebVeronica TeichriebVeronica Teichrieb

Pesquisadora Visitante do Centro de Informática da

Universidade Federal de Pernambuco

Recife, Agosto de 2007.

Page 2: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

ii

A Deus, meus pais, avó, Tay, amigos e marido

pelo amor e paciência durante este período

de desenvolvimento desta dissertação

Page 3: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

iii

AgradecimentosAgradecimentosAgradecimentosAgradecimentos

Gostaria de agradecer a todas as pessoas que me ajudaram a construir este

trabalho e que me deram forças e confiaram em mim nos momentos de tristeza e

fraqueza que passei durante este período de elaboração desta dissertação. Em especial

ao Grupo de Pesquisa em Realidade Virtual e Multimídia (GRVM) que me deu total

apoio ao longo deste trabalho. Gostaria de destacar Joma, João Grandão, Mouse, Luiz,

Daliton e Judith, todos pertencentes ao GRVM, que deram uma ajuda muito grande no

desenvolvimento deste trabalho de mestrado, sem eles nada disso seria possível. Queria

agradecer também à paciência e disposição dos que me ajudaram a fazer meus testes de

usabilidade, sem eles meus resultados não seriam possíveis. Gostaria de agradecer

também ao meu orientador, Djamel, por ter acreditado em meu trabalho. Meu maior

agradecimento gostaria de fazer à minha co-orientadora Vt que sempre confiou em mim

e me deu forças e total apoio para conseguir concluir bem esta dissertação, sem ela nada

disso seria possível.

Também gostaria de homenagear meus pais e minha avó que sempre me deram

todo apoio necessário em relação aos meus estudos, sempre me estimulando e dando

forças quando eu precisei. Além deles, gostaria de agradecer à minha melhor amiga,

Tay, que em todos os momentos me apoiou e me deu forças para continuar e alcançar o

objetivo desejado através desta dissertação de mestrado.

Além destas queridas pessoas citadas acima, gostaria de fazer agradecimento ao

meu marido, Eduardo Dominoni, a quem eu recorri em vários momentos de angústia e

quem me confortou e me ajudou a conseguir esta vitória. Gostaria de homenagear nesta

dissertação meus amigos mais próximos, Yzmurph, Fernando, Nyx, Joule, Dedeko,

Coelhinho, Van, Belz, Jó, Nando e todos os outros que também sempre me deram apoio

e carinho quando eu precisei. Por fim, gostaria de agradecer ao pessoal da Meantime

pelo apoio e força ao longo destes anos de mestrado.

Page 4: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

iv

ResumoResumoResumoResumo

Interfaces de Realidade Aumentada sobrepõem informações virtuais em cenas

do mundo real, aumentando a realidade do usuário pela interação tanto com os objetos

virtuais quanto os reais. Para permitir a interação do usuário com estas aplicações,

vários tipos de interface vêm sendo propostos com a finalidade de fazer com que esta

interação seja feita de forma simples, eficiente e intuitiva.

Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de

texto, e com isso diversas formas de entrada de texto foram propostas, como teclados

virtuais, teclados pinch, gestos, entre outros. Porém, algumas destas formas de interação

são caras, incômodas ou difíceis de serem utilizadas por usuários leigos. Portanto, o

objetivo dessa dissertação foi propor uma interface para dar suporte à entrada de texto

neste tipo de sistemas. Esta interface, chamada TIARI (Text Input Augmented Reality

Interface), consiste em uma interface que mescla um teclado virtual, gestos e a

utilização de uma interface bare hand com marcadores fiduciais.

Para auxiliar no desenvolvimento da TIARI, diversas bibliotecas utilizadas na

construção de aplicações baseadas em vídeo com marcadores foram estudadas, a fim de

serem escolhidas as mais adequadas à sua implementação. A TIARI utiliza marcadores

fiduciais pequenos na mão do usuário, portanto uma biblioteca para fazer a detecção

destes marcadores foi utilizada, o ARTag. Além dela, foi utilizada, também, uma

biblioteca para captura de vídeo e para renderização dos objetos 3D, o OpenCV e o

OGRE com o sistema de renderização OpenGL. Além destas, pode-se destacar como

base no desenvolvimento da TIARI o OgreAR, responsável por facilitar o

desenvolvimento de aplicações de RA, criando uma camada de abstração para as

bibliotecas de detecção de marcadores e captura de vídeo.

A fim de validar a interface desenvolvida, TIARI foi integrada a um sistema de

Realidade Aumentada existente, o mivaDesk, que é um desktop virtual 3D. Além disto,

TIARI foi avaliada através de um estudo de usabilidade realizado, onde a interface foi

comparada a um teclado soft existente no mivaDesk. Como resultado desse estudo, a

TIARI foi avaliada como de fácil utilização, e apresentou uma média de digitação mais

Page 5: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

v

alta que o teclado soft do mivaDesk. Porém, comparando-se a TIARI ao teclado

convencional de layout QWERTY ela obteve um desempenho baixo.

Palavras Chaves: Realidade Aumentada, Interface de Interação, Entrada de Texto,

Avaliação de Usabilidade.

Page 6: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

vi

AbstractAbstractAbstractAbstract

Augmented Reality interfaces overlap virtual information in a real world scene,

augmenting the user’s reality by interacting with virtual and real objects. To make this

interaction possible, lots of interfaces were developed trying to make this interaction

simple, efficient and intuitive.

Some Augmented Reality applications need text input and interfaces like virtual

keyboards, pinch keyboards, gestures, and others were proposed to make this interaction

possible. However, some of these ways to interact are expensive, unconfortable or hard

to be used by non expert users. So, this dissertation proposes a new interface for text

input in Augmented Reality applications. This interface, called TIARI (Text Input

Augmented Reality Interface) is a mixture of a virtual keyboard, gestures and a bare-

hand interface using fiducial markers.

To help on TIARI’s development, some libraries commonly used on the

development of video based applications that use markers were studied, in order to

choose the best ones to implement this kind of application. TIARI uses small fiducial

markers in the user’s hand, so the ARTag marker detection library was used. Besides

this, a video capture and a render library were used: OpenCV and OGRE using the

OpenGL render system. In addition to this, an important library called OgreAR was

used as TIARI’s base. This library is responsible for making the development of

Augmented Reality applications easier, creating an abstraction layer to the marker

detection and video capture libraries.

To validate the developed interface, TIARI was integrated with an existent

application, a 3D virtual desktop called mivaDesk. To evaluate TIARI’s usability, a

usability study was made using TIARI and the soft keyboard existent in mivaDesk. As a

result of this evaluation, TIARI was evaluated as easy to use and presented a higher

typing rate compared to the mivaDesk soft keyboard. However, in a comparison made

with a traditional QWERTY keyboard, TIARI got a low performance.

Keywords: Augmented Reality, Interaction Interface, Text Input, Usability Evaluation.

Page 7: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

vii

SumárioSumárioSumárioSumário

Agradecimentos ............................................................................................................. iii

Resumo ........................................................................................................................... iv

Abstract .......................................................................................................................... vi

Lista de Figuras ............................................................................................................. ix

Lista de Tabelas ............................................................................................................. xi

Lista de Tabelas ............................................................................................................. xi

Acrônimos ..................................................................................................................... xii

Capítulo 1Capítulo 1Capítulo 1Capítulo 1 .................................................................................................................... 13

Introdução ..................................................................................................................... 13

1.1. Motivação ...................................................................................................... 13 1.2. Objetivo ......................................................................................................... 14 1.3. Organização do Documento........................................................................... 14

Capítulo 2Capítulo 2Capítulo 2Capítulo 2 .................................................................................................................... 16

Sistemas de Realidade Aumentada Interativos ......................................................... 16

2.1. Conceitos Básicos de RA............................................................................... 16 2.2. Interfaces de Visualização e de Interação...................................................... 18

2.2.1. Interfaces de Visualização ..................................................................................................19 2.2.1.1. Interfaces Translúcidas ............................................................................................19 2.2.1.2. Interfaces Baseadas em Monitor .............................................................................21 2.2.1.3. Interfaces Espacialmente Imersivas ........................................................................22 2.2.1.4. Interfaces Baseadas em Projetores..........................................................................23

2.2.2. Interfaces de Interação........................................................................................................24 2.2.2.1. Interfaces Tradicionais de RV .................................................................................24 2.2.2.2. Interfaces Bare Hand ................................................................................................25 2.2.2.3. Interfaces Tangíveis..................................................................................................27 2.2.2.4. Interfaces Móveis ......................................................................................................28 2.2.2.5. Interfaces Colaborativas ..........................................................................................30

2.3. Técnicas para Entrada de Texto..................................................................... 32 2.3.1. Baseadas em Teclado..........................................................................................................33 2.3.2. Baseadas em Caneta ...........................................................................................................37 2.3.3. Baseadas em Gestos............................................................................................................39 2.3.4. Baseadas em Reconhecimento de Voz ...............................................................................39 2.3.5. Considerações sobre a Aplicação das Técnicas ..................................................................40

2.4. Aplicações de RA com Suporte a Entrada de Texto...................................... 41 2.5. Bibliotecas para o Desenvolvimento de Aplicações de RA........................... 44

2.5.1. Bibliotecas para Detecção de Marcadores ..........................................................................45 2.5.1.1. ARToolkit.......................................................................................................................46 2.5.1.2. ARTag ............................................................................................................................47 2.5.1.3. ARToolkitPlus ................................................................................................................49

Page 8: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

viii

2.5.2. Bibliotecas para Captura de Vídeo .....................................................................................50 2.5.2.1. DSVideoLib....................................................................................................................50 2.5.2.2. OpenCV..........................................................................................................................51 2.5.3. Bibliotecas para Renderização............................................................................................51 2.5.3.1. OpenGL ..........................................................................................................................51 2.5.3.2. DirectX ...........................................................................................................................52 2.5.3.3. OGRE .............................................................................................................................52 2.5.4. Biblioteca para Desenvolvimento de Aplicações de RA: OgreAR.....................................54

2.6. Considerações Finais ..................................................................................... 55

Capítulo 3Capítulo 3Capítulo 3Capítulo 3 .................................................................................................................... 57

TIARI – Text Input Augmented Reality Interface....................................................... 57

3.1. Contexto de Uso............................................................................................. 57 3.2. Metodologia Adotada .................................................................................... 58 3.3. Modelo ........................................................................................................... 59 3.4. Implementação............................................................................................... 62 3.5. Estudo de Caso: mivaDesk ............................................................................ 67 3.6. Considerações Finais ..................................................................................... 71

Capítulo 4Capítulo 4Capítulo 4Capítulo 4 .................................................................................................................... 73

Avaliação de Usabilidade da Interface TIARI........................................................... 73

4.1. Introdução ...................................................................................................... 73 4.2. Método Utilizado ........................................................................................... 74 4.3. Resultados...................................................................................................... 75 4.4. Considerações Finais ..................................................................................... 78

Capítulo 5Capítulo 5Capítulo 5Capítulo 5 .................................................................................................................... 80

Conclusão ...................................................................................................................... 80

5.1. Principais Contribuições ................................................................................ 82 5.2. Dificuldades Encontradas .............................................................................. 83 5.3. Trabalhos Futuros .......................................................................................... 85

Referências Bibliográficas ........................................................................................... 87

Anexo A ......................................................................................................................... 91

Anexo B.......................................................................................................................... 95

Anexo C ......................................................................................................................... 96

Anexo D ......................................................................................................................... 97

Anexo E........................................................................................................................ 101

Page 9: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

ix

Lista de FigurasLista de FigurasLista de FigurasLista de Figuras

Figura 1. Continuidade Virtual...................................................................................... 17 Figura 2. Marcadores fiduciais. ..................................................................................... 18 Figura 3. Display Translúcido Ótico. ............................................................................ 19 Figura 4. Display Translúcido Baseado em Vídeo........................................................ 20 Figura 5. Display Translúcido Ótico: (a) Imagem ghosted sem oclusão mútua; (b)

Imagem com a oclusão correta. ............................................................................... 20 Figura 6. HMD com câmera acoplada utilizado na TIARI. .......................................... 21 Figura 7. Display Baseado em Monitor......................................................................... 22 Figura 8. Ambiente Blue-c que utiliza um Display Espacialmente Imersivo. .............. 22 Figura 9. Ambiente para utilização de uma Interface Baseada em Projetor. ................ 23 Figura 10. Aplicação Magic Table. ............................................................................... 24 Figura 11. Luva de gestos utilizada na TIARI. ............................................................. 25 Figura 12. Luva com marcadores. ................................................................................. 25 Figura 13. Aplicação HandSmart. ................................................................................. 26 Figura 14. Interface bare hand utilizada na TIARI: (a) Luva com marcadores para

tracking; (b) Interface do teclado............................................................................. 26 Figura 15. Marcadores para detecção durante a interação. ........................................... 28 Figura 16. A interface tangível I/O Brush. .................................................................... 28 Figura 17. Wearable Computer. .................................................................................... 29 Figura 18. Plataforma miva. .......................................................................................... 30 Figura 19. Colaboração Face a Face.............................................................................. 31 Figura 20. Videoconferência através de Colaboração Remota. .................................... 32 Figura 21. Teclado em miniatura................................................................................... 33 Figura 22. Teclado com poucas teclas........................................................................... 34 Figura 23. Teclado chord............................................................................................... 35 Figura 24. Chording Gloves. ......................................................................................... 35 Figura 25. Teclado Pinch: (a) Luvas pinch; (b) Ambiente virtual. ............................... 36 Figura 26. Teclado Soft. ................................................................................................ 36 Figura 27. ARKB (Augmented Reality Keyboard)....................................................... 37 Figura 28. Técnica de reconhecimento de caracteres Graffiti. ...................................... 38 Figura 29. Técnica de reconhecimento de palavras Cirrin. ........................................... 38 Figura 30. Utilização da técnica de “tinta digital” no Virtual Notepad......................... 38 Figura 31. Interface baseada em teclado pinch utilizada em aplicação militar. ............ 42 Figura 32. ARLib: (a) Forma de busca de livros. (b) Grafitti Pad. ............................... 42 Figura 33. Aplicação ARLib. ....................................................................................... 43 Figura 34. Aplicação MagicMeeting............................................................................. 43 Figura 35. Teclado soft do mivaDesk. .......................................................................... 44 Figura 36. Fluxo de aplicações de RA baseadas em vídeo com marcadores fiduciais. 45 Figura 37. Marcadores fiduciais baseados em template utilizados pelo ARToolkit. .... 46 Figura 38. Fluxo de funcionamento do ARToolkit. ...................................................... 47 Figura 39. Padrões de marcadores baseados em ID do ARTag. ................................... 48 Figura 40. Detecção de marcadores: (a) e (b) com ARToolkit; (c) com ARTag. ......... 49 Figura 41. Marcadores do ARToolkitPlus. ................................................................... 49 Figura 42. Arquitetura do OGRE. ................................................................................. 53 Figura 43. Arquitetura do OgreAR................................................................................ 54 Figura 44. Processo interativo de design de interfaces.................................................. 58

Page 10: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

x

Figura 45. Visualização do teclado deslizante da TIARI. ............................................. 60 Figura 46. Dispositivos utilizados na TIARI................................................................. 60 Figura 47. Digitação com a TIARI................................................................................ 61 Figura 48. Detecção de marcadores com a ponta dos dedos. ........................................ 61 Figura 49. Layout do teclado TIARI. ............................................................................ 62 Figura 50. Bibliotecas utilizadas pela TIARI. ............................................................... 63 Figura 51. Arquitetura da TIARI................................................................................... 64 Figura 52. Diagrama de classes da TIARI. ................................................................... 65 Figura 53. Problema de detecção de marcadores. ......................................................... 66 Figura 54. Problema de oclusão de marcadores. ........................................................... 66 Figura 55. Arquitetura do mivaDesk. ............................................................................ 68 Figura 56. Diagrama de classes da TIARI e mivaDesk integrados............................... 70 Figura 57. Gráfico da média de digitação das frases..................................................... 75 Figura 58. Resultado da análise de conforto do usuário................................................ 77

Page 11: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

xi

ListaListaListaLista de de de de Tabelas Tabelas Tabelas Tabelas

Tabela 1. Video See-Through HMD X Optical See-Through HMD............................. 21

Page 12: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

xii

AcrônimosAcrônimosAcrônimosAcrônimos

API Application Programming Interface

ASCII American Standard Code for Information Interchange

CAD Computer-Aided Design

COM Component Object Model

CV Continuidade Virtual

DV Digital Video

HMD Head Mounted Display

GNU GNU's Not Unix

GPL GNU General Public License

LGPL Lesser General Public License

PDA Personal Digital Assistant

RA Realidade Aumentada

RM Realidade Mista

RV Realidade Virtual

SID Spatially Immersive Displays

SGI Silicon Graphics, Inc

SO Sistema Operacional

TIARI Text Input Augmented Reality Interface

TUI Tangible User Interface

USB Universal Serial Bus

VA Virtualidade Aumentada

WoW Window on the World

Page 13: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 1Capítulo 1Capítulo 1Capítulo 1

Introdução

Nos sistemas de Realidade Virtual (RV) [6] o usuário vê e interage com um

mundo completamente virtual, enquanto nos sistemas de Realidade Aumentada (RA) o

usuário visualiza o mundo real e objetos virtuais simultaneamente [3][4]. Apesar de ser

uma área recente, RA vem crescendo bastante ao longo dos últimos anos e várias

aplicações vêm sendo desenvolvidas utilizando este conceito. Uma necessidade

observada em algumas destas aplicações é a entrada de texto, sendo este o tema

principal de estudo deste trabalho. Neste capítulo são mostradas as motivações, o

escopo onde está inserido e o objetivo final deste trabalho, bem como a forma de

organização do documento.

1.1.1.1.1.1.1.1. MotivaçãoMotivaçãoMotivaçãoMotivação

Aplicações de RA vêm se destacando cada vez mais em diversas áreas de

aplicação como a medicina, entretenimento, aplicações militares, dentre outras. Uma

necessidade observada em alguns tipos de aplicações de RA é a entrada de texto, em sua

maioria entrada de textos simples, como anotações, labels, entre outras. A partir desta

necessidade, algumas interfaces para resolver este problema foram propostas e várias

técnicas para entrada de texto foram desenvolvidas, como teclados, utilização de gestos,

reconhecimento de voz, dentre outras técnicas bastante conhecidas.

A maior parte das ferramentas de RA que necessitam desta funcionalidade

utiliza teclados virtuais ou teclados reais reduzidos para permitir esta interação. Porém,

existem outras propostas de interface com a finalidade de melhorar a usabilidade da

mesma e fazer com que a forma de interação do usuário com o sistema seja simples,

prática e não atrapalhe as atividades normais desenvolvidas ao longo da utilização da

aplicação. Não são muitas estas outras propostas de interface e algumas delas são

difíceis de utilizar e requerem um tempo considerável para os usuários aprenderem a

Page 14: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 1 – Introdução 14

utilizá-las. Portanto, esta dissertação de mestrado irá focar no problema de entrada de

texto em sistemas de RA, propondo uma forma simples de realizar este tipo de

interação.

1.2.1.2.1.2.1.2. OOOObjetivobjetivobjetivobjetivo

O objetivo deste trabalho se concentra em desenvolver e avaliar uma interface

para entrada de texto em sistemas de RA. O desenvolvimento desta interface tem como

propósito a criação de uma nova forma de entrada de texto neste tipo de sistemas que

possa ser avaliada e comparada a alguns modelos anteriormente propostos. Durante o

trabalho foram estudadas e analisadas algumas bibliotecas de desenvolvimento

utilizadas em sistemas de RA, e algumas foram utilizadas para a conclusão deste. A

interface desenvolvida, chamada TIARI (Text Input Augmented Reality Interface),

também foi validada e integrada a uma aplicação de RA já desenvolvida pelo Grupo de

Pesquisa em Realidade Virtual e Multimídia, do Centro de Informática da Universidade

Federal de Pernambuco.

Além desta integração, outro objetivo deste trabalho é a realização de um estudo

de usabilidade da TIARI, fazendo-se uma análise qualitativa junto aos usuários e

também um comparativo entre a utilização desta e de uma interface para entrada de

texto já existente na aplicação na qual a interface foi integrada.

1.3.1.3.1.3.1.3. Organização do DOrganização do DOrganização do DOrganização do Documentoocumentoocumentoocumento

Neste capítulo foi apresentada a motivação, juntamente com o objetivo deste

trabalho de mestrado. O capítulo 2 contempla alguns conceitos básicos sobre RA e

algumas aplicações que os utilizam, mostrando também aplicações que necessitam de

entrada de texto, o estado da arte em relação a interfaces para interação neste tipo de

sistema, algumas bibliotecas utilizadas para desenvolvimento de aplicações de RA e por

fim algumas técnicas utilizadas para entrada de texto neste tipo de sistema.

Os capítulos seguintes mostram o resultado obtido durante este trabalho de

mestrado. No capítulo 3 são mostradas a modelagem conceitual e implementação da

interface desenvolvida, bem como um estudo de caso escolhido para validar a utilização

da mesma. Esta validação da interface se encontra mais detalhada ao longo do capítulo

Page 15: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 1 – Introdução 15

4, onde são mostradas avaliações da interface desenvolvida, bem como a metodologia

utilizada para avaliação e os resultados finais obtidos, fazendo um comparativo com

relação a uma interface já existente no estudo de caso.

Por fim, o capítulo 5 contempla conclusões obtidas ao longo deste trabalho,

trabalhos futuros que podem ser propostos para melhorar e dar continuidade ao

desenvolvimento e aprimoramento deste trabalho e as contribuições relevantes do

mesmo para a comunidade científica.

Page 16: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2Capítulo 2Capítulo 2Capítulo 2

Sistemas de Realidade Aumentada Interativos

Este capítulo contempla o estado da arte em relação à área de RA, com foco na

parte de interfaces, ferramentas de desenvolvimento e técnicas utilizadas para entrada de

texto. Primeiramente são mostrados alguns conceitos básicos de RA e interfaces

utilizadas para realizar a interação do usuário com o sistema, bem como aplicações que

as utilizam. Também são abordadas técnicas utilizadas para entrada de texto nestes

sistemas, mostrando vantagens e desvantagens e um pequeno estudo comparativo já

realizado entre estas diversas técnicas. Por fim, serão mostradas algumas ferramentas

utilizadas no desenvolvimento de aplicações de RA e como estas ferramentas foram

escolhidas para o desenvolvimento da TIARI.

2.1.2.1.2.1.2.1. Conceitos BConceitos BConceitos BConceitos Básicos de RAásicos de RAásicos de RAásicos de RA

Nos sistemas de Realidade Virtual o usuário interage com um mundo

completamente virtual [6]. Os sistemas de Realidade Aumentada [3][4] representam

uma extensão dos sistemas de RV. Nestes sistemas, objetos virtuais são integrados a um

mundo real fazendo com que, ao invés do ambiente ser substituído por um ambiente

virtual, ele é complementado com objetos virtuais. Os objetos virtuais e reais co-existem

na visão do usuário, podendo este interagir com ambos os objetos [11]. Existem,

também, os sistemas de Virtualidade Aumentada (VA) que integram objetos reais em

um mundo virtual, permitindo que o usuário no mundo virtual possa visualizar alguma

parte do mundo real. Milgram et al. propôs um conceito de Continuidade Virtual (CV)

[35] que mostra como os mundos real e virtual co-existem. Os sistemas de Realidade

Mista (RM), localizados no centro da CV, incluem os conceitos de RA e VA, e podem

ser visualizados através da Figura 1.

Page 17: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 17

Figura 1. Continuidade Virtual.

Aplicações que utilizam o conceito de RA vêm sendo cada vez mais exploradas

em diversas áreas de atuação: medicina, engenharia, entretenimento, treinamentos

militares, entre outros [51][65][33][16]. Por exemplo, um cirurgião pode receber

informações virtuais durante uma cirurgia médica sobre um determinado procedimento

e o paciente, pode visualizar um volume 3D para implantes, entre várias outras

possibilidades [3].

Estas aplicações que utilizam RA requerem que o ponto de vista do usuário seja

preciso em relação ao mundo real e virtual, pois o usuário não pode ter uma quebra de

continuidade na interação e visualização dos objetos virtuais no mundo real. Isto se dá

pelo fato de que o usuário não consegue utilizar o sistema de uma forma consistente

caso ele não tenha uma homogeneidade entre a visualização dos objetos reais e virtuais.

Esta sincronização entre os mundos virtual e real está diretamente ligada ao sistema de

rastreamento (tracking) utilizado, pois este provê informações precisas de um

referencial no mundo real utilizado para fazer a composição com os objetos virtuais.

Existem três condições que um sistema de tracking deve satisfazer [3]: o tracker

deve ser preciso suficiente para captar pequenas variações de grau na orientação e

poucos milímetros na posição dependendo dos requisitos da aplicação, a latência do

tracker combinada com a do motor gráfico deve ser muito baixa e o tracker deve

funcionar a longas distâncias, principalmente em ambientes abertos. A posição e

orientação podem ser rastreadas utilizando marcadores visuais registrados, hardware

magnético, sistemas de posicionamento através de satélites ou sensores mecânicos. Uma

forma bastante utilizada são os marcadores fiduciais que consistem em padrões que são

montados no ambiente e automaticamente detectados em imagens digitais utilizando um

algoritmo de detecção de marcadores [22]. Eles são bastante utilizados em RA,

navegação de robôs e aplicações em geral que requerem a posição relativa entre a

câmera e um objeto. Este tipo de tracker é utilizado na TIARI e pode ser visualizado

através da Figura 2.

Page 18: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 18

Figura 2. Marcadores fiduciais.

Parâmetros de calibração de câmera também são muito importantes para alinhar

as coordenadas dos mundos real e virtual. Uma calibração precisa é importante

principalmente em sistemas de visualização 3D, pois a renderização dos objetos virtuais

no mundo real deve estar de acordo com a perspectiva e profundidade da cena real. Em

casos onde esta calibração não esteja bem feita, o usuário pode se sentir desorientado

com objetos virtuais erroneamente posicionados [54].

Além destes requisitos técnicos vistos acima, uma parte importante neste tipo de

sistema é a interação do usuário com o mesmo. Ela deve ser feita de uma forma simples

e natural, tornando este tópico um tema bastante explorado nesta área. Um aspecto

importante desta interação é fazer com que o usuário realize as suas tarefas

normalmente e interaja com os objetos reais e virtuais simultaneamente [59]. Para o

usuário realizar esta interação, ele necessita de dispositivos de entrada e saída para

fornecer dados ao sistema e receber feedback do mesmo. Essa interação do usuário, com

os sistemas de RA, pode ser realizada através de vários tipos de interface, como

interfaces tangíveis (Tangible User Interface – TUI), interfaces colaborativas,

dispositivos móveis, entre outras que serão mostradas nas seções a seguir.

2.2.2.2.2.2.2.2. InterfacesInterfacesInterfacesInterfaces de Visualização e de Interação de Visualização e de Interação de Visualização e de Interação de Visualização e de Interação

As interfaces utilizadas na interação do usuário com um sistema de RA podem

ser classificadas em dois tipos: as que provêm a visualização do mundo aumentado e as

utilizadas para o usuário interagir de fato com o sistema, fornecendo informações que

serão processadas e tendo seu resultado exibido através das interfaces de visualização.

Page 19: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 19

Nesta seção serão mostradas várias interfaces de visualização utilizadas em sistemas de

RA, bem como as interfaces utilizadas para o usuário interagir com os mesmos.

2.2.1. Interfaces de Visualização

As interfaces de visualização são responsáveis pela exibição dos objetos virtuais,

que deverão ser renderizados de forma integrada ao mundo real. Estas interfaces podem

ser Head Mounted Displays (HMDs), óculos, telas, monitores ou até mesmo superfícies

onde são projetados objetos virtuais [3]. Estas interfaces podem ser classificadas em: (a)

Translúcidas (See-Through), (b) Baseadas em Monitor (Monitor Based), (c)

Espacialmente Imersivas (Spatially Immersive) e (d) Baseadas em Projetores (Projector

Based).

O tipo de interface de visualização escolhido no desenvolvimento da TIARI foi

o display translúcido (See-Through) baseado em vídeo. Este tipo foi escolhido por ser

considerado o mais adequado visto que a TIARI foi projetada para ser utilizada também

em sistemas de RA que permitem a mobilidade do usuário. Esta forma de visualização

será mais bem detalhada ao longo desta seção, bem como as outras formas de

visualização mencionadas anteriormente.

2.2.1.1. Interfaces Translúcidas

Os See-Through Displays ou Displays Translúcidos são caracterizados por

permitirem ao usuário visualizar todo o mundo ao seu redor através do dispositivo, que

utiliza uma tela translúcida. Este tipo de interface dá ao usuário uma maior sensação de

realidade, pois a imagem do mundo real é exibida diretamente ao usuário sem passar por

nenhum tipo de alteração da imagem, por exemplo, por filtros gráficos. Existem dois

tipos de Displays Translúcidos: (a) Display Translúcido Ótico e (b) Display Translúcido

Baseado em Vídeo e podem ser visualizados através da Figura 3 e Figura 4.

Figura 3. Display Translúcido Ótico.

Page 20: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 20

Figura 4. Display Translúcido Baseado em Vídeo.

O Display Translúcido Ótico [3] utiliza espelhos com a finalidade de combinar o

mundo real e o virtual. O mesmo funciona posicionando combinadores óticos na frente

do olho do usuário. Estes combinadores óticos refletem parte da luz do mundo real para

o olho do usuário permitindo a visualização do mundo real e são utilizados para fazer a

junção dos objetos virtuais enviados ao monitor. Os combinadores óticos reduzem a

quantidade de luz recebida pelo usuário do mundo real. Estes combinadores são como

espelhos levemente prateados e permitem que apenas alguma quantidade de luz do

mundo real atravesse o espelho, fazendo com que eles também possam refletir a luz do

monitor para o usuário. Um grande problema deste tipo de dispositivo é que ele gera

imagens ghosted, ou seja, imagens semitransparentes que sobrepõem as imagens reais,

não permitindo a detecção de oclusão entre os objetos. Este problema pode ser

visualizado na Figura 5 [30], onde na figura (a) aparecem as imagens sobrepostas

utilizando um Display Translúcido Ótico e na figura (b) como os objetos deveriam ser

visualizados se a oclusão mútua fosse detectada corretamente.

(a) (b)

Figura 5. Display Translúcido Ótico: (a) Imagem ghosted sem oclusão mútua; (b) Imagem com a oclusão

correta.

Page 21: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 21

Por outro lado, o Display Translúcido Baseado em Vídeo (Video See-Through

Display) [3], bastante utilizado, é composto por um HMD com uma ou duas câmeras

acopladas. O vídeo capturado destas câmeras é combinado com as imagens criadas,

misturando o real com o virtual e exibindo ao usuário através dos monitores. Este tipo

de dispositivo é bastante utilizado em aplicações de RA e foi a interface de visualização

utilizada nesta dissertação. A imagem do mundo real é capturada através de uma

webcam acoplada a um HMD, após isso as imagens do mundo virtual e real são

combinadas pela aplicação e mostradas ao usuário através do HMD. O dispositivo

utilizado nesta dissertação para validação e avaliação da TIARI pode ser visualizado

através da Figura 6.

Figura 6. HMD com câmera acoplada utilizado na TIARI.

A Tabela 1, mostrada abaixo, apresenta um estudo comparativo entre estes dois

tipos de Displays Translúcidos.

Característica Optical See-Through HMD Video See-Through HMD

Visualização do mundo real

Transparente Opaco

Hardware para combinar as imagens

Combinador ótico e não necessita de CPU

Hardware acelerador ou combinador de vídeo

Qualidade da imagem real

Movimentação suave e alta definição

Movimentação atrasada e baixa definição

Qualidade da composição

Ghosted com iluminação reduzida e difícil de fazer oclusão dos objetos

Composição exata com remoção e adição de objetos

Tabela 1. Video See-Through HMD X Optical See-Through HMD.

2.2.1.2. Interfaces Baseadas em Monitor

Diferentemente dos Displays Translúcidos, os Displays de RA Baseados em

Monitor (Monitor Based AR Displays), também chamados de WoW (Window On the

World), são dispositivos que o usuário não “veste”. O resultado da junção dos mundos

real e virtual é exibido para ele através de um monitor [35]. Câmeras capturam a

Page 22: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 22

imagem do ambiente e, da mesma forma que no Video See-Through Display, um

combinador de vídeo junta as imagens geradas com a imagem capturada do mundo real

para mostrar ao usuário. Opcionalmente, as imagens podem ser mostradas em stereo

mode utilizando-se um par de óculos stereo. A Figura 7 mostra um exemplo deste tipo

de Display.

Figura 7. Display Baseado em Monitor.

2.2.1.3. Interfaces Espacialmente Imersivas

Existem ainda os Spatially Immersive Displays (SID) ou Displays Espacialmente

Imersivos, que são compostos por várias telas de projeção dispostas ao redor do usuário

criando uma sensação de imersão efetiva. As telas de projeção mostram o ambiente

onde o usuário se encontra e projetam os objetos virtuais para integrá-los ao mundo real.

O ponto positivo desta abordagem é a forte imersão do usuário no ambiente e o fato de

não se fazer necessário o uso de um HMD, que pode ser incômodo. Entretanto, esta

interface possui uma limitação referente à movimentação do usuário, pois ele fica

limitado ao local onde foi montado o SID. Isto faz com que aplicações que necessitam

de mobilidade não possam utilizar esta abordagem adequadamente. Um projeto que

utiliza esse tipo de interface de visualização é o Blue-c [36], que é um ambiente de

imersão para design e colaboração entre usuários conectados, e pode ser visualizado na

Figura 8.

Figura 8. Ambiente Blue-c que utiliza um Display Espacialmente Imersivo.

Page 23: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 23

2.2.1.4. Interfaces Baseadas em Projetores

Outra forma de visualização são as interfaces que utilizam projetores para fazer

a integração dos objetos virtuais com o mundo real. Este tipo de interface geralmente

utiliza câmeras, em conjunto com o sistema de projeção, para captar a interação do

usuário com o sistema. Uma vantagem de se utilizar essa abordagem de projetores para

visualização é a maior facilidade para exibição dos objetos virtuais, pois eles seriam de

toda forma projetados em alguma superfície para o usuário [46]. Como a visualização

baseada em projetores necessita de uma superfície ou objeto para projetar a cena, podem

existir algumas superfícies onde a projeção não é possível devido a problemas de

oclusão. As cenas também são afetadas em relação à luminosidade, cor e textura do

ambiente no qual estão sendo projetadas. Além disto, outra questão associada é a

mobilidade, pois esses sistemas são montados em um ambiente previamente preparado

para a aplicação.

Apesar dos pontos negativos mencionados, está é uma abordagem muito

interessante e várias aplicações importantes vêm sendo criadas, como a Magic Table

[8][64]. Nesta aplicação o usuário escreve em um quadro branco com um pincel

atômico e ele pode ter uma cópia virtual de tudo que escreveu. O material escrito é

capturado através de uma câmera e projetado de volta no quadro branco sobrepondo a

escrita original e mantendo a cor da caneta. Estes objetos virtuais podem então ser

manipulados, podendo ser aumentados, duplicados, movidos ou escondidos. A Figura 9

mostra o ambiente para a utilização desta aplicação e a Figura 10 ilustra a aplicação

sendo utilizada.

Figura 9. Ambiente para utilização de uma Interface Baseada em Projetor.

Page 24: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 24

Figura 10. Aplicação Magic Table.

2.2.2. Interfaces de Interação

As interfaces de interação são aquelas utilizadas pelo usuário para interagir com

o sistema, entrando dados necessários para que ele possa realizar a tarefa desejada. Os

sistemas de RA geralmente possuem uma ou mais interfaces de interação e uma

interface para visualização para que o usuário visualize os objetos reais e virtuais ao

mesmo tempo.

Para a criação da TIARI foram combinadas algumas interfaces de interação para

dar suporte à entrada de texto. Nela são utilizadas uma interface tradicional de RV

representada por uma luva de reconhecimento de gestos e uma interface bare hand

utilizando marcadores fiduciais. Estas formas de interface, bem como outras estudadas,

serão mais bem detalhadas ao longo desta seção.

2.2.2.1. Interfaces Tradicionais de RV

Nos sistemas de RA também podem ser utilizados dispositivos projetados, a

priori, para os ambientes de RV. Dispositivos como luvas, joysticks, tapetes com

sensores, dispositivos de tracking, entre outros, são muito utilizados em aplicações de

RA. Luvas, por exemplo, oferecem uma maneira prática de enviar gestos aos sistemas.

Ao invés de interagir com um teclado, o usuário pode gesticular com as mãos e o

sistema reconhecer este movimento realizando a tarefa correspondente àquela ação. Na

concepção da TIARI uma luva que permite reconhecimento de gestos é utilizada e pode

ser visualizada através da Figura 11. Os gestos reconhecidos pela luva dão suporte à

funcionalidade que faz com que partes do teclado sejam mostradas à medida que o

usuário as solicita. O modelo e funcionamento da TIARI serão mais bem detalhados no

Capítulo 3, proporcionando uma melhor compreensão da função desta luva.

Page 25: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 25

Figura 11. Luva de gestos utilizada na TIARI.

Em RA também são muito utilizadas luvas com marcadores para identificar

pontos de referência para detecção do movimento da mão. Um exemplo deste tipo de

luva é ilustrado na Figura 12, e esta técnica de utilização de marcadores será mais bem

detalhada ao longo desta seção.

Figura 12. Luva com marcadores.

2.2.2.2. Interfaces Bare Hand

A forma de interação bare hand utiliza gestos para enviar informações ao

sistema fazendo com que o usuário interaja através das mãos sem necessariamente ter

um dispositivo ou fios anexados a elas. O sistema é controlado diretamente pelos

movimentos das mãos do usuário, reconhecendo os gestos feitos. Um algoritmo de

localização da posição dos dedos e da mão é utilizado para detectar os movimentos do

usuário em tempo real [7]. Fazer uma apresentação, utilizar a mão como controle

remoto, controlar a mão de um robô, operar dispositivos móveis com espaço limitado

são alguns cenários onde este tipo de interação pode ser utilizado.

Aplicações foram construídas para demonstrar a usabilidade deste tipo de

interação, como por exemplo, o HandSmart [1], que é uma aplicação que simula um

telefone na mão do usuário onde ele utiliza um HMD para visualização e interage com o

Page 26: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 26

sistema através dos dedos para discar o número desejado. Esta aplicação pode ser

visualizada através da Figura 13.

Figura 13. Aplicação HandSmart.

Esta forma de interação foi utilizada na TIARI para a exibição das letras do

teclado a serem digitadas. As letras são mostradas na mão do usuário para que ele possa

digitar. Porém, ao invés de ser utilizada a detecção das partes do dedo do usuário, a

TIARI utiliza marcadores fiduciais colados em uma luva para fazer o tracking da

posição e orientação para exibir os objetos virtuais (teclado) e para detectar a letra

digitada utiliza a informação de oclusão destes marcadores pelo usuário. Esta luva com

marcadores pode ser visualizada através da Figura 14 (a), bem como as teclas que são

mostradas ao usuário (Figura 14 (b)). Maiores detalhes sobre as funcionalidades e

funcionamento da TIARI estão contemplados no Capítulo 3.

(a) (b)

Figura 14. Interface bare hand utilizada na TIARI: (a) Luva com marcadores para tracking; (b) Interface

do teclado.

Algumas das maiores vantagens de se utilizar esse tipo de interação são: os

sistemas podem utilizar dispositivos pequenos operados a certa distância; o número de

partes mecânicas do dispositivo pode ser diminuído fazendo com que ele tenha uma

Page 27: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 27

maior durabilidade; interfaces de fácil usabilidade podem ser desenvolvidas; um tipo de

interação bem natural pode ser obtido quando utilizado junto com um reconhecedor de

voz, por exemplo.

2.2.2.3. Interfaces Tangíveis

As interfaces tangíveis são interfaces onde os usuários utilizam objetos reais,

instrumentos, superfícies e espaços como interfaces para interagir com os sistemas

[60][61]. A manipulação de objetos reais faz com que a interação do usuário com o

sistema seja bastante intuitiva, pois é uma forma natural de interação. Neste caso, estes

objetos são mapeados, um a um, nas operações dos objetos virtuais.

Interfaces de RA tangíveis são aquelas onde: (1) cada objeto virtual é registrado

a um objeto físico real; (2) o usuário interage com objetos virtuais manipulando os

objetos físicos correspondentes. RA tangível permite misturar o espaço físico onde

vivemos e o espaço virtual que nós visualizamos e interagirmos com informações

digitais [9]. Isto resulta em um conceito de espaço aumentado onde a informação digital

e os objetos podem ser manipulados como se fossem todos reais.

Um conjunto muito utilizado de interfaces tangíveis utiliza marcadores para

rastrear a posição dos objetos. Marcadores são objetos destacados no mundo real e que

são utilizados como referência para interação com o sistema. Um marcador pode ser um

papel com um determinado padrão impresso, pode ser uma bolinha colorida, uma caneta

com a ponta colorida, entre outros; apenas é necessário algo que possa ser identificado e

diferenciado dos objetos reais. É necessário pouco processamento sobre os marcadores,

afinal são objetos fáceis de serem identificados no mundo real, fazendo com que esta

estratégia seja muito boa para sistemas de RA móveis.

Marcadores de papel são muito utilizados, pois são de baixo custo, fáceis de

serem confeccionados, versáteis e podem ser colocados em qualquer lugar. Um padrão é

colocado em um marcador para ser identificado e isto torna possível o rastreamento

deste papel. Marcadores podem ser também aplicados a formas 3D, como cubos,

pirâmides ou esferas. Isto pode influenciar ou até melhorar a forma de interação do

usuário com o marcador, dando espaço a mais uma forma mais intuitiva de interação do

usuário com o sistema. Este tipo de interface vem sendo bastante utilizado em

aplicações de RA devido à facilidade e a simplicidade de seu uso e um exemplo de

Page 28: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 28

marcadores pode ser visualizado na Figura 15. Cabe ressaltar que a interface TIARI

desenvolvida neste trabalho também aplica os conceitos de interfaces tangíveis

mencionados aqui, como pode ser observado na Figura 14 (a).

Figura 15. Marcadores para detecção durante a interação.

Várias aplicações vêm sendo desenvolvidas em várias áreas utilizando-se este

tipo de interface. Um exemplo de interface tangível é o I/O Brush [50], que é uma

ferramenta para desenho que captura texturas, cores e movimentos do mundo real para

pintar sobre uma tela. O pincel, que se parece com um pincel real, tem uma câmera com

luzes e sensores de toque embutidos nele. A Figura 16 mostra o I/O Brush.

Figura 16. A interface tangível I/O Brush.

2.2.2.4. Interfaces Móveis

Os dispositivos móveis podem ser vistos como interfaces de visualização e de

interação ao mesmo tempo. Eles permitem que o usuário possa fazer atividades que não

seriam possíveis em um sistema comum, como por exemplo, o usuário poder através do

seu PDA (Personal Digital Assistant) visualizar informações sobre um determinado

quadro em uma visitação a um museu.

Page 29: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 29

Com a popularização e aumento da capacidade dos dispositivos móveis, como

telefones celulares, handhelds, notebooks, eles tornaram-se interfaces muito utilizadas.

Na área de RA sua utilização também tem crescido bastante. Os dois tipos de interfaces

móveis mais utilizados são os Wearable Computers e os dispositivos móveis.

Wearable Computers são aqueles que o usuário leva consigo de uma forma

natural, sem causar muito incômodo pelo peso, forma, ou posição de uso [1]. Para isso,

eles devem poder ser usados quando o usuário está em movimento e com pelo menos

uma das mãos livres. Eles devem estar sempre disponíveis, ou seja, devem estar num

estado que garanta pronta resposta a qualquer instante. Além disso, embora a tendência

seja fazer com que estes equipamentos tenham algum poder de decisão (inteligência

artificial), eles devem sempre permitir o controle pelo usuário. Uma grande contribuição

dos Wearable Computers é na área de entretenimento. Este tipo de equipamento é muito

utilizado para jogos e para que pessoas interajam num ambiente social como, por

exemplo, em um museu onde o usuário pode utilizar um Wearable Computer enquanto

passeia e visualiza vários tipos de informações. Um exemplo de Wearable Computer

pode ser visualizado através da Figura 17.

Figura 17. Wearable Computer.

A TIARI foi validada utilizando um Wearable Computer denominado miva [56],

pois a aplicação à qual ela foi integrada, o mivaDesk [55], utiliza este dispositivo como

plataforma e pode ser visualizado através da Figura 18. Como a TIARI foi projetada

para suportar sistemas que possuem a característica de mobilidade, ela se configura

também como uma interface móvel. Mais detalhes sobre esta aplicação e sobre o

modelo da TIARI podem ser encontrados no Capítulo 3.

Page 30: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 30

Figura 18. Plataforma miva.

Os dispositivos móveis, da mesma forma que os Wearable Computers, podem

dar suporte a vários tipos de aplicações de RA. A diferença básica entre eles é que o

usuário não precisa carregar o dispositivo móvel junto ao seu corpo. Os dispositivos

móveis são aparelhos comuns no cotidiano das pessoas, como por exemplo, handhelds,

laptops, PDAs e telefones celulares. A classe mais comum de dispositivos móveis é a

dos telefones celulares. Esta classe de dispositivos vem crescendo bastante, pois os

modelos mais novos já possuem uma capacidade de processamento mais elevada e

recursos importantes para aplicações de RA, como câmeras embutidas e telas maiores.

2.2.2.5. Interfaces Colaborativas

Os sistemas de RA Colaborativa, campo que vem crescendo bastante na área,

permitem que os usuários possam interagir entre si estando ou não no mesmo espaço

físico. Os ambientes onde os usuários interagem em um mesmo espaço físico são

chamados de Colaboração Face a Face (Face-To-Face Collaboration). Já em situações

onde os usuários estão em locais completamente distintos este tipo de colaboração é

chamada de Colaboração Remota (Remote Collaboration). Cinco características

principais foram identificadas nos sistemas de RA Colaborativa [10], e são citados

abaixo:

� Virtualidade: objetos que não existem no mundo real podem ser

visualizados e examinados por todos os usuários.

� Aumento: objetos reais podem ser aumentados através de informações

anexadas a eles como, por exemplo, anotações.

Page 31: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 31

� Cooperação: vários usuários podem se ver e cooperar de uma forma

natural.

� Independência: cada usuário controla seu ponto de vista

independentemente.

� Individualidade: as informações visualizadas podem ser customizadas para

cada usuário.

Nos sistemas de Colaboração Face a Face, os usuários podem interagir através

dos objetos virtuais ou de objetos reais, por exemplo, utilizando interfaces tangíveis.

Um exemplo deste tipo de colaboração utilizando-se objetos virtuais é um ambiente

onde os usuários utilizam um HMD para visualizar os objetos virtuais e o ambiente

onde estão inseridos, e onde os objetos virtuais são apresentados aos vários usuários

para que possam interagir com os mesmos. Todos os usuários visualizam o mesmo

objeto, dando a sensação de o objeto virtual ser um objeto real. A Figura 19 ilustra um

ambiente deste tipo.

Figura 19. Colaboração Face a Face.

Os sistemas que utilizam Colaboração Remota fazem com que usuários tenham a

experiência de colaborar de forma remota com objetos compartilhados. Este tipo de

sistema pode ser utilizado para áudio-vídeo conferências, jogos on-line, filmagem de

cenas para TV, dentre outras aplicações. Neste tipo de sistema, os usuários podem

visualizar uns aos outros através de uma tela ou HMD. Um exemplo deste tipo de

interação é um sistema de videoconferência onde é utilizado um HMD para poder

visualizar os outros usuários em marcadores dispostos no seu ambiente de trabalho. As

pessoas que participam desta conferência aparecem projetadas no mundo real para o

usuário. A Figura 20 ilustra um ambiente de videoconferência baseada em RA.

Page 32: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 32

Figura 20. Videoconferência através de Colaboração Remota.

2.3.2.3.2.3.2.3. TécnicasTécnicasTécnicasTécnicas para Entrada de Texto para Entrada de Texto para Entrada de Texto para Entrada de Texto

A funcionalidade de entrada de texto, na maior parte das interfaces utilizadas em

aplicações de RA é inexistente, pois desenvolver técnicas usáveis e eficientes para

entrada de texto é uma tarefa complexa, fazendo com que os desenvolvedores evitem

este tipo de interação em suas aplicações [29][12]. Porém, isto não significa que este

tipo de interface é menos importante. Existem cenários em RA onde a entrada de texto é

importante, e alguns deles estão listados abaixo:

� Anotações – em um sistema de RA móvel, o usuário pode ter a

necessidade de fazer anotações referentes a um determinado objeto.

� Entrada de informações para o sistema – em um sistema de desktop

virtual 3D, a exemplo do mivaDesk [55], se faz necessário entrar o nome

de um contato a ser armazenado na agenda.

� Comunicação entre usuários – em um sistema colaborativo os usuários

podem querer se comunicar através de mensagens de texto, por exemplo,

em um sistema de chat entre visitantes de um museu.

� Alteração do valor de parâmetros – aplicações que requerem entrada de

números para determinar valores de configuração de parâmetros (por

exemplo, aplicações de CAD (Computer-Aided Design), configuração de

parâmetros em jogos, entre outros).

Page 33: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 33

Algumas técnicas para entrada de texto foram propostas e classificadas [12].

Estas técnicas dividem-se em quatro grupos: baseadas em teclado, caneta, gestos ou

reconhecimento de voz. A TIARI é uma interface baseada em teclado, pois utiliza a

metáfora de um teclado real. Estas técnicas serão detalhadas e discutidas ao longo desta

seção.

2.3.1. Baseadas em Teclado

As técnicas que se enquadram nesta categoria utilizam um teclado físico ou a

metáfora de um teclado real. Apesar de ser possível utilizar um teclado convencional em

aplicações de RA, ele não é aconselhável, pois como a maioria das aplicações de RA

requer mobilidade este tipo de interface não é muito adequado devido ao seu peso e

tamanho. Algumas técnicas baseadas em teclado que serão discutidas nesta subseção

são: teclados em miniatura, teclados com poucas teclas, teclados chord, teclados pinch e

teclados soft.

A técnica de teclado em miniatura consiste em utilizar um teclado de tamanho

reduzido para que o usuário consiga carregar ou “vestir” o mesmo. Esta técnica tem a

vantagem de utilizar o layout QWERTY [39], o que facilita a utilização por parte dos

usuários, sendo assim bastante popular entre alguns tipos de dispositivos móveis, como

os PDAs. Este tipo de teclado pode ser carregado em uma das mãos ou vestido no

antebraço do usuário e um exemplo deste tipo de interface pode ser visualizado através

da Figura 21. Como este tipo de teclado possui as teclas menores, a digitação não pode

ser feita normalmente utilizando-se os 10 dedos, fazendo com que esta técnica não tenha

a mesma usabilidade de um teclado convencional com o qual os usuários estão

acostumados.

Figura 21. Teclado em miniatura.

Page 34: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 34

Para minimizar este problema originado pelo tamanho pequeno das teclas, foi

proposta uma evolução da técnica de teclado em miniatura, que é a técnica de teclado

com poucas teclas. Esta técnica tem como objetivo fazer com que o teclado caiba na

mão do usuário a partir da redução de teclas do mesmo. Um exemplo bastante

conhecido deste tipo de teclado são os teclados utilizados em telefones celulares, como

o ilustrado na Figura 22. Nesta técnica, uma tecla representa vários caracteres em uma

determinada ordem e para o usuário digitar um caractere ele aperta a tecla associada ao

caractere desejado até que o mesmo seja mostrado.

Figura 22. Teclado com poucas teclas.

Outra técnica utilizada é a do teclado chord ou de acordes, que é um dispositivo

desenvolvido com o objetivo de prover todas as funcionalidades de um teclado

convencional, porém com bem menos teclas. A digitação de um caractere é feita através

de uma combinação de teclas pressionadas ao mesmo tempo, analogamente a um acorde

feito no piano, o que originou o nome desta técnica. Um exemplo deste dispositivo pode

ser visualizado através da Figura 23, possuindo 12 teclas e não requerendo mais de

duas teclas pressionadas ao mesmo tempo. Este tipo de teclado vem sendo estudado em

várias aplicações que requerem mobilidade, porém em um estudo de usabilidade

realizado por Bowman et al. [14] ela mostrou-se com o pior desempenho, o maior

número de erros e a menos indicada pelos usuários. Entretanto, este estudo com os

usuários não foi feito por um longo período, havendo a possibilidade de este

desempenho melhorar ao longo de várias tentativas dos usuários.

Page 35: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 35

Figura 23. Teclado chord.

Outro exemplo baseado em acordes é a chamada Chording Glove [49], uma luva

similar ao teclado chord que possui sensores na ponta dos dedos e os acordes são

formados quando a ponta dos dedos toca uma superfície. Esta luva é composta por três

partes: sensores dos dedos, botões de shift e teclas de funcionalidades. Os sensores dos

dedos servem para detectar quando o dedo está sendo pressionado sobre alguma

superfície. Já os botões de shift são utilizados para alternar entre as funções de caixa

alta, numeração e comandos de controle. E, por fim, as teclas de funcionalidades são

teclas que se encontram atrás da mão de uma forma alcançável pela outra mão. Esta

luva pode ser visualizada na Figura 24.

Figura 24. Chording Gloves.

Além destas, outra técnica proposta foi a do teclado pinch ou de pinça, que foi

desenvolvida a princípio para entrada de textos em sistemas de RV [13]. Esta técnica

utiliza luvas pinch que são luvas que conseguem detectar quando dois dedos estão se

tocando (Figura 25 (a)). O conceito básico dela é funcionar como uma pinça feita entre

Page 36: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 36

o polegar e outro dedo da mão do usuário, representando uma tecla pressionada (Figura

25 (b)). Por exemplo, a letra ‘a’ é representada através de uma pinça entre o dedo

mínimo e o polegar e a letra ‘s’ através de uma pinça entre o dedo anelar e o polegar.

Caso o usuário queira digitar uma letra que não esteja contemplada com as 4 possíveis

pinças, como por exemplo, a letra ‘g’ ele gira a mão direita para selecionar as letras

internas. Para o usuário escolher a linha do teclado que quer utilizar para digitação ele

move sua mão para junto e para longe de seu corpo, escolhendo a linha mais abaixo ou

mais acima, respectivamente.

(a) (b)

Figura 25. Teclado Pinch: (a) Luvas pinch; (b) Ambiente virtual.

Por fim, os teclados soft são outra opção para entrada de texto. Este teclado é um

dispositivo virtual implementado em software onde o usuário pressiona teclas virtuais

ao invés de teclas reais para a entrada de caracteres, e pode ser visualizado através da

Figura 26. Uma das maiores desvantagens deste tipo de teclado é que o usuário não tem

feedback háptico, ou seja, a interface não dá feedback sensorial ao usuário.

Figura 26. Teclado Soft.

Page 37: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 37

Um exemplo de teclado soft utilizado em sistemas de RA é o ARKB

(Augmented Reality Keyboard) [32] que detecta a posição dos dedos do usuário

utilizando marcadores na ponta dos dedos, fazendo assim a digitação dos caracteres

desejados. Este teclado pode ser visualizado através da Figura 27.

Figura 27. ARKB (Augmented Reality Keyboard).

A TIARI utiliza esta técnica de entrada de texto baseada em teclado através da

aplicação mista de um teclado em miniatura, um teclado soft e um teclado com poucas

teclas. A característica de teclado em miniatura vem da diminuição do tamanho do

teclado existente; além desta, também possui características de um teclado com poucas

teclas, visto que só mostra 9 teclas por vez, e possui um teclado considerado um teclado

soft que é um layout completo do teclado que fica sendo visualizado pelo usuário no

canto direito de sua tela, dando um melhor entendimento de qual parte do teclado ele

está utilizando. O modelo da TIARI será apresentado ao longo do Capítulo 3.

2.3.2. Baseadas em Caneta

A entrada de texto também pode ser feita utilizando-se interfaces baseadas em

canetas onde o usuário possui uma caneta e uma superfície para escrever. Esta técnica

pode utilizar duas abordagens: a que reconhece a escrita e traduz em caracteres digitais

ou a que não reconhece e apenas guarda a imagem do texto escrito, também conhecida

como “tinta digital” [12].

A entrada de texto baseada em reconhecimento de escrita é em vários casos

bastante similar ao reconhecimento de gestos. Sua unidade básica é o stroke ou traço,

que é o movimento iniciado quando a caneta toca a superfície e finalizado quando a

caneta é retirada da mesma. Vários esquemas de reconhecimento foram propostos. O

Graffiti [24] é uma técnica que reconhece caractere a caractere baseado em um stroke

feito pelo usuário, e pode ser visualizado na Figura 28.

Page 38: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 38

Figura 28. Técnica de reconhecimento de caracteres Graffiti.

Outras técnicas como o Cirrin [34] e o Quikwriting [41], que reconhecem

palavras, também são utilizadas para esta finalidade. Por exemplo, no Cirrin um stroke

começa na área central de um círculo e se move por regiões que possuem caracteres,

formando assim as palavras. O seu funcionamento pode ser observado na Figura 29.

Figura 29. Técnica de reconhecimento de palavras Cirrin.

A outra forma de entrada de texto utilizando-se caneta é a de “tinta digital”, que

é uma técnica onde a imagem escrita não é reconhecida em caracteres digitais e sim, sua

imagem é armazenada para futura visualização. A desvantagem de se utilizar esta

técnica é que o usuário não tem como fazer buscas sobre os textos digitados e é muito

difícil de ser editada. Porém, como é bastante natural, esta técnica pode ser aplicada em

vários sistemas, a exemplo do Virtual Notepad [44], ilustrado na Figura 30.

Figura 30. Utilização da técnica de “tinta digital” no Virtual Notepad.

Page 39: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 39

2.3.3. Baseadas em Gestos

Como muitas interações em sistemas de RA são feitas com as mãos, é natural

considerar técnicas para entrada de texto que tirem proveito da posição, orientação e

movimentação da mão [12]. Apesar de apresentar algumas dificuldades técnicas como a

calibração de dados da luva e o reconhecimento do gesto, ela pode ser considerada uma

poderosa forma de interação para entrada de texto nestes sistemas. Pode-se ter este

reconhecimento de gestos utilizando três formas: linguagem de símbolos, gestos

numéricos e gestos instantâneos.

A linguagem de símbolos, amplamente utilizada, é bastante descritiva e permite

que os usuários “falem” rapidamente. Um projeto chamado GloveTalk [21] desenvolveu

um sistema que funciona como um sintetizador de fala. Esta aplicação é baseada no

reconhecimento de gestos pelo sistema produzindo a fala correspondente em tempo real.

Porém, o maior problema desta abordagem é que apenas uma pequena parte da

população conhece a linguagem de sinais, fazendo com que esta técnica seja restrita a

um conjunto pequeno de pessoas.

Para entrada numérica em um sistema, gestos numéricos são uma forma ideal de

interação, pois utilizam os dedos para representar os números de 0 a 9. Estes gestos são

universais e podem ser utilizadas uma ou duas mãos. Porém, esta técnica ainda é pouco

aplicada [12].

As duas formas de interação acima mencionadas requerem um contínuo

reconhecimento dos gestos utilizando uma luva ou alguma forma de se detectar os

ângulos das juntas da mão. Entretanto, dispositivos instantâneos como luvas pinch, por

exemplo, podem prover gestos limitados, especialmente quando um tracker é conectado

à luva. O teclado pinch mostrado anteriormente é um exemplo de utilização desta

técnica.

2.3.4. Baseadas em Reconhecimento de Voz

Além das técnicas citadas acima, a voz também pode ser utilizada para entrada

de texto em sistemas de RA. Esta técnica tem vários aspectos positivos: a mão do

usuário fica livre para poder realizar outras atividades, permite entrada de grande

Page 40: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 40

quantidade de texto de uma forma precisa e eficiente e é uma forma natural do usuário

interagir.

Porém, esta técnica é raramente utilizada em sistemas de RA, pois embora esta

tecnologia venha evoluindo bastante, alguns estudos relatam que reconhecimento de voz

é lento, não possui a precisão necessária e requer treino para ser utilizada, fazendo com

que não seja considerada suficientemente boa para este tipo de interação [12]. Outros

motivos que levam a não utilização deste tipo de técnica é a falta de privacidade, o

barulho gerado no ambiente, o problema de incomodar as outras pessoas, a estranheza

que muitas pessoas sentem em falar com uma máquina, entre outros. Além disto, uma

pesquisa mostra que usuários preferem digitar e pensar, a falar e pensar [12].

Para entrada de texto, podem-se considerar três formas de interação:

reconhecimento de um caractere, reconhecimento de palavras e entrada de texto via voz

sem reconhecimento. No caso do reconhecimento de um caractere, o usuário necessita

falar caractere por caractere até formar as suas frases, o que faz com que este tipo de

interação não seja muito utilizado, pois é uma forma muito lenta e “chata” para entrada

de texto. Já o reconhecimento de palavras se mostra uma forma mais interessante para

entrada de texto, pois o usuário pode falar as frases com mais naturalidade. Esta técnica

é mais fácil de ser aceita, porém mais suscetível a erros de reconhecimento. Por fim, o

não reconhecimento, também conhecido como voz digital, é algo análogo ao conceito

de “digital ink” ou “tinta digital” citado anteriormente. Nesta técnica apenas a voz é

gravada, sendo muito complicado fazer uma edição posterior destes dados, pois como

não está em formato apropriado o computador não pode interpretar o que foi falado para

poder fazer uma alteração posterior.

2.3.5. Considerações sobre a Aplicação das Técnicas

Testes de usabilidade com estas várias técnicas de entrada de texto foram feitos e

um conjunto de boas práticas é apresentado abaixo [12]:

� Utilizar o layout QWERTY caso a entrada de texto não seja freqüente ou

a maioria dos usuários é iniciante;

� Feedback háptico é um componente importante do teclado, então

teclados com botões físicos devem ser usados sempre que possível. Se

Page 41: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 41

forem utilizados teclados virtuais, colocar as teclas em uma superfície

física;

� Não se esquecer do conforto do usuário;

� Não assumir que reconhecimento de voz é a melhor técnica;

� Considerar técnicas e dispositivos especializados, e um layout não-

padrão apenas se os usuários vão entrar texto frequentemente;

� Utilizar digital ink quando a velocidade for o aspecto mais importante de

usabilidade.

2.4.2.4.2.4.2.4. AplicaçõesAplicaçõesAplicaçõesAplicações de RA com Suporte a Entrada de Textode RA com Suporte a Entrada de Textode RA com Suporte a Entrada de Textode RA com Suporte a Entrada de Texto

Nesta seção serão mostradas algumas aplicações que necessitam de entrada de

texto e as interfaces projetadas para as mesmas. As aplicações aqui mostradas são

aplicações que utilizam interfaces baseadas em teclados, visto que a TIARI utiliza esta

técnica que é o foco desta dissertação de mestrado.

Uma aplicação bastante interessante com necessidade de entrada de texto e que

faz uso de anotações é utilizada em um cenário colaborativo para facilitar tarefas de

logística para contingente militar em alto mar [58]. Um técnico de manutenção faz uma

requisição urgente para a troca de uma hélice de helicóptero. O funcionário do depósito

recebe esta requisição, encontra a hélice no depósito através de indicadores virtuais que

mostram sua localização e então ele envia a hélice desejada, adicionando uma anotação

a ela para indicar sua urgência. Seu supervisor checa esta anotação feita, entra em

contato com o solicitante e o procedimento é continuado. Em outros momentos desta

aplicação também são feitas anotações ao longo do processo por outras pessoas

envolvidas. A forma que esta aplicação faz a entrada de texto é através de uma luva

pinch com botões físicos nas pontas dos dedos, onde dois ou mais dedos precisam ser

pressionados ao mesmo tempo, gerando uma combinação de 49 possíveis caracteres a

serem digitados. Esta luva pode ser visualizada através da Figura 31 juntamente com a

tabela com de combinações de dedos para digitar os caracteres. Por exemplo, se o

usuário tocar o polegar e o indicador da mão direita e simultaneamente pressionar o

polegar e o dedo médio da mão esquerda o caractere ‘V’ é digitado. Esta interface foi

Page 42: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 42

desenvolvida para ambientes que necessitam de digitação de mensagens pequenas até

160 caracteres, utiliza um subconjunto do conjunto de caracteres ASCII (American

Standard Code for Information Interchange) e suporta várias abreviações e linguagem

especializada.

Figura 31. Interface baseada em teclado pinch utilizada em aplicação militar.

Outra aplicação que necessita entrada de texto utiliza a entrada de texto para

fazer buscas de livros em uma biblioteca real, o ARLib [62][47]. O usuário utiliza um

teclado virtual ou um Graffiti Pad [24] (Figura 32) que é visualizado para fazer buscas

por autor, título, etc. A aplicação faz a busca e indica a prateleira onde o livro se

encontra. Então o usuário se locomove pela biblioteca até a prateleira desejada e quando

a visualiza, a área onde o livro se encontra é selecionada e mostrada ao usuário. Esta

aplicação pode ser vista através da Figura 33.

(a) (b)

Figura 32. ARLib: (a) Forma de busca de livros. (b) Grafitti Pad.

Page 43: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 43

Figura 33. Aplicação ARLib.

Outro exemplo de aplicação que necessita de entrada de texto é o MagicMeeting

[48], um sistema colaborativo que utiliza interfaces tangíveis para fazer reuniões,

apresentações, etc. Os usuários utilizam esta aplicação em um ambiente especial para a

mesma, que é uma sala de reunião com uma mesa para até 4 pessoas, como pode ser

visualizado na Figura 34. Nesta aplicação os usuários utilizam uma interface tangível

chamada de “prato de bolo” ou cake platter e é neste prato que os objetos 3D são

compartilhados entre os participantes da reunião. Nesta aplicação, entrada de texto se

faz necessária para fazer anotações sobre alguns pontos importantes, colocar labels nos

objetos ou até mesmo anotar contatos de algum cliente em comum. A entrada de texto

neste sistema pode ser feita através de teclados tradicionais, um teclado virtual existente

utilizado com ajuda de um mouse convencional ou utilizando reconhecimento de voz.

Figura 34. Aplicação MagicMeeting.

Por fim, uma aplicação que necessita de entrada de texto é o desktop virtual 3D

chamado mivaDesk [55]. Este desktop virtual possui algumas aplicações que necessitam

Page 44: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 44

de entrada de texto, tais como agenda de compromissos e agenda telefônica. Para fazer

esta entrada de texto, o mivaDesk possui um teclado virtual onde o usuário digita os

caracteres movendo um cursor na tela movendo sua mão. A detecção deste movimento é

feita através de um tracker anexado a uma luva de gestos e para fazer a digitação da

tecla desejada um gesto parecido com o clique de um mouse é feito. Esta aplicação, bem

como o teclado soft utilizado podem ser vistas através da Figura 35. Esta aplicação é

objeto do estudo de caso desta dissertação e será mais bem detalhada no próximo

capítulo.

Figura 35. Teclado soft do mivaDesk.

2.5.2.5.2.5.2.5. BibliotecasBibliotecasBibliotecasBibliotecas para o Desenvolvimento de Aplica para o Desenvolvimento de Aplica para o Desenvolvimento de Aplica para o Desenvolvimento de Aplicações ções ções ções

de RAde RAde RAde RA

Conforme visto na seção anterior, a TIARI é uma interface baseada em vídeo

que utiliza marcadores fiduciais para o posicionamento dos objetos 3D no mundo. Este

modelo de aplicação de RA que utiliza interfaces baseadas em vídeo e marcadores

fiduciais é bastante utilizado nesta área e segue um fluxo de funcionamento básico que

pode ser visualizado através da Figura 36. Primeiramente, a imagem do mundo real é

capturada utilizando um sensor de imagem, geralmente associado a alguma biblioteca

que faz o papel de repassar essa imagem à aplicação. Após isso, a aplicação busca na

imagem o padrão dos marcadores fiduciais, também geralmente com o auxílio de

alguma biblioteca de detecção de marcadores. Uma vez que estes marcadores são

detectados, a posição e orientação dos mesmos são calculadas para servir de referência

aos objetos virtuais que serão mostrados ao usuário. Por fim, a renderização dos objetos

Page 45: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 45

virtuais é feita a partir desses dados obtidos e a cena real com os objetos virtuais

misturados é exibida ao usuário.

Figura 36. Fluxo de aplicações de RA baseadas em vídeo com marcadores fiduciais.

Como pode ser observado, para facilitar o desenvolvimento de aplicações de

RA, várias ferramentas são utilizadas para agrupar funcionalidades comuns a este tipo

de sistema como, por exemplo, calibração de câmera, detecção de movimentos do

usuário e dos marcadores, renderização de objetos virtuais, etc. Estas bibliotecas foram

desenvolvidas utilizando várias linguagens de programação diferentes e com propósitos

diversos; algumas delas são voltadas para prototipagem, outras para dispositivos

móveis, outras para aplicações colaborativas, entre outros tipos. As ferramentas são

muito úteis para o desenvolvimento de aplicações, pois diminuem a taxa de erros de

desenvolvimento e o tempo gasto nesta atividade.

A classe de ferramentas mais utilizada em aplicações de RA é baseada em

detecção de marcadores 2D, para fazer o posicionamento dos objetos virtuais. Nesta

seção serão detalhadas algumas ferramentas baseadas em detecção de marcadores

bastante utilizadas. Também serão mostradas algumas ferramentas estudadas para

captura de vídeo e renderização de objetos 3D, partes importantes no desenvolvimento

de aplicações de RA. Por fim, será mostrada uma biblioteca utilizada para facilitar o

desenvolvimento de aplicações de RA que faz a abstração de bibliotecas de detecção de

marcadores, captura de vídeo e renderização de objetos 3D, o OgreAR.

2.5.1. Bibliotecas para Detecção de Marcadores

A TIARI requer detecção de marcadores pequenos, pois da forma que a interface

foi projetada, o usuário precisa conseguir ver 9 marcadores em sua mão. Algumas

bibliotecas foram pesquisadas e testadas com este propósito de utilização de marcadores

menores que o tamanho comum. Após alguns testes, concluiu-se que o ARTag possuía

os marcadores mais adequados, portanto eles foram utilizados na TIARI. Nesta seção

serão mostradas as bibliotecas estudadas para detecção de marcadores, que são

bibliotecas amplamente utilizadas em aplicações de RA.

Page 46: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 46

2.5.1.1. ARToolkit

Uma das bibliotecas mais utilizadas é o ARToolkit [2], desenvolvida pelo Dr.

Hirokazu Kato e seus colegas da Universidade de Osaka, a priori para dar suporte a

aplicações colaborativas [27]. O ARToolkit é uma biblioteca de código aberto, escrita

em C, que utiliza uma técnica onde é calculada em tempo real a posição e orientação de

uma câmera relativa a marcadores fiduciais físicos para que os objetos virtuais possam

ser renderizados precisamente. Estes marcadores são impressos geralmente em papel e

definidos como uma imagem de um quadrado de borda preta contendo um padrão na

parte interna. Exemplos deste tipo de marcadores, chamado baseado em template,

podem ser visualizados através da Figura 37.

Figura 37. Marcadores fiduciais baseados em template utilizados pelo ARToolkit.

Algumas das características dessa biblioteca são: tracking de posição e

orientação dos marcadores através da captura da cena por uma câmera; utilização de

marcadores baseados em um padrão que é representado por um quadrado com bordas

pretas e um template interno; permite utilizar qualquer marcador desde que ele seja um

quadrado com bordas pretas; possibilita calibrar a câmera de uma forma fácil; dá

suporte a aplicações de RA em tempo real dado seu desempenho; multi-plataforma (SGI

IRIX, Linux, Mac OS e Windows); possui código fonte livre e completo, e para o

funcionamento do ARToolkit são necessários apenas um computador, uma câmera

acoplada e alguns marcadores de papel.

O sistema de detecção de marcadores do ARToolkit é bastante simples.

Primeiramente, ele detecta as bordas dos quadrados identificando que aquela imagem

corresponde a um marcador. Após isso, é identificado o conteúdo interno do marcador e

o ARToolkit compara com os padrões de marcadores previamente conhecidos,

identificando, assim, qual marcador está sendo visualizado para poder fazer a

renderização do objeto virtual desejado naquela posição. A Figura 38 ilustra o fluxo de

funcionamento.

Page 47: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 47

Figura 38. Fluxo de funcionamento do ARToolkit.

O ARToolkit é adequado para vários tipos de aplicação, porém possui alguns

pontos negativos que podem impedir sua utilização em alguns casos. A utilização de

correlação entre imagens para verificar e identificar marcadores causa uma alta taxa de

falso positivo (detectar marcadores onde não existem) e falso negativo (não detectar

marcadores que estão presentes), o que se caracteriza como um ponto negativo da

biblioteca. Para tentar contornar estes problemas de falso positivo e falso negativo, o

usuário precisa capturar protótipos de cada marcador através da câmera com a

iluminação do ambiente para chegar a um ponto de equilíbrio entre estas taxas. Por fim,

o desempenho diminui à medida que mais marcadores são utilizados, pois quando um

marcador é detectado ele é comparado a todos os padrões existentes. O ARToolkit foi

utilizado durante o desenvolvimento da TIARI, mas a medida que o tamanho dos

marcadores foi diminuído a biblioteca não conseguiu reconhecê-los, tornando o uso do

ARToolkit inadequado para este trabalho.

Existe, também, o JARToolkit [26] que é uma versão do ARToolkit para a

linguagem de programação Java. O JARToolkit utiliza a Java Native Interface (JNI)

para acessar as funcionalidades do ARToolkit, podendo assim acessar algumas

funcionalidades do ARToolkit. Esta biblioteca não foi testada neste trabalho, pois a

TIARI foi desenvolvida utilizando a linguagem C++.

2.5.1.2. ARTag

Esta biblioteca foi desenvolvida pelo National Research Council of Canada e

consiste em um sistema de detecção de marcadores baseado no ARToolkit [22]. Foi

escrita na linguagem de programação C e não possui código fonte aberto, dificultando

Page 48: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 48

sua utilização. Entretanto, existe uma versão fechada disponível que pode ser utilizada

para fins de estudo e pesquisa.

Seu objetivo principal é aprimorar o mecanismo utilizado no ARToolkit,

minimizando o problema de falso positivo e falso negativo muito freqüente no mesmo.

Para conseguir essa menor taxa de erros, o ARTag utiliza outra abordagem de

reconhecimento, chamada de baseada em ID. Ao invés dos marcadores serem

correlacionados com imagens previamente identificadas (templates), seus padrões

internos são reconhecidos através de um método digital que consiste em dividir o

interior do marcador em uma grade 6x6 onde são identificados valores binários

correspondentes à imagem, de forma que cada marcador gera um identificador único. O

ARTag identifica 2002 marcadores diferentes e existe uma ordem de prioridade de

melhores marcadores disponibilizada aos desenvolvedores. Exemplos de padrões de

marcadores do ARTag podem ser visualizados através da Figura 39.

Figura 39. Padrões de marcadores baseados em ID do ARTag.

O ARTag tem uma boa imunidade em relação à iluminação e oclusão dos

marcadores, ou seja, ele se comporta bem em relação à variações de luminosidade e

também quando parte do marcador está fora da área de visualização da câmera. Uma

comparação entre a detecção dos marcadores do ARTag e do ARToolkit com uma

determinada iluminação foi feita, e o ARTag comportou-se bem melhor em relação a

esta detecção já que ele conseguiu detectar todos os marcadores existentes [23]. Esta

comparação pode ser visualizada através da Figura 40. Nas figuras (a) e (b) são

mostrados marcadores do ARToolkit para serem reconhecidos, já na figura (c) são

mostrados marcadores do ARTag na mesma quantidade e nas mesmas condições de

posicionamento e iluminação para serem reconhecidos. Pode-se observar que todos os

marcadores do ARTag foram encontrados, enquanto vários marcadores do ARToolkit

não foram reconhecidos. A biblioteca ARTag vem sendo bastante utilizada para

detecção de marcadores pequenos e em ambientes onde a luminosidade não é ideal,

Page 49: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 49

condição essencial para a TIARI. Após testes realizados com outras bibliotecas foi

verificado que o ARTag se comportava melhor com o tipo de marcadores escolhido,

sendo assim utilizados no desenvolvimento da TIARI.

(a) (b) (c)

Figura 40. Detecção de marcadores: (a) e (b) com ARToolkit; (c) com ARTag.

2.5.1.3. ARToolkitPlus

O ARToolkitPlus, desenvolvido pela Graz University of Technology, é uma

biblioteca de código fonte aberto baseada no ARToolkit [63]. O código fonte possui

várias otimizações e tem como proposta gerar aplicações eficientes para dispositivos

móveis como PDAs e Smartphones. Os marcadores utilizados são similares aos do

ARToolkit, porém com o padrão interno similar ao ARTag, possuindo uma codificação

que pode gerar 512 identificadores diferentes e que podem ser visualizados na Figura

41. Esta biblioteca permite que os marcadores tenham um tamanho variado de borda.

Sendo assim, a borda pode ser diminuída para que o espaço interno aumente, fazendo

com que marcadores menores possam ser detectados.

Figura 41. Marcadores do ARToolkitPlus.

Além disso, a confusão entre marcadores é diminuída, pois o ARToolkitPlus

utiliza uma técnica de threshold adaptativo, que consiste em perceber alterações de

iluminação capturadas por uma câmera, de forma que a detecção dos marcadores não

seja prejudicada. Outra funcionalidade provida é a capacidade de realizar compensação

em câmeras que geram uma diminuição da luminância radial da imagem, conhecida

como radial luminance falloff. Este fato ocorre em algumas câmeras, onde a imagem

capturada possui bordas escuras fazendo com que essas regiões não sejam detectadas.

Page 50: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 50

Durante o desenvolvimento da TIARI o ARToolkitPlus também foi testado,

porém mesmo com a diminuição das bordas dos marcadores foi apresentada uma alta

taxa de falso negativo durante a detecção. O ARToolkitPlus comportou-se melhor do

que o ARToolkit, porém como o ARTag mostrou-se mais estável ele não foi utilizado.

2.5.2. Bibliotecas para Captura de Vídeo

Para fazer a captura da imagem do mundo real onde serão adicionados os objetos

virtuais, duas bibliotecas foram estudadas com o intuito de facilitar o desenvolvimento

desta parte da aplicação. As bibliotecas estudadas foram o DSVideoLib e o OpenCV,

uma vez que são bastante utilizadas atualmente em RA [42][28][17]. O DSVideoLib

apresentou problemas de compatibilidade com a biblioteca de detecção de marcadores

utilizada na TIARI, o ARTag. Portanto, a TIARI utiliza o OpenCV como biblioteca de

captura de vídeo.

2.5.2.1. DSVideoLib

O DSVideoLib [43][42] é uma biblioteca livre sob licença GPL (GNU General

Public License) que provê fácil acesso à captura de vídeo, independente do dispositivo

de captura. Esta biblioteca é baseada na API do DirectShow, escrita em C++ e foi

desenvolvida para ser utilizada em ambientes Windows 32 bits. A biblioteca

DirectShow é uma biblioteca que faz acesso aos device drivers das câmeras para fazer a

captura de vídeo, porém ela utiliza o Component Object Model (COM) que requer

programação de muito baixo nível, fazendo com que sua utilização seja dificultada.

Portanto, a DSVideoLib tenta diminuir esta dificuldade de programação, ajudando os

desenvolvedores a fazer aplicações que necessitam de entrada de vídeo em tempo real

através de vários dispositivos de captura diferentes (câmeras DV (Digital Video) e

webcams USB, por exemplo) sem necessidade de conhecimento prévio do modelo

COM.

Para o desenvolvimento da TIARI a DSVideoLib não foi utilizada devido a um

problema de compatibilidade com o ARTag, pois este último funciona apenas utilizando

OpenGL e como o DSVideoLib faz uso do DirectShow (parte do DirectX) ele mostrou-

se incompatível com esta biblioteca.

Page 51: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 51

2.5.2.2. OpenCV

OpenCV (Open Source Computer Vision) [40] é uma biblioteca desenvolvida

pela Intel com a finalidade de tratar problemas de visão computacional em tempo real. É

uma biblioteca que possui código fonte aberto, escrita em C/C++ e independente de

sistema operacional, hardware e gerenciador de janelas. Possui funcionalidades de

captura, carregamento e gravação de imagens e vídeos, processamento básico de

imagens, calibração de câmera, entre outras funcionalidades bastante utilizadas no

desenvolvimento de aplicações para RA.

Esta biblioteca tem aplicação em diversas áreas, como interação homem-

máquina, identificação de objetos, segmentação e reconhecimento, reconhecimento de

face, reconhecimento de gestos, tracking de movimentos, determinação da

movimentação rígida da câmera (ego motion), entendimento de movimentos, estruturas

de movimentos e robótica móvel [15].

No desenvolvimento da TIARI, a biblioteca OpenCV foi utilizada por questões

de compatibilidade com a biblioteca de marcadores utilizada, o ARTag, que não

funcionou corretamente ao fazer a integração com o DSVideoLib, biblioteca estudada

em primeira instância. Na TIARI é utilizada apenas a parte de captura de câmera do

OpenCV; a parte de processamento de imagens, por exemplo, não é utilizada neste

trabalho.

2.5.3. Bibliotecas para Renderização

Outra parte importante nas aplicações de RA é como os objetos virtuais são

renderizados junto às imagens do mundo real que foram capturadas. Para facilitar o

desenvolvimento desta parte da aplicação, bibliotecas para renderização de objetos 3D

foram utilizadas. Foram estudadas bibliotecas bastante utilizadas em aplicações

multimídia: OpenGL e DirectX. Além dessas, foi estudada uma biblioteca que serve de

abstração entre essas duas anteriormente citadas: o OGRE. Para a construção da TIARI,

estas bibliotecas foram utilizadas de forma integrada, com exceção do DirectX.

2.5.3.1. OpenGL

O OpenGL é uma biblioteca de código aberto, escrita em C/C++, focada no

desenvolvimento de aplicações gráficas multi-plataforma, 2D e 3D [37]. Esta biblioteca

Page 52: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 52

foi desenvolvida em 1992 pela Silicon Graphics Inc e se tornou a biblioteca mais

utilizada atualmente para desenvolvimento de vários tipos de aplicações gráficas como

aplicações CAD, jogos, multimídia, visualizações científicas, entre outras.

Esta biblioteca possui uma API (Application Programming Interface) com

funções de renderização de objetos 2D e 3D, criação de luzes, materiais, texturas,

efeitos atmosféricos, entre outras facilidades para o desenvolvimento de aplicações. Ela

é bastante utilizada em sistemas de RA para fazer a renderização dos objetos 3D que são

integrados ao mundo real.

Na TIARI, o OpenGL é a base da renderização dos objetos 3D. Acima dele

outras bibliotecas são utilizadas, mas de fato quem cuida da renderização dos objetos

3D é o OpenGL. Esta biblioteca foi utilizada porque, além de ser bastante completa, o

ARTag utiliza o OpenGL como biblioteca auxiliar, não oferecendo, por exemplo,

integração com o DirectX.

2.5.3.2. DirectX

O Microsoft DirectX é uma coleção de APIs para realizar tarefas relacionadas a

aplicações multimídia, especialmente desenvolvimento de jogos em plataformas

Windows [5]. Esta biblioteca, desenvolvida pela Microsoft desde 1995, é utilizada por

outros softwares comerciais, principalmente na área de engenharia, por seu alto

desempenho na renderização de modelos 3D de alta qualidade, dando suporte aos mais

desenvolvidos hardwares de aceleração 3D. O DirectX é uma biblioteca escrita em

C/C++ que pode ser utilizada comercialmente, porém seu código fonte é fechado e

proprietário da Microsoft. Ele também é utilizado para fazer a renderização dos objetos

virtuais em aplicações de RA e várias aplicações vêm sendo desenvolvidas utilizando-se

esta biblioteca. Como mencionado na seção anterior, o DirectX não é suportado pela

interface TIARI uma vez que o ARTag utiliza apenas o OpenGL.

2.5.3.3. OGRE

A biblioteca OGRE (Object-Oriented Graphics Rendering Engine) [19] é um

motor gráfico 3D de código aberto sob licença LGPL (GNU Lesser General Public

License), escrita em C++ , que tem a finalidade de proporcionar uma forma mais fácil e

intuitiva para os desenvolvedores produzirem aplicações utilizando aceleração de

Page 53: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 53

hardware 3D. Esta biblioteca abstrai detalhes de implementação específicos de

bibliotecas gráficas como DirectX e OpenGL e provê uma interface baseada nos objetos

do mundo e outras classes mais intuitivas de serem utilizadas. Esta biblioteca não possui

funcionalidades de sons, rede, inteligência artificial, física, entre outras, sendo focada na

parte gráfica e é disponibilizada para um número considerável de plataformas, incluindo

Windows, Linux e MacOS. Os programas que utilizam a OGRE podem rodar em

qualquer uma dessas plataformas sem sofrer nenhuma mudança.

Figura 42. Arquitetura do OGRE.

A arquitetura do OGRE pode ser vista através da Figura 42. A principal classe

do OGRE é a classe Root, responsável por instanciar as demais classes e prover acesso

às mesmas. O OGRE possui classes de gerenciamento que têm o papel de gerenciar os

elementos do sistema, como recursos, a cena, etc. O ResourceManager, ou

gerenciador de recursos, é responsável pela manipulação dos recursos disponíveis na

aplicação. A classe responsável pelos elementos da cena é chamada de

SceneManager, ou gerenciador de cena. O SceneManager está associado a um

RenderSystem, que é o responsável por fazer a renderização da cena utilizando uma

biblioteca de renderização como OpenGL ou DirectX. Outra classe importante é a

PlatformManager, que encapsula as funcionalidades nativas do sistema

operacional, como manipulação de entradas, temporização e gerenciamento de

interfaces gráficas.

O OGRE, por ser uma biblioteca bastante madura, de código aberto e possuir

essa independência de SO e de sistema de renderização (Direct, OpenGL, etc), é

utilizada na TIARI. Ele é utilizado para fazer a renderização dos objetos virtuais e

Page 54: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 54

também faz parte do OgreAR, biblioteca para ajudar no desenvolvimento de aplicações

de RA utilizada pela TIARI e que será mais detalhada ao longo da próxima seção.

2.5.4. Biblioteca para Desenvolvimento de Aplicações de RA: OgreAR

A biblioteca OgreAR [18] permite a criação de aplicações de RA portáveis

utilizando um motor gráfico de renderização de alto nível. O motor de renderização

utilizado é o OGRE [19]. Por ser uma biblioteca de código aberto e multi-plataforma, o

OgreAR foi desenvolvido utilizando o OGRE como biblioteca para manipulação de

objetos tridimensionais, além de ter uma camada de abstração para reconhecimento de

marcadores e aquisição de imagem. Seu objetivo é garantir a portabilidade entre

diferentes plataformas, que utilizam bibliotecas específicas para realizar tais tarefas. A

Figura 43 apresenta a arquitetura do OgreAR.

Figura 43. Arquitetura do OgreAR.

A detecção de marcadores é independente de biblioteca (ARToolKit,

ARToolKitPlus, ARTag, etc), pois ela é utilizada através de uma camada de abstração

onde a aplicação utiliza um PatternDetector baseado em uma biblioteca de

detecção de marcadores, desde que esta seja encapsulada numa classe que estenda

PatternDetector. O OgreAR vem com uma implementação para as bibliotecas

ARToollkit e ARToolkitPlus. Além destes PatternDetectors, a biblioteca dispõe

de um detector de padrão nulo, que serve apenas para testes do usuário ou exibição

única de dados da câmera sem detecção de padrão.

Page 55: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 55

A captura de imagem é abstraída pela interface FrameGrabber, que é

implementada utilizando uma biblioteca de acesso à câmera, como o DsVideoLib ou

OpenCV, por exemplo. O OgreAR vem com uma implementação para utilização da

biblioteca DSVideoLib. A exibição da imagem na aplicação que utiliza o OgreAR

também é uma funcionalidade presente na mesma. Da mesma forma que a parte de

captura de vídeo, a exibição do vídeo é feita através de um FrameListener,

elemento básico de aplicações do OGRE. Para que esta funcionalidade seja integrada à

aplicação basta adicionar o ARFrameListener à aplicação através do método

Root::addFrameListener do OGRE. O ARFrameListener deve ser

associado sempre a um PatternDetector, que pode ser modificado pelo usuário a

qualquer momento da execução do programa.

A detecção de padrões do OgreAR funciona baseada em eventos, assim como

todo o sistema de interação do OGRE. Para receber estes eventos e manipular os dados

dos marcadores identificados, o usuário deve implementar uma interface chamada

DetectionListener. Esta possui apenas o método itemDetected que recebe

um parâmetro do tipo AREvent, evento responsável por agregar informações como

posição, orientação e identificação dos marcadores detectados.

A arquitetura da TIARI é baseada na do OgreAR e será mais bem detalhada ao

longo do Capítulo 3.

2.6.2.6.2.6.2.6. ConConConConsiderações Finaissiderações Finaissiderações Finaissiderações Finais

Conforme foi visto ao longo deste capítulo, os sistemas de RA são aqueles onde

objetos virtuais são adicionados ao mundo real, aumentando desta forma a realidade do

usuário. Nas aplicações de RA o usuário interage com o sistema através de interfaces de

visualização e de interação. As interfaces de visualização fornecem um feedback do

sistema ao usuário, pois é através delas que o usuário visualiza os mundos real e virtual

misturados. Por outro lado, nas interfaces de interação o usuário provê dados ao sistema

para poder realizar as tarefas desejadas. Estas interfaces devem estar presentes neste tipo

de aplicação de uma forma simples e intuitiva ao usuário. Neste contexto, a interface de

visualização utilizada nesta dissertação de mestrado para validar a interface de entrada

de texto desenvolvida, denominada TIARI, é um display translúcido baseado em vídeo.

Page 56: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 2 – Sistemas de Realidade Aumentada Interativos 56

Em relação às interfaces de interação, a TIARI é baseada em várias formas de interação

conhecidas. A primeira delas é a interação por gestos realizada através de uma luva, que

é uma interface tradicionalmente usada em RV, além de uma interface do tipo bare

hand baseada em marcadores, pois o usuário vê teclas de um teclado projetadas em sua

mão em cima dos marcadores reconhecidos. A TIARI também é considerada uma

interface móvel, pois foi projetada a priori para sistemas de RA móveis.

Algumas aplicações de RA têm um requisito específico, que é o foco desta

dissertação de mestrado: a entrada de texto. Algumas técnicas para resolver este

problema foram vistas ao longo deste capítulo, e a mais utilizada é a baseada em

teclado. A TIARI utiliza esta técnica através da aplicação mista de um teclado em

miniatura, um teclado soft e um teclado com poucas teclas.

Por fim, foram mencionadas algumas bibliotecas para desenvolvimento de

aplicações de RA, sendo elas classificadas em bibliotecas para detecção de marcadores,

captura de vídeo e renderização de objetos 3D. Como a TIARI utiliza marcadores para

rastrear a posição e orientação da mão do usuário onde é exibido o teclado, algumas

bibliotecas para fazer este rastreamento foram estudadas. Destas bibliotecas o ARTag

foi selecionado, pois se mostrou estável em relação à detecção de marcadores menores e

menos suscetível a variações nas condições de luminosidade do ambiente. Para fazer a

captura de vídeo a biblioteca OpenCV foi utilizada, pois obteve um melhor desempenho

na TIARI, além de se comportar bem com o ARTag. Em relação às bibliotecas de

renderização de objetos 3D foram utilizados, de forma integrada, o OGRE (motor de

renderização de alto nível de abstração), o OgreAR (biblioteca de abstração de

funcionalidades - detecção de marcadores, captura de vídeo e renderização - de RA) e o

OpenGL (biblioteca de renderização de baixo nível).

Page 57: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3Capítulo 3Capítulo 3Capítulo 3

TIARI – Text Input Augmented Reality Interface

Este capítulo contempla a concepção, a modelagem e o desenvolvimento da

TIARI, a interface para entrada de texto em sistemas de RA proposta nesta dissertação.

Primeiramente, o contexto onde será utilizada a interface é detalhado, após isso a

metodologia de desenvolvimento utilizada, a modelagem da TIARI, o modelo

arquitetural utilizado para o desenvolvimento são apresentados e, por fim, as bibliotecas

utilizadas na implementação da mesma são especificadas. Além disso, é detalhada a

aplicação utilizada como estudo de caso, o desktop virtual 3D, chamado mivaDesk, bem

como a integração da TIARI com o mesmo.

3.1.3.1.3.1.3.1. ContextoContextoContextoContexto de de de de UUUUsosososo

A TIARI, Text Input Augmented Reality Interface, está focada em aplicações de

RA móveis, pois em uma grande parte das aplicações de RA esta característica de

mobilidade está fortemente presente. Outro ponto relevante considerado para a

concepção da mesma foi o tamanho do texto utilizado nestas aplicações, considerando-

se em média 200 caracteres, visto que a utilização da interface está planejada para

sistemas onde não se precisa fazer uma entrada de texto extensa, e sim anotações,

cadastros em agendas telefônicas e comentários curtos. Como TIARI será utilizada para

textos pequenos, ela abrange apenas um subconjunto dos caracteres de um teclado

convencional: letras, enter, espaço e backspace. Não foi contemplada na interface a

capitalização de letras, digitação de números, movimentação através de setas, tabulação,

acentos gráficos e pontuação, e ela foi projetada a priori para escrever textos na língua

portuguesa, visto que ela inclui a tecla de cedilha (ç).

Page 58: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 58

3.2.3.2.3.2.3.2. MetodologMetodologMetodologMetodologia Aia Aia Aia Adotadadotadadotadadotada

A metodologia utilizada no desenvolvimento da TIARI é baseada no conceito de

design centrado no usuário. O design centrado no usuário é uma atividade que requer

etapas de análise de requisitos dos usuários onde se tenta entender o domínio do

problema, etapas de concepção e especificação que, a partir de dados coletados na etapa

anterior, procuram criar modelos de interação para a nova interface, e ainda uma etapa

de prototipação seguida de uma avaliação feita através de utilização do sistema

prototipado pelos usuários [38].

Este método propõe uma constante melhoria ao longo do desenvolvimento da

interface, pois utilizando esse processo de especificação, prototipação e avaliação pode

se chegar a um resultado mais satisfatório. A Figura 44 mostra as etapas do processo de

design interativo de desenvolvimento de interfaces centrado no usuário.

Figura 44. Processo interativo de design de interfaces.

A fase de análise tem como objetivo identificar os usuários finais da interface,

especificando e entendendo o processo pelo qual realizam sua tarefa, tentando extrair

suas necessidades que devem contextualizar todas as etapas seguintes. Segundo Nielsen

[38], esta etapa tem grande importância na fase inicial do desenvolvimento, pois se

caracteriza como principal fonte de informação para a concepção da mesma.

Após a fase de análise é feita a especificação do sistema, que deve permitir que o

usuário atinja sua meta, realizando as tarefas de maneira interativa e precisa. Uma

especificação descreve um modelo de interação onde o usuário utiliza funções providas

pelo sistema, visualiza informações ou fornece dados para o próprio sistema.

Já na fase de prototipação é realizada a construção de uma interface primária,

através da qual se procura obter uma avaliação dos conceitos concebidos nas fases

Page 59: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 59

anteriores. A avaliação do protótipo é realizada com base em contextos de utilização e

definida utilizando critérios somativos determinados pelo avaliador da interface.

Por fim, tem-se a fase de avaliação da interface que é um importante passo no

processo de design, pois é através dela que se consegue estimar o sucesso ou insucesso

da solução proposta, tanto em termos de funcionalidade quanto em termos de interação.

As avaliações de interface podem ser classificadas como formativas ou somativas [45]

[25]. As formativas são aquelas que são feitas durante o processo de design, permitindo

a identificação e conserto de um problema de interação antes que a aplicação seja

terminada, ou até mesmo antes de ser implementada. As somativas, por sua vez, avaliam

o produto já terminado.

Ao longo do desenvolvimento da TIARI foram realizados alguns ciclos de

especificação, prototipação e avaliação. Antes de ser iniciada a implementação foi feita

uma especificação inicial de alguns layouts que TIARI poderia utilizar. Após isto uma

prototipação em papel destas formas [52] foi realizada e avaliada junto a alguns

usuários. Esta avaliação encontra-se mais bem detalhada no Anexo A. Além disto, ao

longo do desenvolvimento da TIARI algumas modificações foram feitas baseadas

também em protótipos e avaliações informais conduzidas com algumas pessoas. Então,

ao longo do desenvolvimento foram feitas essas análises formativas e ao final do

processo, quando se chegou a um modelo mais maduro, foi feita uma análise somativa

com alguns usuários e será detalhada ao longo do Capítulo 4.

3.3.3.3.3.3.3.3. ModeloModeloModeloModelo

A TIARI utiliza uma combinação das abordagens bare hand com utilização de

marcadores, teclado e luva tradicional de RV com reconhecimento de gestos (ver

Figura 11 e Figura 14 no Capítulo 2). O conceito mais básico da interface vem da idéia

de um teclado deslizante. O teclado não é exibido por inteiro ao usuário, e sim dividido

em três partes, aonde o usuário vai paginando através destas e digitando as letras

desejadas. O usuário sempre pagina para a parte mais a direita do teclado de uma forma

circular, conforme pode ser visto através da Figura 45.

Page 60: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 60

Figura 45. Visualização do teclado deslizante da TIARI.

A interface TIARI é composta de basicamente três partes: a luva com os

marcadores onde as letras do teclado aparecem, o teclado soft que aparece no display do

usuário indicando qual parte do teclado está sendo visualizada e a luva que possui as

funcionalidades de chavear entre as partes do teclado. Os dispositivos utilizados na

TIARI podem ser visualizados através da Figura 46.

Figura 46. Dispositivos utilizados na TIARI.

O usuário interage com a TIARI da seguinte forma: após vestir a luva de gestos

na mão direita e a luva com marcadores na mão esquerda, ele pode habilitar o teclado na

aplicação para iniciar a digitação. Quando ele habilita o teclado, na tela aparece um

teclado soft com a primeira parte do teclado selecionada e quando o usuário olha para os

marcadores que estão na luva esquerda aparecem as teclas da primeira parte do teclado

para que ele possa digitar (Figura 45 (a)). Para digitar um caractere, o usuário

simplesmente move o dedo fazendo a oclusão da letra desejada e espera durante um

pequeno tempo (700 milisegundos) para que ela apareça na tela (Figura 47). Caso a

Page 61: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 61

letra desejada esteja em outra parte do teclado, o usuário faz um gesto fechando e

abrindo a mão direita e então a parte seguinte do teclado é exibida.

Figura 47. Digitação com a TIARI.

Esta técnica de detecção da letra digitada é uma técnica baseada em oclusão de

marcadores e se chama detecção de marcadores com a ponta dos dedos (Tip Point

Marker Detection) [31] e consiste em fazer uma varredura dos marcadores da esquerda

para a direita e de cima para baixo identificando, assim, o marcador mais acima e à

direita que foi ocluso, como pode ser visto na Figura 48 [31].

Figura 48. Detecção de marcadores com a ponta dos dedos.

Para a definição do layout a ser utilizado, uma avaliação de usabilidade

formativa foi realizada com algumas pessoas. Primeiramente, uma avaliação inicial foi

feita utilizando-se prototipação em papel [52]. Três layouts foram propostos para o

experimento: o layout de teclado QWERTY, um layout com as letras em ordem

alfabética, e um terceiro layout em ordem alfabética contendo as vogais no início e a

consoante y. Um resumo sobre este experimento está detalhado no Anexo A.

Page 62: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 62

O experimento resultou na observação de que o layout que possui as letras em

ordem alfabética era o mais fácil de ser utilizado pelas pessoas, pois elas conseguiam

memorizar a localização das letras no teclado como um todo com maior facilidade. O

layout escolhido, portanto, foi o teclado em ordem alfabética. Além disto, a partir de

algumas observações feitas durante este estudo de usabilidade, o layout do teclado

original foi um pouco alterado. Os pontos alterados foram os seguintes: em todas as

partes do teclado as teclas de espaço, enter e backspace são mostradas e os acentos e

pontuação foram removidos do layout. Estas alterações deveram-se ao fato de que os

usuários raramente se lembravam de utilizar os acentos e quando o faziam achavam

desconfortável a posição que eles se encontravam. Além disto, a maioria dos usuários

achou ruim o fato de ter que ficar paginando pelo teclado para poder digitar espaço,

enter e backspace, pois eram teclas constantemente utilizadas. Portando, o layout final

utilizado na TIARI pode ser visualizado através da Figura 49.

Figura 49. Layout do teclado TIARI.

3.4.3.4.3.4.3.4. ImplementaçãoImplementaçãoImplementaçãoImplementação

A interface TIARI foi desenvolvida em C++, utilizando algumas bibliotecas para

auxiliar em seu desenvolvimento. Várias bibliotecas foram estudadas e testadas a fim de

encontrar as que fossem mais adequadas a este tipo de aplicação e visando, também, a

integração futura com a aplicação mivaDesk [55], que foi o estudo de caso real utilizado

para a validação da interface.

A escolha da biblioteca de detecção de marcadores foi feita em relação ao tipo

de marcadores utilizados, que deveriam ser marcadores menores, pois eles precisariam

caber na palma da mão do usuário. Portanto, foram feitos testes iniciais com a biblioteca

ARToolkit [2], por ser a biblioteca mais utilizada na área de RA para detecção de

marcadores. Porém, esta biblioteca não se mostrou adequada para detecção de

marcadores pequenos, pois quando o tamanho dos marcadores era diminuído, o

ARToolkit não conseguia detectar a presença dos mesmos. Então, foram feitos testes

com o ARToolkitPlus [63] que oferece suporte a marcadores de tamanho menor,

Page 63: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 63

utilizando marcadores com identificadores internos e bordas mais finas. Contudo, estes

marcadores mostraram-se instáveis em relação à luminosidade do ambiente e a taxa de

falso negativo (marcadores que estavam sendo visualizados e não eram detectados) era

bastante elevada. Por fim, foram feitos testes com a biblioteca ARTag [22] que se

mostrou satisfatória em relação à detecção de marcadores menores e menos instável em

relação às condições de luminosidade do ambiente. Logo, esta biblioteca foi utilizada

para implementar a detecção dos marcadores da TIARI.

A fim de realizar a captura da imagem do mundo real através de uma câmera, foi

utilizado o módulo de captura de câmera da biblioteca OpenCV [15], que se mostrou

uma biblioteca simples e de qualidade para este tipo de atividade. Para os testes com a

câmera foram utilizadas webcams com resolução de 320x240 pixels e estas se

comportaram bem para o experimento da interface. Também foram feitos testes com a

biblioteca DSVideoLib, porém ela não funcionou corretamente quando integrada à

biblioteca ARTag para detecção de marcadores.

Com relação à renderização dos objetos virtuais foi utilizada a biblioteca OGRE,

juntamente com o OgreAR [18]. Esta biblioteca foi modificada para utilizar, também, as

duas bibliotecas descritas anteriormente (ARTag e OpenCV), pois fornecia suporte

apenas ao ARToolkit e ARToolkitPlus para detecção de marcadores e fazia a captura de

vídeo através da biblioteca DSVideoLib. Conforme visto anteriormente na Seção 2.5.4,

o OgreAR abstrai a biblioteca de renderização utilizada (OpenGL ou DirectX), porém o

ARTag tem uma peculiaridade de que ele necessita de funções do OpenGL para

funcionar corretamente, fazendo com que o OgreAR não funcionasse no modo de

renderização que utiliza DirectX. Logo, foi utilizado o OgreAR utilizando apenas

OpenGL para dar suporte à parte de renderização dos objetos virtuais. Um diagrama

ilustrando as bibliotecas utilizadas para desenvolvimento da interface TIARI pode ser

visualizado através da Figura 50.

Figura 50. Bibliotecas utilizadas pela TIARI.

Page 64: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 64

Para fazer a integração das novas bibliotecas ao OgreAR, dando suporte a

detecção de marcadores com o ARTag e captura de vídeo com o OpenCV, foram

implementadas classes referentes à detecção de marcadores e captura de vídeo. A

detecção de marcadores é feita através de uma camada de abstração do OgreAR

chamada PatternDetector, que foi estendida para dar suporte aos marcadores do

ARTag, tendo-se assim o ARTagAdapter. Além disto, tem-se o módulo de captura de

câmera que também é abstraído através de uma interface chamada FrameGrabber,

que no caso da TIARI foi implementada utilizando-se a biblioteca OpenCV, tendo-se

assim o OpenCVFrameGrabber. A Figura 51 ilustra a arquitetura da TIARI, que se

baseia na arquitetura do OgreAR, e nela podem ser vistas essas novas classes

implementadas.

Figura 51. Arquitetura da TIARI.

No módulo da TIARI que realiza de fato as funcionalidades da interface, a

detecção dos marcadores e a renderização das teclas é feita através do

ARTagListener, uma classe que implementa a interface DetectionListener

do OgreAR, que tem como papel receber eventos de detecção de marcadores,

relacionando-se, assim, com o ARTagAdapter do OgreAR. O ARTagListener

recebe os eventos de marcadores detectados tendo suas posições e orientações para

poder fazer a renderização das teclas através do OGRE. Esta classe também é

responsável por fazer a verificação da tecla pressionada pelo usuário, que é feita através

de detecção de marcadores com a ponta dos dedos (vide Figura 48), utilizando uma

classe auxiliar de timer, a Win32Timer, que é responsável por calcular o tempo que os

marcadores ficaram oclusos para poder reconhecer a digitação de uma letra, visto que

uma letra é considerada digitada após ficar 700 milisegundos oclusa. Estas classes

podem ser visualizadas no diagrama de classes contido na Figura 52.

Page 65: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 65

Figura 52. Diagrama de classes da TIARI.

Além da funcionalidade referente à digitação da tecla em si, a TIARI possui o

módulo referente ao layout do teclado escolhido, o teclado soft mostrado na tela, e a

mudança da parte do teclado visualizada pelo usuário que é feita através de gestos

capturados pela luva. A TIARI possui o seu layout do teclado especificado em um

arquivo de configuração, pois como foram feitos alguns testes de usabilidade em relação

ao layout ao longo do desenvolvimento, esta funcionalidade facilitou a alteração do

layout sem ser necessário compilar novamente a TIARI. Portanto, a classe responsável

por este carregamento do layout, pela troca da parte do teclado corrente e pela exibição

do teclado soft na tela do usuário com a parte do teclado selecionada é a

TIARIApplication. Por fim, a classe responsável pela comunicação entre a TIARI

e a luva de gestos é a TIARIFrameListener que captura através da API de

comunicação com a luva o gesto realizado e avisa à TIARIApplication que o

teclado deve ser chaveado para outra parte. Estas classes podem ser vistas na Figura 52.

Durante o desenvolvimento da TIARI, alguns problemas foram detectados e

impõem algumas limitações ao uso da interface. Um deles é em relação aos marcadores

utilizados. Dependendo da luminosidade do ambiente e da distância que o usuário os

coloca em relação à câmera, eles são exibidos de forma intermitente, aparecendo e

sumindo, conforme pode ser visualizado na Figura 53. Isto ocorre porque o ARTag não

consegue capturar a posição e orientação correta destes marcadores, fazendo com que

qualquer alteração de luminosidade ou balançar da mão cause uma variação na

orientação dos marcadores levando as teclas que estão projetadas sobre eles a terem essa

sensação de movimento. Este problema foi minimizado com um pequeno aumento do

tamanho dos marcadores utilizados, porém o problema não foi completamente

Page 66: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 66

solucionado. Acredita-se que utilizando câmeras mais precisas e uma resolução mais

alta, pois foi utilizada a resolução de 320x240 pixels, este problema possa ser

contornado por completo.

Figura 53. Problema de detecção de marcadores.

Outro problema é referente à oclusão dos marcadores quando se está digitando.

Como a detecção da digitação de um caractere é feita por oclusão através da técnica de

detecção de marcador com a ponta dos dedos [31], quando o usuário digita um caractere

que está acima de outros, as teclas que estão abaixo ficam também oclusas e não são

mais mostradas ao usuário. Por exemplo, ao digitar a letra ‘A’ na primeira parte do

teclado (Figura 54) pode-se observar que algumas letras não são mais mostradas. Isto

gera um problema para o usuário, pois ao invés dele visualizar o teclado que estava

sendo visto, ele vai ver apenas os marcadores sem as letras, o que pode confundir um

pouco o usuário em relação às letras que estavam naquelas posições. Porém, para suprir

esse problema existe o teclado soft que fica sendo visualizado no display do usuário

mostrando a parte do teclado selecionada e as letras que ela possui para que ele possa se

orientar numa situação como essa.

Figura 54. Problema de oclusão de marcadores.

Page 67: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 67

3.5.3.5.3.5.3.5. Estudo de Caso: Estudo de Caso: Estudo de Caso: Estudo de Caso: mmmmivaDeskivaDeskivaDeskivaDesk

O mivaDesk [55] é um desktop virtual 3D, móvel e interativo, que roda em uma

plataforma móvel, chamada miva (mobile, interactive, virtual and autonomous) [56].

Esta plataforma é formada por um wearable computer desenvolvido para dar suporte às

características de mobilidade e autonomia do sistema e é uma plataforma focada em

aplicações de RA. A plataforma miva pode ser visualizada através da Figura 18. Esta

plataforma é formada basicamente por uma placa de processamento em miniatura, um

HMD com câmera acoplada (Video See-Through HMD), adaptadores de rede (bluetooth

e wi-fi), uma luva de gestos e um tracker. O usuário veste em suas costas uma caixa de

acrílico contendo todos os componentes do wearable computer, o HMD com a câmera e

a luva de gestos.

É nesta plataforma miva [56] que a aplicação mivaDesk roda, provendo ao

usuário uma mesa de trabalho virtual que contém os recursos mais utilizados de um

desktop, integrando-os a um telefone celular. Estes recursos oferecidos pelo mivaDesk

são: agenda de compromissos, agenda telefônica, calendário, transferência de arquivos e

serviço de telefonia. Neste desktop virtual, a entrada de texto é frequentemente utilizada,

fazendo com que ele possua um teclado virtual para que isto possa ser realizado. A

interação é feita através deste teclado soft representando um teclado convencional com

layout QWERTY. Este teclado está ilustrado na Figura 35.

Como o mivaDesk é uma aplicação desenvolvida utilizando a plataforma miva,

sua arquitetura é baseada na camada de aplicação do miva e pode ser visualizada através

da Figura 55. Nesta arquitetura podem-se destacar os seguintes módulos:

� Window Manager ou o gerenciador de janelas, responsável por criar e

destruir todas as janelas utilizadas na aplicação.

� Input, que é o módulo responsável por lidar com os dispositivos de

entrada. Ele captura a entrada de dados do usuário e repassa ao módulo

controlador responsável por se comunicar com o StateManager.

� StateManager ou o gerenciador de estados contém toda a lógica da

aplicação e é o responsável por receber os eventos vindos do usuário e

fazer as ações necessárias àquele evento.

Page 68: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 68

� Output/Renderer é o módulo responsável pela exibição do resultado final

da aplicação, ou seja, a imagem do mundo real aumentado. Ele é

responsável por renderizar os objetos 3D utilizando OpenGL ou DirectX,

por exemplo. Este módulo utiliza o OGRE como biblioteca de abstração

do sistema de renderização.

� Resource Database são os recursos existentes na aplicação: texturas,

modelos 3D dos objetos virtuais, materiais, sons, etc.

Figura 55. Arquitetura do mivaDesk.

Como forma de avaliar e comparar a TIARI a uma forma de entrada de texto já

existente, a TIARI foi integrada ao mivaDesk para ser utilizada no lugar do teclado soft

já existente na aplicação. Um comparativo entre a utilização das duas interfaces foi

realizado através de testes de usabilidade das mesmas e está descrito no Capítulo 4.

Para realizar esta integração, algumas adaptações na estrutura de implementação

da TIARI e do mivaDesk tiveram que ser feitas, pois o mivaDesk não foi implementado

visando esta integração futura e a TIARI quando foi desenvolvida não foi projetada com

base na arquitetura do miva. Portanto, foram necessárias alterações tanto na arquitetura

da TIARI quanto na do mivaDesk.

Em um primeiro momento, para realizar a integração destas duas aplicações,

ambas precisaram ser compiladas para a mesma versão do Visual Studio, pois a TIARI

havia sido desenvolvida no Visual Studio 2005 por conta do ARTag que estava

projetado para esta versão, enquanto o mivaDesk foi desenvolvido com o Visual Studio

2003. Como o mivaDesk e a TIARI utilizavam a biblioteca OGRE com versões

diferentes, o mivaDesk diretamente e a TIARI através do OgreAR, também teve que ser

Page 69: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 69

gerada uma nova versão do OgreAR integrando a versão do OGRE utilizada pelo

mivaDesk para manter a compatibilidade entre as aplicações.

Como o mivaDesk não dava suporte ao OgreAR, e sim apenas o OGRE, foi feita

a integração do mivaDesk com o OgreAR inicialmente. A biblioteca para captura de

câmera era a DSVideoLib e esta era utilizada diretamente na aplicação do mivaDesk

através da classe MivaDeskBackground que era responsável por capturar a imagem

do mundo real e exibi-la ao usuário. Porém, como esta função já estava presente no

OgreAR, esta classe foi removida e em seu lugar foi integrado o FrameGrabber do

OgreAR. Em um primeiro momento foi utilizado o FrameGrabber do OgreAR que

utilizava a DSVideoLib como biblioteca para captura de câmera. Porém, após a

integração da parte que contemplava a detecção de marcadores com o ARTag, esta parte

de captura de câmera ficou com seu desempenho bastante reduzido (a quantidade de

frames por segundo caiu consideravelmente) e as funcionalidades realizadas pelo

ARTag não funcionavam, o que levou à troca do FrameGrabber para o do OpenCV,

o OpenCVFrameGrabber, originalmente utilizado pela TIARI.

Após a integração do módulo da captura de câmera e a integração com o

OgreAR, foi iniciada a integração de fato com a TIARI. Em um primeiro momento, uma

análise da arquitetura da TIARI foi feita e houve a necessidade de uma pequena

mudança nela para facilitar a integração com o mivaDesk. A classe

TIARIApplication foi incorporada à classe TIARIFrameListener e ao invés

de herdarem das classes de exemplo do OGRE ExampleApplication e

ExampleFrameListener elas implementam direto a interface FrameListener.

Este FrameListener, por sua vez, foi adicionado à classe que trata do

comportamento do mivaDesk que é o MivaDeskStateManager para inserir a lógica

de funcionamento da TIARI na aplicação mivaDesk. Além disto, a classe da TIARI

responsável pela detecção dos marcadores teve seu nome alterado por questões de

legibilidade, sendo renomeada de ARTagListener para

TIARIDetectionListener; seu comportamento não foi alterado. Dadas essas

mudanças, o diagrama de classes final da TIARI, com as classes mais importantes do

mivaDesk, pode ser visto através da Figura 56.

Page 70: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 70

Figura 56. Diagrama de classes da TIARI e mivaDesk integrados.

Quando a TIARI foi integrada ao mivaDesk, um problema em relação ao

posicionamento dos objetos virtuais que representavam as teclas nos marcadores foi

detectado. Os objetos não ficavam na posição correta em relação aos marcadores. Isto

foi gerado por um conflito entre a matriz de projeção da TIARI e a do mivaDesk, pois

uma estava sobrepondo as configurações da outra. Então, foi utilizada a matriz de

projeção da TIARI no mivaDesk. Porém, isto gerou um problema na detecção da

posição do apontador do mouse quando clicava em algum objeto 3D no mivaDesk, que

não localizava o objeto desejado. Então, este problema foi contornado utilizando a

matriz da TIARI e a matriz do mivaDesk em conjunto, fazendo com que quando um

objeto 3D recebesse um clique de mouse, as matrizes fossem trocadas e depois

voltassem ao original. Esta solução melhorou a detecção de clique de mouse nos objetos

3D, porém foi observado que mesmo assim alguns objetos ainda continuaram

apresentando um pouco de imprecisão em relação a estas posições.

Após a TIARI ser integrada ao mivaDesk de fato, para facilitar a realização dos

testes de usabilidade, foi adicionada uma aplicação de notepad ao mivaDesk para

permitir a digitação de textos nele, já que o mivaDesk não possuía este tipo de

aplicação. As aplicações já existentes no mivaDesk não foram utilizadas, pois nenhuma

dava suporte à digitação de textos maiores e como o procedimento de realização do

experimento necessitava que o usuário digitasse 3 frases, isto não seria possível através

destas. Este experimento está detalhado ao longo do Capítulo 4.

Page 71: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 71

3.6.3.6.3.6.3.6. ConConConConsiderações Finaissiderações Finaissiderações Finaissiderações Finais

Neste capítulo foi detalhada a concepção, arquitetura e implementação da

TIARI. Esta interface foi projetada para utilização em sistemas de RA que permitem a

mobilidade do usuário e que têm a necessidade de entrada de textos pequenos, fazendo

com que ela possua um subconjunto de teclas de um teclado convencional.

Durante a construção da TIARI foi utilizada uma metodologia de

desenvolvimento centrada no usuário. Foram feitas avaliações durante a implementação,

incluindo uma fase de prototipação em papel para a escolha do layout de teclado a ser

utilizado, concluindo-se que o layout que continha letras em ordem alfabética era o mais

adequado.

A TIARI baseia-se em uma idéia de teclado deslizante onde o usuário vê partes

do teclado e alterna entre elas para digitar as letras desejadas. Ela utiliza o conceito de

interfaces bare hand com utilização de marcadores, além de um teclado soft e uma luva

tradicional de RV com utilização de gestos. Para se realizar a digitação de uma tecla, foi

utilizada a técnica de detecção de marcadores com a ponta dos dedos (Tip Pont Marker

Detection).

Na implementação da TIARI foram utilizadas bibliotecas para auxiliar na

captura de câmera, detecção de marcadores e renderização de objetos 3D. Como base de

sua arquitetura, a TIARI utiliza o OgreAR, uma biblioteca que facilita o

desenvolvimento de aplicações de RA, criando uma camada de abstração para as

bibliotecas acima citadas. Foi feita uma atualização no OgreAR para utilização das

bibliotecas utilizadas que ele não fornecia suporte: o ARTag para detecção de

marcadores e o OpenCV para captura de vídeo.

Além disto, a TIARI foi integrada a um sistema de RA existente, o mivaDesk,

que é um desktop virtual 3D. Para realizar esta integração, alterações nas estruturas das

duas aplicações tiveram que ser feitas. O mivaDesk foi integrado ao OgreAR, uma

mudança na forma de captura de vídeo utilizada foi feita, fazendo com que o mivaDesk

utilizasse o OpenCV integrado ao OgreAR ao invés da biblioteca DSVideoLib

anteriormente utilizada. Por fim, foi adicionada ao mivaDesk uma aplicação de notepad

Page 72: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 3 – TIARI (Text Input Augmented Reality Interface) 72

para facilitar os testes de usabilidades realizados. Estes testes serão detalhados ao longo

do próximo capítulo.

Page 73: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4Capítulo 4Capítulo 4Capítulo 4

Avaliação de Usabilidade da Interface TIARI

Este capítulo descreve a avaliação somativa da interface TIARI com base na

observação da utilização da mesma por alguns usuários. É descrito o método utilizado,

os experimentos realizados e a análise dos resultados obtidos. Além disto, um

comparativo é feito em relação à utilização do teclado previamente existente no estudo

de caso, o mivaDesk.

4.1.4.1.4.1.4.1. IntroduçãoIntroduçãoIntroduçãoIntrodução

Como forma de avaliar a interface desenvolvida junto aos usuários, faz-se

necessária a realização de testes de usabilidade para serem identificadas falhas e pontos

de melhoria na interface e ser avaliado o grau de aceitação da mesma. Um ponto que

pode ser medido é a velocidade de digitação na utilização da interface. Esta métrica é

fundamental para o grau de satisfação do usuário, pois os usuários quando necessitam

fazer entrada de texto não o querem fazer de uma forma lenta, já que para eles a forma

mais natural de se fazer este tipo de interação é através da voz. Existem várias formas de

avaliação para interfaces de entrada de texto, porém todas possuem um conjunto de

métricas em comum, como por exemplo, a taxa de digitação, o conforto do usuário, o

grau de aprendizagem, a taxa de erros, entre outros [14][57].

Além desta coleta de métricas, é importante que elas sejam comparadas a outras

interfaces similares para avaliar de fato como ela se comporta em relação a outras

formas de entrada de texto. Desta forma, para a avaliação da TIARI também foi feita

uma avaliação do teclado existente na aplicação a qual ela foi integrada, o mivaDesk.

Além disso, foi feita uma comparação à taxa de digitação padrão de um teclado

convencional de layout QWERTY comumente utilizado. As próximas seções descrevem

melhor o método utilizado para avaliação das interfaces, seus resultados e comparativos.

Page 74: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4 – Avaliação de Usabilidade da Interface TIARI 74

4.2.4.2.4.2.4.2. MétodoMétodoMétodoMétodo Utilizad Utilizad Utilizad Utilizadoooo

O processo de avaliação consistiu em uma avaliação somativa feita ao final do

desenvolvimento da interface TIARI. Foram avaliadas comparativamente duas

interfaces para entrada de texto: a TIARI, proposta nesta dissertação, e o teclado soft já

existente na aplicação mivaDesk.

Para a realização do experimento, foram escolhidos participantes entre um grupo

de pessoas familiarizados com interfaces de interação convencionais (mouse, teclado,

monitor). O procedimento para avaliação da interface consistiu de quatro fases:

realização de um tutorial para aprendizagem da interface, digitação de textos para

observação utilizando as duas interfaces, coleta das métricas utilizadas para a avaliação

e, por fim, um questionário visando avaliar a taxa de conforto do usuário utilizando a

interface. Este procedimento utilizado foi definido com base em uma avaliação feita por

outra interface para entrada de texto, chamada Chording Gloves [49].

Na primeira fase do experimento, o usuário participou de um tutorial que explica

o funcionamento básico da interface. O objetivo desta fase foi permitir que o usuário

conhecesse a interface a ser utilizada e aprendesse a utilizar as funcionalidades básicas

da mesma que seriam digitar um caractere, paginar para outra parte do teclado para

digitar outros caracteres e utilizar as teclas de backspace, enter e espaço. O passo-a-

passo do tutorial utilizado nos experimentos pode ser visto no Anexo B.

A fase seguinte foi a digitação de 3 frases utilizando-se as duas intefaces e a

coleta de métricas para comparação das mesmas. A métrica utilizada nesta avaliação

para comparar as interfaces foi a velocidade de digitação das frases, medidas em

caractere digitado por segundo (cps). O experimento foi feito através de observação,

onde os usuários utilizaram a TIARI e logo após o teclado soft do mivaDesk. Durante a

utilização das interfaces o tempo era cronometrado e anotado. Como o experimento foi

feito através de observação e marcação dos tempos de digitação manualmente, a taxa de

erros de digitação não pôde ser medida em ambas as interfaces.

Os textos utilizados para a digitação em ambas as interfaces foram os mesmos,

escolhidos de forma que possuissem letras em todas as partes do teclado e de uma forma

Page 75: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4 – Avaliação de Usabilidade da Interface TIARI 75

que houvesse um chaveamento razoável entre as partes do teclado para que validassem

este conceito proposto. As frases utilizadas no experimento foram as seguintes:

� "Valorizar o homem vale mais que enriquecer"

� "Aqui jaz Xavier Bonifacio Portugal"

� "Vale mais um inimigo sabio que um amigo ignorante"

Para finalizar a avaliação com os usuários, após concluirem a utilização das duas

interfaces, eles responderam um questionário que mede a taxa de conforto de utilização

da interface em relação ao cansaço do braço, cansaço da mão, cansaço do pescoço,

tontura e náusea. Para cada um destes itens foi dada uma nota de 0 (zero) a 10 (dez)

pontos para avaliar problemas físicos relacionados às interfaces, onde a nota zero

significa não ter sentido nenhum incômodo e a nota dez sentido um alto nível de

desconforto. Além destes itens, o usuário também pôde acrescentar observações e

opiniões sobre a interface, podendo assim, sugerir melhorias para a mesma. O

questionário de satisfação dos usuários pode ser visto no Anexo C.

4.3.4.3.4.3.4.3. ResultadosResultadosResultadosResultados

As interfaces TIARI e teclado soft do mivaDesk foram utilizadas por 7 pessoas,

todas estudantes universitários, com média de idade de 23 anos, todos homens. A

duração total dos experimentos foi em média 35 minutos, estes distribuídos em 6.18

minutos em média para o tutorial, 13.4 minutos em média para digitação com a TIARI e

15.42 minutos em média para a digitação com o teclado soft do mivaDesk, tempo

durante o qual foram coletadas as métricas.

Média Digitação

0,0000

0,1000

0,2000

0,3000

1 2 3 4 5 6 7

usuários

cara

cte

res p

or

seg

un

do

(cp

s)

TIARI

mivaDesk

Figura 57. Gráfico da média de digitação das frases.

Page 76: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4 – Avaliação de Usabilidade da Interface TIARI 76

A média de digitação com a TIARI foi de 0.23 cps (caracteres por segundo) ou

13.83 cpm (caracteres por minuto) e com o teclado soft do mivaDesk foi 0.188 cps ou

11.28 cpm. Isto mostra que a TIARI teve uma taxa de digitação 18.47% superior ao

teclado existente na aplicação mivaDesk. O gráfico com a média de digitação das frases

pode ser visualizado através da Figura 57. Através deste gráfico, pode-se observar que

em todos os casos a média de digitação da TIARI foi superior a do teclado soft existente

na aplicação mivaDesk. Os dados coletados durante o experimento podem ser vistos em

detalhes no Anexo D e os gráficos das médias de digitação por frase podem ser vistos

no Anexo E.

Porém, além deste fato de que a TIARI obteve um desempenho melhor que o

teclado do mivaDesk, ela obteve uma baixa performance em relação ao teclado

convencional de layout QWERTY. Segundo Soukoreff et al. [53] a média de digitação

para pessoas não familiares ao teclado QWERTY é de 8.9 ppm (palavras por minuto) e

30.1 ppm para pessoas experientes. No caso da TIARI, ela possui uma taxa de 2.76

ppm, fazendo-se a conversão através da fórmula proposta por Soukoreff et al.. A

fórmula de conversão entre cps e ppm é dada abaixo:

Pode-se concluir, então, que mesmo a TIARI possuindo uma taxa de digitação

mais elevada que a do teclado soft do mivaDesk, ainda assim, não possui uma taxa de

digitação comparável a um teclado convencional de layout QWERTY. O principal fator

que leva a TIARI a possuir esta baixa taxa de digitação e que foi observado ao longo

dos experimentos realizados é o fato da instabilidade na detecção dos marcadores. Este

problema na detecção faz com que teclas sejam digitadas sem o usuário ter realmente as

digitado ou a não detecção de uma tecla que deveria ser digitada. Por exemplo, se a

tecla backspace ficar sendo identificada como uma tecla digitada por problemas na

detecção dos marcadores, as palavras que já foram escritas podem acabar sendo

apagadas por causa disto. Este problema da instabilidade na detecção dos marcadores

acontece devido a vários fatores que vão desde o nível de iluminação da sala onde ela é

utilizada ao tipo de câmera e resolução utilizados. Como no desenvolvimento da TIARI

foi utilizada uma webcam com resolução de 320x240 pixels, que é uma baixa resolução,

isto pode ter sido um fator decisivo no resultado final da avaliação. Infelizmente não foi

Page 77: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4 – Avaliação de Usabilidade da Interface TIARI 77

possível ser avaliada outra resolução de câmera, pois a biblioteca OpenCV utilizada não

funciona corretamente com resoluções de câmera maiores que esta. Lembrando que esta

resolução de câmera não deve ser confundida com a resolução da janela. Portanto, se

fosse possível utilizar uma resolução de câmera mais alta, possivelmente a detecção dos

marcadores seria bem melhor e isto faria com que a instabilidade dos marcadores

diminuísse, aumentando, assim, a taxa de digitação da TIARI.

Um outro ponto relevante em relação à taxa de digitação dos dois teclados

comparados é o tracker que foi utilizado para a digitação com o teclado soft do

mivaDesk. Este possui um problema de calibração e algumas vezes identificava

movimentos sem que estes tivessem acontecido. Por exemplo, as vezes o tracker movia

o ponteiro do mouse para uma direção mesmo o usuário estando com a mão parada. Isto

também dificultou a digitação com este teclado, diminuindo, assim, a sua taxa de

digitação final.

Em relação ao conforto do usuário, foi observado que a maior parte das pessoas

sentiu algum desconforto em relação ao cansaço de seu braço e de sua mão. O problema

da detecção dos marcadores possivelmente foi o causador deste desconforto, pois para

que os marcadores não ficassem muito instáveis, o usuário precisava ficar com o braço

levantado e próximo à câmera. Isto fazia com que logo nas primeiras digitações o

usuário se cansasse de ficar com o braço levantado, tornando a TIARI um pouco

desconfortável. O gráfico com o resultado da avaliação de conforto pode ser visto

através da Figura 58.

0

1

2

3

4

5

6

7

8

9

10

Cansaço

braço

Cansaço

mão

Cansaço

pescoço

Tontura Náusea

no

tas

Figura 58. Resultado da análise de conforto do usuário.

Page 78: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4 – Avaliação de Usabilidade da Interface TIARI 78

Além desta questão do cansaço do braço, várias pessoas apresentaram cansaço

do pescoço e tontura. Isto ocorreu por causa do HMD que foi utilizado durante os

experimentos (ver Figura 6). Este HMD, apesar de ser um modelo amplamente

comercializado, mostrou-se pesado e bastante desconfortável de vestir, pois o elástico

que o prende à cabeça do usuário precisa ficar bem justo se não ele escorrega e cai.

Outro problema com o HMD utilizado é o fato de que as telas que exibem o ambiente

aumentado ao usuário não possuem uma boa definição (resolução de 800x600 pixels e

as telas virtuais distantes dos olhos do usuário), fazendo com que partes da aplicação

fiquem praticamente ilegíveis aos usuários. A maior parte das pessoas que participou do

experimento se queixou em relação à leitura do texto digitado que ocorreu por conta da

resolução do display. Por fim, outro problema deste HMD é que seu design possui uma

brecha nos óculos onde o usuário consegue ver o mundo real, diminuindo a sensação de

imersão do usuário.

Durante o experimento também foi observado que os usuários logo se

familiarizaram com o layout escolhido. No começo os usuários ainda paravam um

pouco para buscar as letras, porém logo eles já sabiam exatamente em que parte do

teclado elas se encontravam. Além disto, durante a utilização da TIARI algumas letras

ficavam escondidas pela janela do notepad utilizado no experimento e mesmo assim os

usuários conseguiam digitar, pois eles já sabiam a localização das letras. Além do que

alguns também utilizavam o teclado soft presente na tela para se orientar em relação à

localização das letras. Em geral, as pessoas gostaram da TIARI e a maior parte das

reclamações foi devida ao problema na detecção dos marcadores.

Por fim, os usuários deram sugestões de melhoria para a TIARI. A mais

solicitada foi que as teclas especiais fossem feitas através de outros gestos capturados

pela luva. Além dessa sugestão, outras como a adição de som, movimentação dentro do

texto através de cursores, e diminuição do tamanho dos marcadores foram sugeridas e

estão listadas, juntamente a outras melhorias identificadas ao longo deste trabalho, no

próximo capítulo na seção de trabalhos futuros.

4.4.4.4.4.4.4.4. ConsideraConsideraConsideraConsiderações Finaisções Finaisções Finaisções Finais

Este capítulo descreveu a análise somativa da TIARI que teve como objetivo a

identificação de falhas e pontos de melhoria e avaliação da aceitação da TIARI,

Page 79: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 4 – Avaliação de Usabilidade da Interface TIARI 79

comparando-a com um outro tipo de teclado existente, o teclado soft. O procedimento

foi feito em quatro etapas: um tutorial feito com o usuário, a digitação de 3 frases com

os dois teclados, a coleta dos tempos de digitação e por fim, o usuário respondeu um

questionário de conforto de utilização da TIARI. Este questionário tem como propósito

medir o grau de conforto da interface baseado em cinco métricas: cansaço da mão,

cansaço do braço, cansaço do pescoço, tontura e náusea.

O experimento foi realizado com 7 pessoas levando em média 35 minutos para

ser concluído. Como resultado deste, foram obtidas as médias de digitação com a TIARI

e com o teclado soft do mivaDesk que foram 13.83 cpm e 11.28 cpm, respectivamente.

Isto conclui que a TIARI apresentou-se em média 18.47% mais rápida que o outro

teclado analisado. Apesar desta performance alta em relação ao teclado soft, pode ser

observado que a TIARI possui um baixo desempenho em relação a um teclado

convencional de layout QWERTY, pois o mesmo possui uma média de digitação de 8.9

ppm para leigos e 30.1 ppm para usuários experientes, enquanto a TIARI possui apenas

2.76 ppm. Esta baixa performance tem como principal fator a instabilidade de detecção

dos marcadores que gera muitos problemas durante a digitação pelo usuário. Este

problema é gerado por fatores como pouca iluminação e baixa resolução de câmera.

Em relação ao conforto de utilização da interface, as pessoas apresentaram

cansaço nas mãos e nos braços, o que foi gerado pelo problema citado acima, pois os

usuários precisavam colocar os marcadores próximos à câmera para que eles fossem

detectados corretamente. Além disto, alguns usuários apresentaram problemas de

cansaço do pescoço e náusea. Isto deve-se ao HMD que foi utilizado durante os

experimentos que se mostrou bastante desconfortável e pesado.

No geral, os usuários gostaram de utilizar a TIARI, achando-a interessante e

fácil de usar. Seu layout foi facilmente memorizado pelos usuários. Ao longo do

experimento foram sugeridas melhorias, tais como adição de som, utilização de mais

gestos e diminuição no tamanho dos marcadores. Estas, entre outras melhorias

detectadas ao longo deste trabalho, serão melhor discutidas ao longo do próximo

capítulo.

Page 80: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5Capítulo 5Capítulo 5Capítulo 5

Conclusão

Esta dissertação apresentou a concepção, desenvolvimento e avaliação de uma

nova interface para entrada de texto em sistemas de RA chamada TIARI (Text Input

Augmented Reality Interface). Esta interface foi projetada com o objetivo de tratar o

problema de entrada de texto neste tipo de sistemas, tentando facilitar e simplificar seu

uso.

O cenário de uso desta interface foi definido como o cenário de aplicações de

RA com características de mobilidade e para digitação de textos curtos como anotações,

labels, digitação em agendas, entre outros. Para a concepção da interface, várias formas

de interação foram estudadas, sendo escolhidas para compor a TIARI a bare hand com

utilização de marcadores fiduciais, uma luva de RV que permite detecção de gestos e

um teclado virtual. Para chegar a este modelo, também, técnicas existentes de entrada de

texto foram estudadas e entre estas foi escolhida a forma de interação mais utilizada que

é a baseada em teclado. Portanto, a TIARI pode ser classificada como um misto entre

um teclado em miniatura, teclado com poucas teclas e teclado soft.

Como a TIARI é uma interface baseada em vídeo que utiliza marcadores

fiduciais, seu fluxo de funcionamento se dá através da captura de vídeo, detecção de

marcadores, renderização dos objetos e exibição do resultado final ao usuário. Para

ajudar no seu desenvolvimento foram estudadas bibliotecas para ajudar em cada uma

dessas fases do funcionamento da aplicação. Para a captura e exibição do vídeo foi

utilizado o OpenCV e para detecção de marcadores foi utilizado o ARTag, por causa do

bom desempenho do mesmo para fazer a detecção de marcadores pequenos, requisito

necessário para a construção da TIARI. Por fim, para ajudar na renderização dos objetos

3D foi utilizado o OGRE, juntamente com o OpenGL. Esses últimos foram utilizados de

Page 81: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5 – Conclusão 81

uma forma integrada com as bibliotecas de captura de vídeo e detecção de marcadores,

através do OgreAR, uma biblioteca desenvolvida para facilitar o desenvolvimento de

aplicações de RA.

O modelo da TIARI baseia-se na idéia de um teclado deslizante que é mostrado

por partes. O usuário pagina entre as partes do teclado através da luva de gestos, vendo

apenas uma parte do teclado e digitando a letra desejada através de uma técnica de

detecção de marcadores com a ponta do dedo (Tip Point Marker Detection).

A arquitetura de implementação da TIARI baseia-se na biblioteca OgreAR. Esta

teve que ser alterada para poder dar suporte às bibliotecas utilizadas na TIARI para

detecção de marcadores (ARTag) e captura de vídeo (OpenCV). Além disto, para

validar a interface desenvolvida, a TIARI foi integrada a um sistema de RA existente, o

mivaDesk, um desktop virtual 3D. Durante esta integração, mudanças na arquitetura do

mivaDesk e da TIARI foram feitas para dar suporte a esta integração, fazendo com que

o mivaDesk passasse a utilizar a arquitetura do OgreAR e mudasse a biblioteca utilizada

para captura e exibição de vídeo para utilizar o OpenCV. Cabe ressaltar que a utilização

do OgreAR é bastante importante neste desenvolvimento, porque o desenvolvimento de

aplicações de RA utilizando bibliotecas de alto nível como o OgreAR e o OGRE se

torna bastante facilitado. Comumente bibliotecas de baixo nível, que não permitem uma

boa produtividade durante o desenvolvimento, são aplicadas.

Por fim, um estudo de usabilidade foi feito para avaliar a efetividade da TIARI e

um comparativo com o teclado soft previamente existente na aplicação mivaDesk foi

realizado. Deste estudo, concluiu-se que a TIARI se mostrou uma boa interface, tendo

uma média de tempo de digitação melhor que a do teclado soft. Porém, fazendo-se uma

comparação com a média de tempo de digitação com um teclado convencional de layout

QWERTY, foi observado que a TIARI apresentou um desempenho baixo. Este baixo

desempenho foi causado por um principal fator que foi o problema da instabilidade na

detecção dos marcadores utilizados. Este problema pode ser melhorado com a utilização

de uma resolução de câmera maior, podendo, assim, aumentar consideravelmente o

desempenho da TIARI.

Além disto, foram identificados problemas com relação ao conforto dos usuários

ao utilizar a TIARI. Basicamente foram relatados problemas em relação ao cansaço da

Page 82: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5 – Conclusão 82

mão e do braço decorrentes também do problema de detecção dos marcadores, pois o

usuário precisava ficar com o braço levantado para posicionar os marcadores próximos

da câmera, causando um desconforto e cansaço do pescoço. Além disto, os usuários

relataram sentirem náusea, ocasionada pelo HMD utilizado durante este estudo que se

mostrou desconfortável e pesado.

Após esta avaliação, algumas melhorias e sugestões foram enumeradas e serão

mostradas com mais detalhes ao longo deste capítulo, bem como as principais

contribuições deste trabalho.

5.1.5.1.5.1.5.1. Principais CPrincipais CPrincipais CPrincipais Contribuiçõesontribuiçõesontribuiçõesontribuições

Como uma das principais contribuições deste trabalho pode-se destacar o estudo

realizado sobre interação em sistemas de RA, voltado principalmente para entrada de

texto, foco principal desta dissertação. Além disso, o estudo comparativo entre

bibliotecas de detecção de marcadores, captura de vídeo e renderização de objetos 3D

também é uma contribuição relevante deste trabalho.

A maior contribuição deste trabalho foi a interface desenvolvida, a TIARI, pois é

um novo conceito de entrada de texto proposto, utilizando uma mistura de várias

abordagens de interação conhecidas. O conceito da interface, apesar de estar voltado

para aplicações de RA, poderia ser estendido a um dispositivo novo para entrada de

texto. Por exemplo, poder-se-ia trocar os marcadores utilizados por botões físicos, o que

geraria uma nova forma de teclado que poderia ser utilizado no lugar de um teclado

convencional para qualquer tipo de aplicação que tivesse o requisito de entrada de textos

pequenos. Além disto, vale salientar que a TIARI pode ser considerada uma solução de

baixo custo visto que utiliza marcadores de papel para o teclado utilizado. A luva de

gestos utilizada ainda tem um certo custo, porém como sua funcionalidade é única, ela

poderia ser substituída por um outro dispositivo que tivesse a mesma função, barateando

mais ainda a solução.

Além disto, a validação da arquitetura do OgreAR e a extensão da mesma para

dar suporte a mais duas bibliotecas (ARTag e OpenCV) é uma contribuição deste

trabalho de mestrado. Bibliotecas de abstração com o OgreAR auxiliam no

desenvolvimento de sistemas de RA, aumentando sua produtividade. Contribuições em

Page 83: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5 – Conclusão 83

relação à aplicação do mivaDesk também foram feitas, pois ele foi integrado à TIARI e

sua arquitetura foi melhorada para utilizar o OgreAR, fazendo com que ele tenha a

possibilidade de trabalhar com vários tipos de marcadores, por exemplo, sem haver a

necessidade de modificação do código da aplicação. Também, ainda em relação ao

mivaDesk, uma nova aplicação de notepad foi adicionada ao mesmo.

Por fim, os estudos de usabilidade da TIARI e do teclado soft do mivaDesk e o

comparativo feito são contribuições relevantes deste trabalho. Este comparativo mostra

o desempenho da TIARI em relação ao teclado soft existente, além de ser comparada a

um teclado convencional. Avaliações desta natureza ainda não são comumente

encontradas em estudos de RA, e constituem um componente importante no

desenvolvimento de interfaces que de fato melhoram as condições de trabalho do

usuário.

5.2.5.2.5.2.5.2. Dificuldades EncontradasDificuldades EncontradasDificuldades EncontradasDificuldades Encontradas

Durante este trabalho de mestrado, algumas dificuldades para a implementação

da TIARI foram enfrentadas e serão discutidas ao longo desta seção.

A maior dificuldade encontrada foi em relação aos marcadores e à biblioteca de

detecção utilizada. Como já visto anteriormente, os marcadores utilizados precisavam

ser pequenos e por este motivo foi escolhida a biblioteca de detecção de marcadores

ARTag, que obteve um melhor comportamento para este caso. Porém, o ARTag, apesar

de ser livre, não possui código fonte aberto, o que dificultou a resolução de alguns

problemas. Além disso, uma dificuldade encontrada em relação ao ARTag é que ele só

funciona corretamente quando utilizado em conjunto com o OpenGL, fazendo com que

outras bibliotecas de renderização não pudessem ser utilizadas neste trabalho. Por conta

desta limitação do sistema de renderização suportado, o ARTag mostrou problemas ao

integrá-lo com outras bibliotecas de captura de vídeo, como o DSVideoLib que é uma

biblioteca baseada no DirectShow que utiliza, por sua vez, o DirectX, não suportado

pelo ARTag.

Outro problema relevante e que causou impacto nos resultados da avaliação de

desempenho da TIARI foi a questão da biblioteca de câmera utilizada. Como o OpenCV

não funciona corretamente quando utilizado com resoluções acima de 320x240 pixels, a

Page 84: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5 – Conclusão 84

detecção dos marcadores foi prejudicada. Como a imagem não tem uma definição

maior, muitas vezes os marcadores não são detectados pela biblioteca ARTag. Outro

fator ainda em relação à captura de vídeo é a luminosidade que altera bastante o

comportamento da biblioteca em relação à detecção dos marcadores, apresentando

problemas quando utilizada em ambientes mais escuros.

Além deste, houveram problemas relacionados com a integração do OgreAR

com o ARTag. Como já mencionado, o ARTag funciona apenas com OpenGL, portanto

quando foi feita a integração do mesmo com o OgreAR, o OgreAR passou a ser

dependente de sistema de renderização. Além disto, tem-se um problema em relação à

matriz de projeção retornada pelo OgreAR quando utilizado com o ARTag, pois na

classe que implementa a funcionalidade de detecção de marcadores existe um método

que retorna a matriz de projeção dos objetos para ser calculada sua posição e orientação.

Contudo, esta matriz não é obtida de forma correta através do ARTag, tendo-se assim,

uma matriz de projeção fixa a partir das configurações de câmera de 320x240 pixels

utilizada. Caso esta resolução seja alterada no futuro este método deve ser alterado para

que possa retornar a matriz correta, sendo assim um ponto de falta de flexibilidade da

biblioteca.

Por fim, após a integração da TIARI com o mivaDesk, este último apresentou

problemas com relação a detecção do clique do mouse nos objetos 3D. Este problema

ocorreu pela utilização de duas matrizes de projeção diferentes, uma já existente no

mivaDesk e a outra retornada pelo OgreAR para fazer o posicionamento das teclas. O

clique nos objetos 3D no mivaDesk é realizado através de uma técnica de mouse

picking, implementada pelo próprio OGRE, que funciona da seguinte forma: quando a

pessoa clica na tela o OGRE obtém o ponto de origem da câmera e junta com o ponto

onde a pessoa clicou, criando um raio. Então, o OGRE lança esse raio pela cena e

calcula a intersecção dele com os objetos 3D, retornando uma lista de objetos que

colidiram com o raio, ou seja, onde o clique do mouse foi feito. O problema é que o

OGRE detecta primariamente a colisão, ou seja, usa apenas um sistema de axis aligned

bounding box [20]. Sendo assim, para garantir que o clique foi realmente feito em cima

do objeto, a técnica de colisão deve ser refinada com algum outro algoritmo mais

sofisticado como, por exemplo, detectar a colisão com a própria malha do objeto (que é

muito caro de se fazer computacionalmente). Como a matriz de projeção foi alterada, o

Page 85: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5 – Conclusão 85

problema que pode estar acontecendo é que o OGRE pode estar gerando o raio de

colisão em um sistema de coordenadas e fazendo a interseção com os objetos em outro.

5.3.5.3.5.3.5.3. Trabalhos FuturosTrabalhos FuturosTrabalhos FuturosTrabalhos Futuros

Como trabalhos futuros dessa dissertação de mestrado, pode-se destacar a adição

de feedback háptico na TIARI. Isto faria com que os usuários tivessem uma sensação

física ao digitar uma tecla, podendo assim fazer digitações sem ter que olhar para o

teclado ao digitar as letras. Além disso, outra forma de feedback que ajudaria neste

ponto seria a utilização de sons indicando a digitação de uma tecla e a mudança da parte

de um teclado. Isto também poderia permitir ao usuário digitar sem ter que olhar para a

interface e ter uma maior segurança na digitação. Ainda com relação a esta questão de

feedback sonoro, as letras digitadas poderiam ser escutadas pelos usuários, o que

permitiria a utilização da interface por pessoas com um pouco de deficiência visual.

Outro ponto de melhoria para a usabilidade da TIARI seria a adição de um

dicionário que completasse automaticamente as palavras à medida que o usuário fosse

digitando seu texto. Isto aumentaria o desempenho na digitação dos textos desejados,

pois palavras seriam sugeridas à medida que os usuários digitassem. Este dicionário

poderia ter suporte a várias línguas diferentes, conforme a configuração desejada pelo

usuário.

Além disto, uma melhoria no layout poderia ser feita dando suporte a números,

acentuação, pontuação e à movimentação com setas pelo texto. Isto não foi contemplado

no layout atual da TIARI, porém poderia ser adicionada uma nova parte do teclado que

tivesse estas teclas e esta parte poderia ser ativada através de algum novo gesto

adicionado à interface. Em relação à adição de novos gestos na TIARI, durante os

estudos de usabilidade várias pessoas sugeriram que as teclas especiais (enter,

backspace e espaço) pudessem ser acionadas através de gestos. Isto levaria a uma sobra

de mais 9 teclas o que poderia contemplar algumas dessas outras teclas sugeridas acima.

Além destas melhorias na questão da usabilidade da TIARI, poderiam ser feitas

melhorias no código e na arquitetura da mesma para facilitar a integração dela a outras

aplicações de RA. Por exemplo, poderia ser mais bem definida sua arquitetura e serem

criadas interfaces de abstração para a TIARI que pudessem ser utilizadas como se fosse

Page 86: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Capítulo 5 – Conclusão 86

um teclado convencional. Também seria interessante após estas alterações validar a

TIARI em outra aplicação que tivesse necessidade de entrada de texto e fazer mais

comparativos com outras interfaces para avaliar melhor seu desempenho, como por

exemplo, um comparativo em relação à performance dos teclados com poucas teclas

comumente utilizados em telefones celulares.

Por fim, como trabalhos futuros estariam as correções de alguns problemas

encontrados durante o desenvolvimento, como os ajustes na matriz de projeção utilizada

na TIARI. Também, um trabalho importante seria a alteração da TIARI para utilizar

vídeos com resoluções mais altas que 320x240 pixels, fazendo com que a detecção de

marcadores melhorasse, e consequentemente seu desempenho. Além do estudo

relacionado à melhoria da detecção de marcadores, também poderiam ser trabalhos

futuros um estudo sobre outras alternativas de tracking 3D para aumentar a robustez da

detecção de marcadores fiduciais

Page 87: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Referências BibliográficasReferências BibliográficasReferências BibliográficasReferências Bibliográficas

[1] Antoniac, Peter. Augmented Reality Based User Interface for Mobile Applications and Services. Tese de doutorado, Universidade de Oulu, Finlândia. Junho, 2005.

[2] ARToolkit. http://www.hitl.washington.edu/artoolkit. Último acesso em 01/2006.

[3] Azuma, Ronald T. A Survey of Augmented Reality. Presence: Teleoperators and Virtual

Environments, vol. 6, no. 4, pp. 355-385. Agosto, 1997.

[4] Azuma, Ronald T.; Baillot, Yohan; Behringer, Reinhold; Feiner, Steven; Julier, Simon; MacIntyre, Blair. Recent Advances in Augmented reality. IEEE Computer Graphics and

Applications, vol. 21, pp. 34-47. Dezembro, 2001.

[5] Bargen, B.; Donnelly, P. Inside DirectX, Microsoft Press. 1998.

[6] Beier, Klaus-Peter. Virtual Reality: A Short Introduction. http://www-vrl.umich.edu/intro/, último acesso em 04/04/2006.

[7] Bérard, François; Hardenberg, Christian. Bare-Hand Human-Computer Interaction. Workshop on

Perceptive user interfaces, vol. 15, pp. 1-8. 2001.

[8] Bérard, François. The Magic Table: Computer-Visio Based Augmentation of a Whiteboard for Creative Meetings. IEEE Workshop on Projector Camera Systems. 2003.

[9] Billinghurst, Mark; Grasset, R.; Looser J. Designing Augmented Reality Interfaces. ACM

SIGGRAPH Computer Graphics, vol. 39, no. 1, pp. 17-22. Fevereiro, 2005.

[10] Billinghurst, Mark; Kato, Hirokazu. Collaborative Augmented Reality. Communications of the

ACM, vol. 45, no. 7, pp. 64-70. Julho, 2002.

[11] Bimber, Oliver; Raskar, Ramesh. Spatial Augmented Reality: Merging Real and Virtual Worlds. Wellesley, Massachusetts: A K Peters, pp. 369. 2005.

[12] Bowman, Doug A.; Kruijff, Ernst; LaViola, Joseph J.; Poupyrev, Ivan. 3D User Interfaces: Theory and Practice. Addison-Wesley Professional, capítulo 9. Julho, 2004.

[13] Bowman, Doug A.; Ly, Vinh Q.; Campbell, Joshua M. Pinch Keyboard: Natural Text Input for Immersive Virtual Environments. Technical Report TR-01-15, Computer Science, Virginia Tech. 2001.

[14] Bowman, D.; Rhoton, C.; Pinho. M. Text Input Techniques for Immersive Virtual Environments: an Empirical Comparison. Human Factors and Ergonomics Society Annual Meeting, pp. 2154-2158. 2002.

[15] Bradski, Gary. The OpenCV Library. Dr. Dobb’s Journal - Computer Security. Novembro, 2000.

[16] Donath D.; Beetz J.; Grether K.; Petzold F.; Seichter H. Augmented Reality Techniques for Design and Revitalization in Existing Built Environments. 21st Annual Conference of the Association for Computer-Aided Design in Architecture, pp.322-329. Outubro, 2001.

[17] Doswell, Jayfus T.; Blake, M. Brian; Butcher-Green, Jerome. Mobile Augmented Reality System Architecture for Ubiquitous e-Learning. Fourth IEEE International Workshop on Wireless, Mobile and Ubiquitous Technology in Education - (WMTE'06), pp. 121-123. 2006.

[18] Farias, Thiago; Lima; João Paulo; Teichrieb, Veronica; Kelner, Judith. OgreAR: construção de aplicações de realidade aumentada utilizando bibliotecas de alto nível. Workshop sobre Aplicações de Realidade Virtual, pp. 61-64. 2006.

[19] Farias, Thiago; Pessoa, Saulo; Teichrieb, Veronica; Kelner, Judith. Tutorial: Engine Gráfico Ogre. Brazilian Games and Digital Entertainment Workshop, pp. 1-13. Novembro, 2005.

[20] Farias, Thiago; Silva, Daliton; Teichrieb, Veronica; Kelner, Judith. O engine gráfico OGRE. Brazilian Symposium on Computer Games and Digital Entertainment, tutorial. 2006.

[21] Fels, S. S.; Hinton, G. E. Glove-talk: A neural network interface between a data-glove and a

Page 88: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Referências Bibliográficas 88

speech synthesizer. IEEE Trans. Neural Networks, vol. 4, pp. 2-8. Janeiro, 1993.

[22] Fiala, M. ARTag. An Improved Marker System Based on ARToolkit. National Research

Council of Canada, Technical Report. Julho, 2004.

[23] Fiala, M. Fiducial marker systems for augmented reality: Comparison between artag and artoolkit. MIRAGE 2005 :Computer Vision/Computer Graphics Collaboration for Model-based Imaging, Rendering, image Analysis and Graphical special Effects, INRIA Rocquencourt. Março, 2005.

[24] Fleetwood, M. D.; Byrne, M. D.; Centgraf, P.; Dudziak, K. Q.; Lin, B.; Mogilev, D.. An Evaluation of Text-Entry in Palm OS - Graffiti and the Virtual Keyboard. Human Factors and Ergonomics Society 46th Annual Meeting, pp. 597-601. 2002.

[25] Hartson, H. “Human-Computer Interaction: Interdisciplinary roots and trends”. Journal of System and Software. 1998.

[26] JARToolkit. http://jerry.c-lab.de/jartoolkit. Último acesso em 01/2006.

[27] Kato, H.; Billinghurst, M. Marker Tracking and HMD Calibration for a Video-Based Augmented Reality Conferencing System. International Workshop on Augmented Reality, IEEE Computer Society, pp. 85-94. 1999.

[28] Kim, Kiyoung; Lee, Minkyung; Park, Youngmin; Woo, Woontack; Lee, Jongweon. ARPushPush: Augmented reality game in indoor environment. 2nd International Workshop on Pervasive Gaming Applications. 2005.

[29] Kim, Sooyoung; Jounghyun Gerard. Using Keyboards with Head Mounted Displays. Proceedings of the 2004 ACM SIGGRAPH international conference on Virtual Reality continuum

and its applications in industry, pp. 336-343. Junho, 2004.

[30] Kiyokawa, Kiyoshi; Ohno, Hiroyuki; Kurata, Yoshinori. Occlusive optical see-through displays in a collaborative setup. International Conference on Computer Graphics and Interactive Techniques, ACM SIGGRAPH, pp. 74-74. 2002.

[31] Lee, Gun A.; Billinghurst, Mark; Kim, Gerard Jounghyun. Occlusion based interaction methods for tangible augmented reality environments. ACM SIGGRAPH international conference on Virtual Reality continuum and its applications in industry, pp. 419-426. Junho, 2004.

[32] Lee, Minkyung; Woo, Woontack. ARKB: 3D vision-based Augmented Reality Keyboard. International Conference on Artificial Reality and Telexistence. Dezembro, 2003.

[33] Livingston, Mark A.; Rosenblum, Lawrence J.; Julier Simon J.; Brown, Dennis; Baillot, Yohan; Swan II, J. Edward; Gabbard Joseph L.; Hix, Deborah. An Augmented Reality System For Military Operations in Urban Terrain. The Interservice/Industry Training, Simulation & Education Conference (I/ITSEC). 2002.

[34] Mankoff, Jennifer; Abowd, Gregory D.; Cirrin: a word-level unistroke keyboard for pen input. 11th annual ACM symposium on User interface software and technology, pp. 213-214. 1998.

[35] Milgram, Paul; Kishino, Fumio. A Taxonomy of Mixed Reality Visual Displays. Institute of

Electronics, Information and Communication Engineers Transactions on Information and

Systems, Special issue on Networked Reality. Dezembro, 1994.

[36] M. Gross, S. Wurmlin, M. Naef, E. Lamboray, C. Spagno, A. Kunz, E. Koller-Meier, T. Svoboda, L. Van Gool, S. Lang, K. Strehlke, A. Vande Moere, O. Staadt, “blue-c: A spatially immersive display and 3D video portal for telepresence”, ACM Transactions on Graphics, 2003.

[37] Neider, Jackie; Davis, Tom; Woo, Mason. OpenGL Programming Guide - The Official Guide to Learning OpenGL, Version 1.1, Addison-Wesley, Reading, MA, USA. 1997.

[38] Nielsen, J. Usability Engineering. Academic Press. 1993.

[39] Noyes, J. The QWERTY keyboard: A review. Int. J. Man-Machine Studies vol. 18, pp. 265-281. 1983.

[40] Open Source computer vision (OpenCV) library. Intel Corporation, 2005. http://www.intel.com/technology/computing/opencv/index.htm. Último acesso 05/2007.

[41] Perlin, Ken. Quikwriting: continuous stylus-based text entry. 11th annual ACM symposium on

Page 89: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Referências Bibliográficas 89

User interface software and technology, pp. 215-216. 1998.

[42] Pintaric, T. A flexible DirectShow input module for ARToolkit. Augmented Reality Toolkit Workshop, 2003. IEEE International, pp. 74. Outubro, 2003.

[43] Pintaric, T. http://www.ims.tuwien.ac.at/~thomas/dsvideolib.php. Último acesso em 05/2007.

[44] Poupyrev, I.; Tomokazu, N.; Weghorst, S. Virtual Notepad: Handwriting in Immersive VR. Virtual Reality Annual International Symposium, pp. 126. 1998.

[45] Preece, J.; Rogers, Y.; Sharp, E., Benyon, D.; Holland, S.; Carey, T. Human-Computer Interaction. Addison-Wesley. 1994.

[46] Raskar, Ramesh; Low, Kok-Lim. Interacting with spatially augmented reality. Computer graphics, virtual reality, visualization and interaction in Africa, 1st international conference on Computer graphics, virtual reality and visualization, pp.101 - 108. 2001.

[47] Reitmayr, Gerhard; Schmalstieg, Dieter. Location based Applications for Mobile Augmented Reality. 4th Australasian User Interface Conference, pp. 65-73. Fevereiro, 2003.

[48] Regenbrecht, H.; Wagner, M.; Baratoff, G. MagicMeeting: A collaborative tangible Augmented reality system. Virtual Reality Systems Development and Applications, vol.6 no.3, pp. 151-166. Outubro, 2002.

[49] Rosenberg, R; Slater, M. The chording glove: a glove-based text input device. Systems, Man and Cybernetics, Part C: Applications and Reviews, IEEE Transactions on, pp. 186-191. Maio, 1999.

[50] Ryokai, K., Marti, S., Ishii, H., I/O Brush: Drawing with Everyday Objects as Ink. Proceedings of Conference on Human Factors in Computing Systems (CHI '04). Abril, 2004.

[51] Schnaider, Michael; Schwald, Bernd; Seibert, Helmut; Weller, Tanja. Medarpa - A Medical Augmented Reality System for Minimal-Invasive Interventions. 11th Annual Medicine Meets Virtual Reality (MMVR) Conference. Janeiro, 2003.

[52] Snyder, C. Paper Prototyping: The Fast and Easy Way to Design and Refine User Interfaces. Morgan Kaufmann Publishers. 2003.

[53] Soukoreff, R. W.; MacKenzie, I. S. Theoretical upper and lower bounds on typing speed using a stylus and soft keyboard. Behaviour & Information Technology, vol. 14, pp. 370-379. 1995.

[54] Summers, Valerie A.; Booth, Kellogg S.; Calvert, Tom; Graham, Evan; MacKenzie, Christine L. Calibration for augmented reality experimental testbeds. Symposium on Interactive 3D Graphics, pp. 155-162. 1999.

[55] Teixeira, João Marcelo; Moura, Guilherme; Silva, Daliton; Costa, Luiz Henrique; Bastos, Nacha; Teichrieb, Veronica; Kelner, Judith. A case study on the development of 3D user interfaces for mobile platforms. Symposium on Virtual and Augmented Reality. Maio, 2007.

[56] Teixeira, João Marcelo; Silva, Daliton; Moura, Guilherme; Costa, Luiz Henrique; Teichrieb, Veronica; Kelner, Judith. miva: constructing a wearable platform prototype. Symposium on Virtual and Augmented Reality, pp. 68-76. 2007.

[57] Thomas, B.; Tyerman, S.; Grimmer, K. Evaluation of Text Input Mechanisms for Wearable Computers. Virtual Reality: Research, Development and Applications, vol 3, pp. 187-199. 1998.

[58] Thomas, B. H.; Piekarski, W. Glove Based User Interaction Techniques for Augmented Reality in an Outdoor Environment. Virtual Reality: Research, Development, and Applications. 2002.

[59] Trevisan, D.; Vanderdonckt, J.; Macq, B. Analyzing Interac-tion in Augmented Reality Systems. ACM Multimedia 2002 International Workshop on Immersive Telepresence ITP’2002, pp. 56-59. 2002.

[60] Ullmer, B.; Ishii, H. The metaDESK: Models and Prototypes for Tangible User Interfaces. Proceedings of Symposium on User Interface Software and Technology, pp. 223-2321. 1997.

[61] Ullmer, B. & Ishii, H. Emerging Frameworks for Tangible User Interfaces. J. Carrol (ed)

Human Computer Interaction in the New Millennium, Addison-Wesley, pp. 579-601. 2001.

[62] Umlauf, Eike J.; Piringer, Harald; Reitmayr, Gerhard; Schmalstieg, Dieter. ARLib: The Augmented Library. IEEE First International Augmented Reality Toolkit Workshop (ART02).

Page 90: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Referências Bibliográficas 90

Setembro, 2002.

[63] Wagner, Daniel; Schmalstieg, Dieter. ARToolKitPlus for Pose Tracking on Mobile Devices. 12th Computer Vision Winter Workshop (CVWW'07). Fevereiro, 2007.

[64] Watts, Leon. The Magic Board, an Augmented Reality Interactive Device Based on Computer Vision. Symposium on Designing Interactive Systems, pp. 406-416. Abril, 2000.

[65] Webster, A.; Feiner, S.; MacIntyre, B.; Massie, B.; Krueger, T. Augmented reality in architectural construction, inspection and renovation. ASCE third congress on computing in civil engineering, pp. 913-919.

Page 91: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 91

Anexo AAnexo AAnexo AAnexo A

1o Experimento Para Definição da Interface Número de Pessoas: 06 Duração: 4h Objetivo: Avaliar 3 layouts de teclado diferentes baseado no feedback do usuário e marcação de tempo para digitação de algumas frases através da técnica de avaliação de interface paper prototyping (prototipação em papel), que foi escolhida com o objetivo de avaliar a interface antes mesmo de ser desenvolvida. O teclado avaliado consiste em um teclado proposto para ser utilizado em sistemas de Realidade Aumentada e ele representa um teclado comum, porém exibindo ao usuário apenas uma parte do teclado; para visualizar as outras partes o usuário precisa fazer um gesto. O teclado está dividido em 3 partes dispostas em 3 retângulos contendo 3x4 letras. Procedimento: Este experimento foi conduzido por 2 pessoas e o usuário que estava utilizando a interface. Uma pessoa era responsável pela troca de telas da interface (utilizando papéis, conforme mostrado abaixo) e a outra anotava os tempos de digitação de cada sentença, bem como comentários feitos pelo usuário. As frases utilizadas para o experimento foram construídas tentando utilizar o maior número de letras para avaliar como o usuário se comportaria para digitar letras que estão em partes diferentes do teclado. Foram utilizadas frases diferentes para cada interface e o usuário digitava a frase primeiramente, e seu tempo era medido, depois digitava uma frase diferente e, por fim, a frase inicial mais uma vez, e seu tempo era comparado com o tempo inicial para avaliar se houve uma melhora, pois o usuário já estaria familiarizado com a interface. As frases escolhidas para o experimento foram: Layout 1:

a) “Obrigado por sua ajuda” b) “Aqui jaz Xavier Bonifácio Portugal”

Layout 2:

a) “As quatro estações do ano” b) “A câmera de vídeo com zoom”

Layout 3:

a) “Nosso número de fax mudou” b) “Valorizar o homem vale mais que enriquecer”

Layouts de teclado avaliados: 1) QWERTY Esta interface foi proposta com o intuito de avaliar se este layout, como é o layout padrão de teclados, é uma boa opção já que o usuário está familiarizado com o mesmo.

2) Ordem Alfabética Esta interface foi proposta utilizando-se a premissa de que o usuário está familiarizado com a ordem alfabética e seria fácil saber a ordem em que seriam mostradas as teclas.

Page 92: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 92

3) Contendo as vogais e a letra y no início e o restante das consoantes em ordem alfabética Esta interface foi proposta pelo mesmo motivo da anterior, porém levando-se em consideração o fato de que as vogais e a letra y serem bastante utilizadas fazendo com que o usuário as encontre mais facilmente, pois estariam todas agrupadas em um mesmo local.

Resultados: 1) Tempos:

Layout Frase Tempo (min)

Obrigado por sua ajuda 2:00 Aqui jaz Xavier Bonifácio Portugal 1:34

1

Obrigado por sua ajuda 1:09 As quatro estações do ano 0:52 A câmera de vídeo com zoom 0:53

2

As quatro estações do ano 0:45 Nosso número de fax mudou 1:01 Valorizar o homem vale mais que enriquecer 1:39

3

Nosso número de fax mudou 1:02 Comentários: - Sentiu falta da funcionalidade de voltar a tela. - O espaço deveria estar mais fácil, pois sempre é utilizado. - A quebra das letras no layout QWERTY dificulta encontrar a posição de cada letra. - Preferiu o 2º layout, pois fica mais simples de encontrar as letras. - No 3º layout achou ruim as vogais no começo pois tem que fazer muitas trocas de tela para digitar as palavras. Achou este o pior layout. - Sugestão para melhoria do 3º layout: deixar as vogais e espaço fixos e correr apenas as consoantes. 2) Tempos:

Layout Frase Tempo (min)

Obrigado por sua ajuda 1:17 Aqui jaz Xavier Bonifácio Portugal 1:27

1

Obrigado por sua ajuda 0:43 As quatro estações do ano 0:53 A câmera de vídeo com zoom 0:52

2

As quatro estações do ano 0:41 Nosso número de fax mudou 1:07 Valorizar o homem vale mais que enriquecer 1:56

3

Nosso número de fax mudou 1:02 Comentários:

Page 93: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 93

- Achou o 1º layout difícil de encontrar as letras e teve dificuldade de encontrar a letra “L”. - Achou o 2º layout o melhor e o 3º o pior, pois sempre tinha que ficar voltando para digitar as vogais. 3) Tempos:

Layout Frase Tempo (min)

Obrigado por sua ajuda 1:29 Aqui jaz Xavier Bonifácio Portugal 1:46

1

Obrigado por sua ajuda 0:56 As quatro estações do ano 1:02 A câmera de vídeo com zoom 1:03

2

As quatro estações do ano 0:55 Nosso número de fax mudou 1:32 Valorizar o homem vale mais que enriquecer 2:12

3

Nosso número de fax mudou 1:15 Comentários: - Sentiu falta da visualização das próximas letras. - Deveria ter um movimento para o espaço. - Poderia utilizar a luva na outra mão. 4) Tempos:

Layout Frase Tempo (min)

Obrigado por sua ajuda 1:25 Aqui jaz Xavier Bonifácio Portugal 1:42

1

Obrigado por sua ajuda 0:52 As quatro estações do ano 1:27 A câmera de vídeo com zoom 0:59

2

As quatro estações do ano 1:01 Nosso número de fax mudou 1:16 Valorizar o homem vale mais que enriquecer 2:08

3

Nosso número de fax mudou 1:05 Comentários: - Até agora só ele utilizou os acentos do teclado, as outras pessoas não perceberam que havia disponíveis os acentos. - Achou que seria interessante a funcionalidade de voltar. - Achou o 3º layout o pior. 5) Tempos:

Layout Frase Tempo (min)

Obrigado por sua ajuda 1:29 Aqui jaz Xavier Bonifácio Portugal 1:32

1

Obrigado por sua ajuda 1:17 As quatro estações do ano 1:39 A câmera de vídeo com zoom 0:58

2

As quatro estações do ano 1:19 Nosso número de fax mudou 1:18 Valorizar o homem vale mais que enriquecer 2:00

3

Nosso número de fax mudou 1:05 Comentários: - Apesar de saber o layout QWERTY teve dificuldade de encontrar as letras. - Não notou os acentos. - Achou o 2º layout melhor que o 1º. - Preferiu o 3º layout, pois achou que as sílabas simples (por ex: “de”) ficaram próximas. - Achou que talvez visualizando o todo o QWERTY fosse melhor.

Page 94: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 94

- Não utilizou acentos e teve dificuldade de utilizar o espaço. 6) Tempos:

Layout Frase Tempo (min)

Obrigado por sua ajuda 1:01 Aqui jaz Xavier Bonifácio Portugal 1:18

1

Obrigado por sua ajuda 0:51 As quatro estações do ano 1:15 A câmera de vídeo com zoom 1:03

2

As quatro estações do ano 0:50 Nosso número de fax mudou 1:23 Valorizar o homem vale mais que enriquecer 2:07

3

Nosso número de fax mudou 1:09 Comentários: - Achou o 3º layout muito ruim.

Page 95: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 95

Anexo BAnexo BAnexo BAnexo B

Tutorial para avaliação da TIARI Este tutorial irá ajudar no entendimento de utilização da TIARI. Após vestir a luva de gestos, o HMD e a luva com marcadores, por favor, seguir os seguintes passos nesta ordem: 1) Digite a letra 'A' colocando o seu dedo indicador em cima da letra 'A' e aguardando que ela apareça na tela. 2) Digite a letra 'D' da mesma forma. 3) Passe a parte seguinte do teclado fazendo um movimento de fechar e abrir a mão direita. Note que a parte seguinte do teclado é exibida. Agora digite a letra 'L'. 4) Agora passe a parte seguinte do teclado da mesma forma feita anteriormente e digite a letra 'U'. 5) Note que no lado direito de todas as partes do teclado algumas teclas “especiais” são repetidas. Digite um espaço. 6) Delete os últimos caracteres digitados. 7) Digite um enter. 8) Digite a letra 'D'. 9) Delete todos os caracteres. 10) Digite a palavra "FINOS" e enter. 11) Digite a palavra "DINHEIRO" e enter. 12) Digite a palavra "AVELUDADO" e enter. 13) Digite a frase "Obrigado por sua ajuda".

Page 96: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 96

Anexo CAnexo CAnexo CAnexo C

Questionário de avaliação da TIARI Idade: __________ Sexo: ( ) M ( ) F Profissão: ______________________________ 1) Que nota de 0 (zero) a 10 (dez) você dá para o cansaço do seu braço durante a utilização da TIARI (zero significa sem cansaço e 10 significa muito cansado)? _____________ 2) Que nota de 0 (zero) a 10 (dez) você dá para o cansaço da sua mão durante a utilização da TIARI (zero significa sem cansaço e 10 significa muito cansado)? _____________ 3) Que nota de 0 (zero) a 10 (dez) você dá para o cansaço do seu pescoço durante a utilização da TIARI (zero significa sem cansaço e 10 significa muito cansado)? _____________ 4) Que nota de 0 (zero) a 10 (dez) você dá para o nível de tontura que você sentiu durante a utilização da TIARI (zero significa sem tontura e 10 significa muito tonto)? _____________ 5) Que nota de 0 (zero) a 10 (dez) você dá para o nível de náusea que você sentiu durante a utilização da TIARI (zero significa sem náusea e 10 significa com bastante náusea)? _____________ Comentários e sugestões de melhoria: _____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

_____________________________________________________________________________________

Muito obrigada pela sua participação e colaboração com esta dissertação de mestrado!

Page 97: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 97

Anexo DAnexo DAnexo DAnexo D

Detalhamento do experimento de avaliação da TIARI 1) Idade: 19 Sexo: M Profissão: Estudante

Tempos:

Interface Frase Tempo (min)

TUTORIAL 5:35 Valorizar o homem vale mais que enriquecer 2:46 Aqui jaz Xavier Bonifacio Portugal 1:50

TIARI

Vale mais um inimigo sábio que um amigo ignorante 3:39 Valorizar o homem vale mais que enriquecer 2:41 Aqui jaz Xavier Bonifacio Portugal 3:39

Teclado mivaDesk

Vale mais um inimigo sábio que um amigo ignorante 4:49 Notas da avaliação de conforto: Cansaço dos braços: 2 Cansaço das mãos: 0 Cansaço do pescoço: 2 Tontura: 0 Náusea: 0 Comentários: - Não sentiu tontura, mas após um tempo utilizando o HMD teve um pouco de dor de cabeça - Deixar a luva com os marcadores na posição cansa mais o braço do que apontar a letra na digitação. Talvez se o papel ficasse perpendicular à mão, cansasse menos. 2) Idade: 20 Sexo: M Profissão: Estudante Tempos:

Interface Frase Tempo (min)

TUTORIAL 5:03 Valorizar o homem vale mais que enriquecer 4:31 Aqui jaz Xavier Bonifacio Portugal 2:09

TIARI

Vale mais um inimigo sábio que um amigo ignorante 2:43 Valorizar o homem vale mais que enriquecer 6:33 Aqui jaz Xavier Bonifacio Portugal 3:12

Teclado mivaDesk

Vale mais um inimigo sábio que um amigo ignorante 4:02 Notas da avaliação de conforto: Cansaço dos braços: 8 Cansaço das mãos: 3 Cansaço do pescoço: 7 Tontura: 1 Náusea: 0 Comentários: - Fazer um gesto para ser utilizadas as funções de espaço e backspace - Achou fácil decorar a seqüência das letras no teclado 3) Idade: 23 Sexo: M Profissão: Estudante

Tempos:

Page 98: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 98

Interface Frase Tempo (min)

TUTORIAL 5:57 Valorizar o homem vale mais que enriquecer 5:23 Aqui jaz Xavier Bonifacio Portugal 2:24

TIARI

Vale mais um inimigo sábio que um amigo ignorante 4:05 Valorizar o homem vale mais que enriquecer 4:46 Aqui jaz Xavier Bonifacio Portugal 2:14

Teclado mivaDesk

Vale mais um inimigo sábio que um amigo ignorante 5:42 Notas da avaliação de conforto: Cansaço dos braços: 7 Cansaço das mãos: 2 Cansaço do pescoço: 0 Tontura: 1 Náusea: 0 Comentários: - A detecção dos marcadores poderia depender menos de fatores externos como iluminação e posição - As teclas especiais poderiam estar associadas a gestos pois tanto aumentaria espaço para mais caracteres quanto agilizaria o trabalho 4) Idade: 23 Sexo: M Profissão: Estudante

Tempos:

Interface Frase Tempo (min)

TUTORIAL 6:45 Valorizar o homem vale mais que enriquecer 3:04 Aqui jaz Xavier Bonifacio Portugal 2:38

TIARI

Vale mais um inimigo sábio que um amigo ignorante 2:48 Valorizar o homem vale mais que enriquecer 5:06 Aqui jaz Xavier Bonifacio Portugal 3:02

Teclado mivaDesk

Vale mais um inimigo sábio que um amigo ignorante 2:35 Notas da avaliação de conforto: Cansaço dos braços: 7 Cansaço das mãos: 6 Cansaço do pescoço: 8 Tontura: 9 Náusea: 0 Comentários: - No começo a velocidade de digitação pareceu lenta, depois ficou mais fácil e já dava para antecipar a letra seguinte. - As teclas especiais no canto direito atrapalham um pouco, sendo ativadas sem querer. - Talvez aumentando o tempo de ativação das teclas especiais atrapalhasse menos. - A mão esquerda ficou cansada de segurar os marcadores na posição. 5) Idade: 24 Sexo: M Profissão: Estudante

Tempos:

Interface Frase Tempo (min)

TUTORIAL 5:34 Valorizar o homem vale mais que enriquecer 4:52 Aqui jaz Xavier Bonifacio Portugal 3:10

TIARI

Vale mais um inimigo sábio que um amigo ignorante 4:14 Valorizar o homem vale mais que enriquecer 5:20 Teclado

mivaDesk Aqui jaz Xavier Bonifacio Portugal 3:20

Page 99: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 99

Vale mais um inimigo sábio que um amigo ignorante 4:44 Notas da avaliação de conforto: Cansaço dos braços: 9 Cansaço das mãos: 9 Cansaço do pescoço: 8 Tontura: 8 Náusea: 7 Comentários: - É melhor segurar os marcadores mais para perto da ponta dos dedos, pois assim não é necessário movimentar todo o braço para deslocar os marcadores para dentro do campo de visão. - Poderia haver um som e dizer a letra digitada pois cansa muito ficar mudando a vista do teclado para o campo de texto e vice-versa. - As teclas mais utilizadas (espaço, enter e backspace) poderiam ter atalhos que poderiam ser gestos (similar ao que muda a parte do teclado). - Falta a funcionalidade de mover o cursor para os lados e entre as linhas de texto. 6) Idade: 26 Sexo: M Profissão: Estudante pesquisador Tempos:

Interface Frase Tempo (min)

TUTORIAL 7:09 Valorizar o homem vale mais que enriquecer 2:39 Aqui jaz Xavier Bonifacio Portugal 3:07

TIARI

Vale mais um inimigo sábio que um amigo ignorante 3:11 Valorizar o homem vale mais que enriquecer 3:10 Aqui jaz Xavier Bonifacio Portugal 4:10

Teclado mivaDesk

Vale mais um inimigo sábio que um amigo ignorante 3:30 Notas da avaliação de conforto: Cansaço dos braços: 5 Cansaço das mãos: 3 Cansaço do pescoço: 8 Tontura: 2 Náusea: 0 Comentários: - O tamanho do marcador interfere na janela de escrita. 7) Idade: 23 Sexo: M Profissão: Estudante designer Tempos:

Interface Frase Tempo (min)

TUTORIAL 7:14 Valorizar o homem vale mais que enriquecer 3:09 Aqui jaz Xavier Bonifacio Portugal 1:28

TIARI

Vale mais um inimigo sábio que um amigo ignorante 3:53 Valorizar o homem vale mais que enriquecer 4:10 Aqui jaz Xavier Bonifacio Portugal 2:12

Teclado mivaDesk

Vale mais um inimigo sábio que um amigo ignorante 4:02 Notas da avaliação de conforto: Cansaço dos braços: 8 Cansaço das mãos: 2 Cansaço do pescoço: 0 Tontura: 0 Náusea: 0

Page 100: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 100

Comentários: - O backspace fica se ativando sozinho. - Por ser precária a identificação dos marcadores, a gente precisa aproximar muito da câmera. Acho que uma câmera melhor pode resolver este problema.

Page 101: TIARI: Uma TIARI: Uma InterfaceInterfaceInterface para ... · Algumas aplicações de Realidade Aumentada têm a necessidade de entrada de texto, e com isso diversas formas de entrada

Anexos 101

Anexo EAnexo EAnexo EAnexo E

Gráficos de média de digitação na TIARI por frase digitada

Frase 1

0,0000

0,0500

0,1000

0,1500

0,2000

0,2500

0,3000

ca

racte

res

po

r seg

un

do

(cp

s) TIARI

mivaDesk

Frase 2

0,0000

0,1000

0,2000

0,3000

0,4000

0,5000

cara

cte

res p

or

seg

un

do

(cp

s) TIARI

mivaDesk

Frase 3

0,0000

0,0500

0,1000

0,1500

0,2000

0,2500

0,3000

0,3500

ca

rac

tere

s p

or

seg

un

do

(cp

s) TIARI

mivaDesk