• Nenhum resultado encontrado

OST-HMD Binocular:

5.2.2 Acur´ acia

A qualidade do algoritmo implementado foi avaliada utilizando o prot´otipo para rastrear a dire¸c˜ao do olhar do usu´ario em um padr˜ao de calibra¸c˜ao exibido pelo m´odulo de display de realidade aumentada. Para a realiza¸c˜ao dessa etapa do experimento, foi desenvolvido um aplicativo Android utilizando o Unity Engine. Ele ´e respons´avel por exibir o padr˜ao de calibra¸c˜ao, durante a etapa de calibra¸c˜ao, e indicar a regi˜ao da tela para a qual o usu´ario est´a olhando, durante a fase de teste. O aplicativo comunica com um servidor, desenvolvido na linguagem de programa¸c˜ao Python, que ´e executado na unidade de processamento presente no m´odulo ISB do prot´otipo do HMD. O servidor ´e respons´avel por armazenar o modelo de calibra¸c˜ao de cada usu´ario e por executar o algoritmo de Gaze Tracking.

Devido `a instabilidade do algoritmo mediante a varia¸c˜ao de ilumina¸c˜ao da imagem do olho capturada pela cˆamera, n˜ao foi poss´ıvel criar um modelo de regress˜ao que mapeasse o vetor centro-ˆancora do algoritmo para coordenadas espec´ıficas do padr˜ao de calibra¸c˜ao. Dessa forma, a ´area ´util de exibi¸c˜ao em realidade aumentada correspondente `a tela do aplicativo foi divida verticalmente em trˆes regi˜oes, simplificando a tarefa do algoritmo de Gaze Tracking. Sendo assim, ap´os a etapa de calibra¸c˜ao, o algoritmo deve indicar para qual das trˆes poss´ıveis regi˜oes da tela o usu´ario est´a olhando. A Figura 5.8 mostra a vis˜ao estereosc´opica das regi˜oes utilizadas nas etapas de calibra¸c˜ao e teste do algoritmo. Elas s˜ao evidenciadas por diferentes tonalidades da cor verde.

Durante a etapa de calibra¸c˜ao, os usu´arios s˜ao instru´ıdos a focar na regi˜ao que estiver sendo exibida. Cada regi˜ao ´e mostrada por um per´ıodo de trˆes segundos enquanto as outras regi˜oes s˜ao omitidas. Simultaneamente `a exibi¸c˜ao, o algoritmo de Gaze Tracking calcula e armazena um conjunto de vetores centro-ˆancora correspondentes `a regi˜ao exi- bida, gerando uma cole¸c˜ao de dados de entrada e sa´ıda. A partir dos dados obtidos ´e poss´ıvel criar um modelo de calibra¸c˜ao, que relaciona o vetor centro-ˆancora calculado com uma das trˆes poss´ıveis regi˜oes. Neste trabalho, optou-se por usar o Support Vector Classifier (SVC) com kernel RBF (Radial Basis Function) para cria¸c˜ao do modelo de calibra¸c˜ao do rastreamento de olhar. Durante a etapa de teste, os usu´arios s˜ao nova- mente instru´ıdos a focar o olhar na regi˜ao que estiver sendo exibida. Enquanto isso, o algoritmo infere qual ´e a regi˜ao focada utilizando o modelo de calibra¸c˜ao espec´ıfico do

Figura 5.8: Padr˜ao de calibra¸c˜ao utilizado no teste do algoritmo de Gaze Tracking

usu´ario. Sendo assim, torna-se poss´ıvel calcular a taxa de acerto do algoritmo atrav´es da compara¸c˜ao da regi˜ao exibida, que ´e conhecida, com a regi˜ao inferida.

Considerando o incˆomodo gerado pelo peso da vers˜ao do final desse prot´otipo, apenas quatro usu´arios participaram do teste de avalia¸c˜ao da acur´acia do algoritmo. Cada avalia¸c˜ao ´e composta por trˆes sess˜oes e cada sess˜ao consiste na realiza¸c˜ao de quatro etapas. As duas primeiras etapas visam o ajuste do HMD, de forma que seja poss´ıvel identificar, atrav´es da cˆamera acoplada ao prot´otipo, o centro e o canto interno do olho direito do usu´ario. Para que ele consiga fazer o ajuste correto, o aplicativo exibe o streaming em tempo real dos frames capturados pela cˆamera. Na terceira etapa, a calibra¸c˜ao do modelo, descrita anteriormente, ´e realizada. Na quarta e ´ultima etapa, ´

e realizado o teste do modelo j´a calibrado. Os resultados obtidos s˜ao apresentados na Figura 5.9 e na Tabela 5.1. A Figura 5.9 mostra as m´edias da taxa de acerto do algoritmo por usu´ario e a m´edia considerando o total de usu´arios. As barras de erro, presentes no gr´afico, representam os intervalos de confian¸ca de 95%. Os valores das m´edias e dos desvios-padr˜ao para cada usu´ario e para o total de usu´arios s˜ao apresentados pela Tabela 5.1.

Como pode ser visto na Figura 5.9 e na Tabela 5.1, a taxa de acerto do algoritmo apresentou grande varia¸c˜ao tanto por usu´ario quanto entre os usu´arios e, al´em disso, ´

e poss´ıvel afirmar que ela est´a aqu´em do esperado, pois a m´edia de acerto do total de usu´arios ´e igual a apenas 71.89%.

Os seguintes motivos se destacam entre os poss´ıveis causadores do baixo desempenho do algoritmo: a sensibilidade `a varia¸c˜ao de ilumina¸c˜ao; a dificuldade de detec¸c˜ao da

Figura 5.9: Taxa de acerto do algoritmo com intervalo de confian¸ca de 95%

Tabela 5.1: M´edia e desvio-padr˜ao da taxa de acerto do algoritmo ID do Usu´ario M´edia (em %) Desvio-Padr˜ao (em %)

Usu´ario 1 59.93 2.45 Usu´ario 2 69.74 5.24 Usu´ario 3 83.39 0.37 Usu´ario 4 74.52 7.45

Total 71.89 9.71

regi˜ao do olho pelo classificador em cascata baseado em atributos Haar; e a sensibilidade do algoritmo `a movimenta¸c˜ao do usu´ario e do HMD. A seguir cada um desses motivos e suas poss´ıveis influˆencias no desempenho s˜ao explicados em detalhes.

A sensibilidade `a ilumina¸c˜ao faz com que as coordenadas assinaladas como centro ou canto do olho pelo algoritmo fiquem oscilando em torno das coordenadas reais, mesmo quando a pupila do usu´ario est´a est´atica. Esse fenˆomeno resulta em um erro que ´e propagado nas etapas de calibra¸c˜ao e de teste do algoritmo. Considerando o campo de vis˜ao estreito e a profundidade de campo de cerca de 70 cm, ser´a necess´ario apenas um pequeno deslocamento da pupila para o usu´ario mudar o foco entre as regi˜oes do padr˜ao de calibra¸c˜ao exibidos em realidade aumentada pelo prot´otipo. Desta forma, dependendo da luminosidade, o erro introduzido por essa vari´avel pode ter uma magni- tude semelhante `a do deslocamento da pupila referente `a mudan¸ca de foco. Entretanto,

an´alises mais profundas devem ser realizadas para verificar a significˆancia dessa fonte de erro. De qualquer maneira, outras t´ecnicas que ofere¸cam maior robustez a varia¸c˜ao de ilumina¸c˜ao devem ser analisadas em trabalhos futuros. Uma poss´ıvel alternativa seria melhorar o ajuste autom´atico dos parˆametros da cˆamera de acordo com a luminosidade do ambiente.

O classificador em cascata baseado em atributos Haar apresentou dificuldades na identifica¸c˜ao autom´atica da regi˜ao que cont´em o olho do usu´ario. As regi˜oes propostas por esse algoritmo nem sempre contemplavam a totalidade do olho, impossibilitando a localiza¸c˜ao correta do canto do olho. Dessa forma, durante a avalia¸c˜ao de acur´acia, foi necess´aria a identifica¸c˜ao manual da regi˜ao do olho de cada usu´ario. Esse procedimento foi realizado apenas uma vez por participante. Tamb´em ´e importante notar que, mesmo com ajuste do HMD nas duas primeiras etapas da avalia¸c˜ao, pode ter ocorrido mudan¸cas na posi¸c˜ao relativa entre a cˆamera do prot´otipo e o olho do usu´ario, fazendo com que a regi˜ao proposta inicialmente deixe de ser suficientemente boa para a identifica¸c˜ao correta do canto do olho. Sendo assim, esse problema pode ser o respons´avel pela varia¸c˜ao da taxa de acerto entre as sess˜oes de um mesmo usu´ario e, em parte, pela grande varia¸c˜ao entre os resultados dos usu´arios. Essa quest˜ao tamb´em pode explicar a sensibilidade do algoritmo `a movimenta¸c˜ao do usu´ario e do HMD. De fato, foi poss´ıvel observar que o Usu´ario 3, que conseguiu se manter posicionado de forma mais est´avel durante a realiza¸c˜ao de todas as sess˜oes, apresentou tanto a maior m´edia da taxa de acerto quanto a menor varia¸c˜ao entre as sess˜oes. Desta maneira, em trabalhos futuros, outros algoritmos para detec¸c˜ao do olho do usu´ario devem ser avaliados.

Os quatro usu´arios que participaram dessa avalia¸c˜ao de acur´acia foram convidados a preencher um question´ario sobre suas experiˆencias e percep¸c˜oes durante a utiliza¸c˜ao do prot´otipo. Essa etapa representa apenas uma pequena avalia¸c˜ao de experiˆencia de usu´ario e ´e descrita detalhadamente na pr´oxima sess˜ao.