• Nenhum resultado encontrado

2.8 Ferramentas de Avalia¸c˜ ao da Usabilidade

3.1.2 Testes com a ferramenta Coruja

Os testes foram efetuados com um pequeno aplicativo criado na linguagem de pro- grama¸c˜ao C# no qual foram integrados os recursos do aplicativo Coruja. Foram sele- cionadas quinze pessoas do sexo masculino e feminino com idade entre 18 e 50 anos, dentre elas, algumas com maior experiˆencia em desenvolvimento de software e as demais com conhecimentos b´asicos em inform´atica. Visando verificar a eficiˆencia do sistema em fun¸c˜ao de apoiar essa pesquisa, o aplicativo de teste foi configurado para reconhecer so- mente as cinco palavras chave pretendidas para a pesquisa: ´Otimo, Bom, Ruim, Regular e P´essimo. A Figura 20 apresenta a interface do prot´otipo de teste na qual s˜ao listadas algumas palavras reconhecidas durante um teste.

3.1 Defini¸c˜ao da Estrutura do Sistema 82

Figura 20 – Interface do prot´otipo de teste da ferramenta Coruja

Durante os testes com a ferramenta os participantes eram incentivados a pronunciarem as palavras de forma aleat´oria utilizando um notebook. N˜ao havia crit´erio para pronuncia das palavras, simplesmente foi solicitado aos participantes que pronunciassem pelo menos uma vez cada palavra chave. O computador continha um microfone externo que coletava sons pronunciados no ambiente e tamb´em conectores para utiliza¸c˜ao de headfones ou fones de ouvido com microfone. Dentro da disponibilidade de cada participante foram realizados testes com microfone externo e com fones de ouvidos. Al´em do recurso tecnol´ogico, o ambiente no qual se instalou o computador (uma sala de aula de uma faculdade) levou a ocorrˆencia de diversas varia¸c˜oes de ru´ıdos sendo em determinados momentos um local silencioso e em outros com mais barulhos.

O tipo de microfone utilizado e a varia¸c˜ao de sons no ambiente influenciaram sig- nificativamente a avalia¸c˜ao da ferramenta levando a cuidados especiais na realiza¸c˜ao de cada experimento. Os resultados mostraram que a ferramenta se comportava muito bem quando utilizada com um fone de ouvido com resultados ainda melhores em ambientes com pouco barulho. J´a o microfone externo apresentou bons resultados em testes feitos em situa¸c˜ao de silˆencio ou baix´ıssimo ru´ıdo, para ambientes com barulho o percentual de reconhecimento foi baixo.

Os ru´ıdos n˜ao foram os ´unicos fatores a interferir no reconhecimento: o volume, tom da voz e sotaque tamb´em interferiram no processamento de algumas palavras. Alguns participantes pronunciaram palavras em volume/tom de voz muito baixo o que dificultou o trabalho da ferramenta Coruja. Ao serem corrigidos e alertados a falarem mais alto e com tom de voz firme o problema de reconhecimento era solucionado. O sotaque foi o terceiro fator que influenciou o processamento da fala, principalmente de palavras com a letra ”R”como Regular ou Ruim, com destaque para a primeira palavra. A forma como alguns participantes pronunciaram a letra R ocasionou a uma dificuldade de interpreta¸c˜ao no sistema, por´em, n˜ao foi poss´ıvel identificar um padr˜ao para essa divergˆencia. Os resultados dos testes s˜ao apresentados na Tabela 6.

3.1 Defini¸c˜ao da Estrutura do Sistema 83

Tabela 6 – Resultados dos testes da ferramenta Coruja Microfone Ambiente % Reconhecimento Headfone Silencioso 90

Headfone Barulho 65 Externo Silencioso 85 Externo Barulho 30

A falha nos reconhecimentos ocorreu de duas maneiras: no primeiro a palavra pro- nunciada n˜ao era escrita na tela sinalizando que a aplica¸c˜ao n˜ao recebeu o sinal de voz ou n˜ao conseguiu efetuar reconhecimento; no segundo caso a palavra escrita na tela era diferente da palavra pronunciada e apresentava uma taxa de confian¸ca (percentual no qual a ferramenta Coruja aponta a qualidade de reconhecimento) muito baixa.

Os resultados apontavam para a necessidade de realiza¸c˜ao dos testes de usabilidade em ambientes silenciosos, ou com baixo n´ıvel de ru´ıdos, independente da utiliza¸c˜ao do headfone ou de um microfone externo, em outras palavras, o silˆencio na sala de testes deveria ser rigorosamente controlado para n˜ao afetar os dados e consequentemente o resultado final do teste e/ou afetar o percentual de confian¸ca do reconhecimento das palavras.

Embora tenha apresentado limita¸c˜oes no reconhecimento das palavras, o percentual de sucesso nos testes foi considerado satisfat´orio para o desenvolvimento do aplicativo ErgoSV e tamb´em para os experimentos desta pesquisa, sendo portanto, selecionada para tais atividades.

Na pr´oxima se¸c˜ao ser˜ao apresentados os testes efetuados na ferramenta OpenCV a fim de apoiar as atividades de processamento de imagens e reconhecimento facial.

3.1.2.1 Biblioteca OpenCV

O grande n´umero de atividades relacionadas ao processamento de imagens levaram ao surgimento de ferramentas computacionais para apoiar tais atividades. Dentre elas a biblioteca OpenCV que ´e um frameword Open Source utilizada para processamento de imagens offline ou em tempo real. Ela pode ser utilizada em ´areas como IHC, identifica¸c˜ao de objetos, segmenta¸c˜ao, reconhecimento de faces, gestos e demais atividades relacionadas `

a computa¸c˜ao visual (LIMA et al., 2008). Ela foi desenvolvida originalmente na linguagem C/C++ e permite integra¸c˜ao com ambientes de desenvolvimento como Microsoft Visual Studio, Eclipse e C++ Builder.

3.1 Defini¸c˜ao da Estrutura do Sistema 84

Distribui¸c˜oes (releases paralelas) foram criadas com a finalidade de permitir a adapta¸c˜ao da ferramenta a um maior n´umero de linguagens e ambientes de programa¸c˜ao, exemplo de- las ´e a EMGU OpenCV dispon´ıvel em (http://www.emgu.com/wiki/index.php/OpenCV). Nesta distribui¸c˜ao foram implementados m´etodos espec´ıficos para utiliza¸c˜ao junto a lin- guagem C# melhorando a capacidade de integra¸c˜ao com o ambientes como o Microsoft Visual Studio. Outra distribui¸c˜ao conhecida ´e a JavaCV que permite a integra¸c˜ao com a plataforma de desenvolvimento Java.

A distribui¸c˜ao da OpenCV estudada para esta pesquisa foi a EMGU OpenCV de- vido ao fato da implementa¸c˜ao ser realizada utilizando o C#. A integra¸c˜ao ´e feita por meio de arquivos DLL permitindo que fun¸c˜oes que exigiam grande quantidade de linhas de c´odigo para implementa¸c˜ao fossem acessadas por meio de m´etodos simples, situa¸c˜ao semelhante `a apresentada para processamento de fala. Um exemplo da aplica¸c˜ao desta biblioteca ´e utiliza¸c˜ao do algoritmo para identifica¸c˜ao de faces dentro de uma imagem. A funcionalidade ´e facilmente acessada pelo comando grayFrame.DetectHaarCascade no qual s˜ao atribu´ıdos parˆametros execu¸c˜ao do mesmo. Esta fun¸c˜ao identifica e destaca com um desenho (quadro com bordas pretas) as imagens de rostos encontrados na imagem.

A aplica¸c˜ao desta fun¸c˜ao no ambiente de desenvolvimento Visual C# Express em conjunto com um contador de tempo com atualiza¸c˜ao autom´atica permitiu que a fun¸c˜ao fosse executada durante todo o tempo de uma filmagem.

Um trabalho desenvolvido por Oliveira e Jaques (2008) foi realizado com auxilio da biblioteca OpenCv que teve o objetivo de capturar imagens da face do usu´ario e utilizando uma base de conhecimento complexa contendo informa¸c˜oes sobre as caracter´ısticas de emo¸c˜oes, o sistema deveria reconhecer qual a emo¸c˜ao expressada pelo usu´ario. O processo de detec¸c˜ao facial foi efetuado com auxilio da OpenCv.

Isto deve-se ao fato da biblioteca implementar o m´etodo Haar-like features, conhecido tamb´em por M´etodo de Viola Jones. Para efetuar o processamento a imagem ´e submetida a biblioteca OpenCV que, utilizando o m´etodo de Viola Jones, procura por uma face dentro da imagem demarcando a regi˜ao que cont´em tal informa¸c˜ao (LIMA et al., 2008). A Figura 21 apresenta um exemplo de demarca¸c˜ao da regi˜ao facial realizado pela biblioteca OpenCV e o m´etodo de Viola Jones (OLIVEIRA; JAQUES, 2008). No quadro a esquerda ´e apresentada a imagem completa obtida por meio de uma cˆamera; no quadro a direita ´e exibida a imagem j´a processada com destaque somente a ´area da face.

Os experimentos para verificar a eficiˆencia da OpenCV para esta pesquisa foram re- alizados de forma similar aos testes com a ferramenta Coruja. Um pequeno aplicativo

3.1 Defini¸c˜ao da Estrutura do Sistema 85

Figura 21 – Reconhecimento facial com OpenCV (OLIVEIRA; JAQUES, 2008)

(prot´otipo) foi criado com a ´unica fun¸c˜ao de se conectar com a webcam e efetuar o reco- nhecimento facial das pessoas que participavam dos testes. Neste software foram inseridos os arquivos DLL que permitem a integra¸c˜ao com os algoritmos de reconhecimento facial, al´em de codificados os algoritmos para execu¸c˜ao das fun¸c˜oes de reconhecimento e conex˜ao com a cˆamera. Uma pequena tela contendo um display para exibir a face do participante foi posicionado no centro da tela conforme apresenta a s´erie de imagens que comp˜oe a Figura 22.

(a) Face 01 (b) Face 02 (c) Face 03 (d) Face 04

Figura 22 – Teste de reconhecimento facial com OpenCV

Os resultados apontaram para uma capacidade de reconhecimento superior a 90% levando a conclus˜ao de que a ferramenta seria adequada para apoiar a execu¸c˜ao dessa pesquisa.

3.1.2.2 Considera¸c˜oes Finais sobre a Sele¸c˜ao de Recursos Computacionais

Os recursos selecionados para apoiar o desenvolvimento desta pesquisa foram esco- lhidos considerando resultados estabelecidos e publicados em outros trabalhos cient´ıficos al´em dos resultados dos experimentos feitos especificamente para este trabalho. Opini˜oes t´ecnicas de desenvolvedores de software e especialistas da ´area de computa¸c˜ao, mas n˜ao vinculados a ´area de pesquisa tamb´em foram levados em considera¸c˜ao. Os recursos seleci-

3.1 Defini¸c˜ao da Estrutura do Sistema 86

onados foram unidos e utilizados no desenvolvimento da aplica¸c˜ao ErgoSV e consequente- mente nos experimentos deste projeto. No pr´oximo t´opico ser´a apresentada a defini¸c˜ao das atividades e a modelagem utilizando diagramadas da Unified Modeling Language (UML).