You are on page 1of 8

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB


Marcel Souza Oliveira
Universidade Federal de Minas Gerais marcel.s.o@me.com
INTRODUC AO

I.

Pupilometria pode ser entendida a medi c ao do tamanho da pupila. Medi c oes deste car ater s ao realizadas para registrar o comportamento da pupila em diferentes condi c oes de ilumina c ao e em diferentes quadros cl nicos de pacientes. Estas varia c oes de tamanho s ao controladas pelo sistema nervoso simp atico que estimula a c oes que permitem ao organismo responder a situa c oes de estresse, dentre elas pode-se adicionar varia c oes de luminosidade. Exames de pupilometria fazem uso de pupil ometros para medir as varia c oes de di ametro da pupila. Um pupil ometro e um dispositivo que registra e armazena o tamanho da pupila dado s erie de est mulos luminosos. Este auxilia no diagn ostico r apido para pacientes com suspeita de les ao cerebral danos relacionadas ao sistema nervoso simp atico. Como sa da, o pupil ometro prov e um v deo contendo as varia c oes do tamanho da pupila em resposta aos est mulos luminosos. Este trabalho tenta desenvolver um software que compute de forma autom atica s eries de pupilometria de exames previamente realizados, sob certas condi c oes, al em de realizar tratamentos nos dados resultantes de forma obter s eries prontas para an alises posteriores. Este trabalho ser a dividido em duas partes. A primeira consiste na implementa c ao do m odulo de obten c ao da s erie temporal dado um v deo de entrada (algoritmos de vis ao computacional e processamento de imagens). A segunda consiste no tratamento estat stico dos dados objetivando a estima c ao de dados faltantes na s erie temporal devido a piscadelas involunt arias do usu ario. Esta estima c ao e realizada por meio de representa c ao de sinais esparsos.

do sinal juntamente com a estima c ao realizada) para a an alise de seu conte udo por um usu ario utilizador. A seguir s ao detalhadas cada uma das etapas dos dois m odulos desenvolvidos. Primeiro m odulo: Este e respons avel por realizar a abertura do arquivo de entrada (arquivo de v deo no formato .avi) e localizar a pupila em cada um dos quadros. A extra c ao e realizada por meio da transformada de hough para a detec c ao de c rculos. Os resultados s ao entregues para o segundo m odulo. Segundo m odulo: Este m odulo faz o processamento dos dados obtidos do v deo de forma a, primeiramente, completar o conjunto de dados (perda de informa c ao podem ocorrer em momentos tais como fechamento parcial da p alpebra ou em piscadelas, nos quais o software do primeiro m odulo n ao consegue encontrar a pupila) por meio da t ecnica de representa c ao de sinais esparsos, e em segundo lugar, reconstruir a informa c ao. Estes m odulos s ao detalhados nas pr oximas se c oes.
A. M odulo 1 - Obten c ao da s erie temporal

II.

IMPLEMENTAC AO

Como objetivo principal deste trabalho, desenvolveuse um software capaz de realizar a extra c ao e a an alise dos dados contidos em v deos de exames de pupilometria. Este software foi desenvolvido com a ajuda do MATLAB (vers ao R2013a (8.1.0.604)). O programa foi feito em dois m odulos os quais possuem fun c oes distintas. O primeiro destes e respons avel por realizar a extra c ao dos dados da seq u encia de imagens por meio de t ecnicas de vis ao computacional. O segundo e respons avel por realizar o p os-processamento das informa c oes do v deo, (entende-se por p os-processamento as opera c oes de estima c ao do di ametro da pupila, remo c ao de outliers da s erie temporal e reconstru c ao

Como resultado de um exame de pupilometria, obt emse um v deo na qual est ao armazenadas as informa c oes de variabilidade do di ametro da pupila. Estes v deos s ao a entrada dos algoritmos do primeiro m odulo do programa, onde a s erie de variabilidade e extra da. Neste trabalho, utilizou-se arquivos de v deo que foram previamente gravados a uma taxa de amostragem de 120 Hz (120 quadros por segundo) com dura c oes de 10 minutos cada. Cada um destes arquivos continha um grande volume de dados, fazendo com que estes atingissem o tamanho de 5 GB por v deo. Al em destas caracter sticas, os v deos utilizados foram gravados com uma c amera infravermelho que armazena os quadros em escala de cinza, a uma resolu c ao de 320x240 pixels a 72 DPI. Todas estas caracter sticas ser ao especialmente importantes em processos tais como a convers ao do tamanho da pupila estimado em pixel para mil metro. Uma vez com os dados, pode-se iniciar os processos do primeiro m odulo. Para tanto, utilizou-se a vers ao do MATLAB R2013a. Nesta vers ao, existem dispon veis fun c oes espec cas para o carregamento em mem oria de arquivos de v deo .avi com as caracter sticas anteriormente listadas. O carregamento dos v deos e realizado por meio da fun c ao VideoReader. Esta fun c ao constr oi uma vari avel

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB que guarda informa c oes, tais como dura c ao, resolu c ao, quantidade de quadros presentes, dentre outras, e cria uma refer encia ao arquivo de v deo escolhido, fazendo com que os quadros requeridos pelo MATLAB sejam carregados em mem oria sob demanda. Entende-se carregamento sob demanda como uma maneira de se carregar dados na mem oria de um computados apenas quando estes s ao requisitados por um programa, gerando economia de mem oria e possibilitando que arquivos com tamanhos maiores que a quantidade de mem oria dispon vel no sistema possam ser processados. Pode-se carregar v deos .avi em MATLAB v deos utilizando a seguinte fun c ao: v i d e o = VideoReader ( nomeDoVideo . a v i ) ; imagem = r e a d ( vid eo , 1 ) ; O seguinte c odigo armazena um v deo em uma vari avel do MATLAB, recupera o primeiro quadro e o armazena em uma vari avel por meio da fun c ao read(video,quadro). Neste trabalho este e um comando chave, uma vez que cada quadro do v deo e analisado de forma independente para que seja poss vel recuperar a s erie de variabilidade de di ametro da pupila. Este e o passo inicial para qualquer tipo de processamento de imagens baseado em v deo no MATLAB.
1. Pr e-processamento nas imagens

2
a

Para que seja poss vel aplicar o m etodo de detec c ao de c rculos com sucesso nos v deos de pupilometria, e necess ario um pr e-processamento das imagens de interesse, de forma a remover poss veis interfer encias (ru dos) e preparar a imagem para aplicar a transformada de hough para c rculos. O primeiro pr e-processamento aplicado e o borramento gaussiano. Este realiza uma ltragem na imagem, suavizando as bordas, promovendo uma melhora nos resultados dos m etodos seguintes. O borramento gaussiano e um tipo de ltro que usa uma fun c ao gaussiana para calcular a transforma c ao que e aplicada a cada um dos pixels da imagem. Esta fun c ao e dada pela multiplica c ao de duas fun c oes gaussianas, uma na coordenada x e outra na y, sendo esta expressa pela seguinte equa c ao:
y2 1 x2 +2 e 2 2 2

FIG. 1. Quadro de exame de pupilometria em que (a) e a imagem original e (b) imagem em que foi aplicado o borramento gaussiano.

Por meio da Figura 1 e poss vel perceber a suaviza c ao das bordas da imagem. O borramento gaussiano pode ser realizado com a ajuda do MATLAB por meio do seguinte comando: I = imagem G = f s p e c i a l ( gaussian ,[10 1 0 ] , 2 ) ; I g = i m f i l t e r ( I , G, same ) ; No qual imagem e um quadro retirado do v deo. O processo seguinte, que usa a imagem ltrada como entrada e a limiariza c ao ou thresholding. Thresholding e um processo de segmenta c ao de imagens que faz uso da diferen ca dos n veis de cinza que comp oe os objetos em uma imagem. O principal objetivo deste processo e isolar um objeto espec co em uma imagem denindo um limiar que se enquadra com as caracter sticas deste objeto, separando a imagem em dois grupos, o grupo dos pixels com n veis de cinza abaixo do limiar e grupos de cinza com pixels acima do limiar. Normalmente, a cada um destes grupos atribui-se valores 0 (preto) e 255 (branco).

G(x, y ) =

(1)

onde x e a dist ancia da origem no eixo horizontal, y a dist ancia da origem ao eixo vertical e e o desvio padr ao da distribui c ao gaussiana aplicada. Este procedimento e equivalente a aplica c ao de um ltro passa baixas no sinal (que neste caso e a imagem), reduzindo os efeitos da alta freq u encia (mudan cas abruptas nos tons das cores), promovendo na imagem uma suaviza c ao nos contornos. A Figura 1 (a) e (b) apresentam uma quadro de um exame de pupilometria em que foi aplicado o borrento gaussiano.

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB Um limiar T pode ser denido como: 255 0 G(x, y ) > L G(x, y ) L

T (x, y ) =

(2)

u til da imagem, resultando em uma forma bem denida da pupila no centro. Os artefatos restantes na imagem ap os o thresholding n ao afetam o processo de detec c ao de c rculos uma vez que nenhum deles apresenta forma aproximada de c rculo. Logo, imagens processadas at e este ponto est ao prontas para a identica c ao de c rculos.
2. Detec c ao de c rculos

Onde G(x,y) representa um determinado pixel na imagem transformada pelo borramento gaussiano e L e o limiar. Nas imagens de interesse neste trabalho, o thresholding e utilizado para isolar a pupila do resto da imagem, reduzindo a quantidade de informa c ao a ser processada nos pr oximos passos e fazendo com que a detec c ao da pupila seja mais precisa. A Figura 2 apresenta o efeito do thresholding nos quadros de um exame de pupilometria.

FIG. 2. Aplica c ao do thresholding. Imagem original (a), imagem com thresholding (b).

Para que seja poss vel obter um resultado como o apresentado na Figura 2 (b) e necess arios um pr eprocessamentos na imagem. Este s ao basicamente ajustes no contraste e no brilho da imagem, fazendo com que apenas a pupila, o tom mais escuro na imagem fosse destacado ainda mais. A aplica c ao do thresholding nesta imagem baseou-se no princ pio de que tons de cinza que tem valores menores que o valor 7 ser ao convertidos para a cor preta, todos acima deste limiar, ser ao convertidos para branco. Desta forma, retiramos grande parte da informa c ao n ao

Todos os processos pelos quais as imagens dos exames de pupilometria foram submetidas at e o momento tiveram um objetivo u nico de reduzir a quantidade de informa c ao in util na imagem para facilitar a detec c ao de c rculos. Estes foram, inicialmente, diminui c ao dos efeitos de alta frequ encia da imagem e a retirada de areas da imagem que n ao s ao relevantes para os processos de identica c ao por meio do thresholding. Para possibilitar a identica c ao de c rculos, a imagem primeiramente e submetida ao processo detec c ao de contornos. Esta e um t ecnica que tenta identicar pontos de descontinuidade em uma imagem. Estes pontos podem ser por exemplo, mudan cas de brilho. Contornos n ao s ao entidade f sicas e apenas podem ser detectados por meio de sombras ou mudan cas de luminosidade, logo, a qualidade dos contornos a serem retirados de uma imagem e dependente das condi c oes de luminosidade da da mesma e do contraste provocado entre objeto que deseja-se detectar e o fundo. Por este motivo, as imagens de pupilometria foram tratadas de forma a promoverem alto contraste entre a pupila e o fundo, facilitando a detec c ao dos contornos da mesma. Neste trabalho, os contornos da pupila foram detectados por meio do detetor Canny. Este e um dos mais utilizados detetores de contorno na atualidade e foi desenvolvido por John Canny em 1983. O primeiro passo executado pelo algoritmo de detec c ao de contornos e a suaviza c ao nas imagens, uma tentativa de se retirar ru dos, processo pelas quais as imagens dos exames de pupilometria j a foram submetidas na se c ao de pr e-processamento das imagens. Uma vez ltradas, o pr oximo passo para identicar e encontrar a intensidade dos contornos tomando o gradiente da imagem. O gradiente de apresenta a mudan ca direcional de cor na mesma. Matematicamente, o gradiente de uma fun c ao de duas vari aveis e um vetor de duas dimens oes com componentes dadas pela derivadas nas dire c oes verticais e horizontais. Em cada ponto de uma imagem, vetor gradiente aponta para a dire c ao que apresenta aumento de intensidade e o comprimento do gradiente corresponde ` a taxa de mudan ca de dire c ao. O gradiente e calculado por meio das seguintes equa c ao: f = f f x + y x f (3)

A Equa c ao 3 apresenta a equa c ao pela qual ambas as

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB coordenadas de um pixel na imagem e submetida, na f e o gradiente na dira c a o x e e o gradiente na qual f x y dire c ao y. A segunda imagem gerada referente ` a dire c ao do gradiente que e dada pela equa c ao: = atan(
f x

f f , ) x f

(4)

e o gradiente na dira c ao x e f e o gradiente na dire c ao y y. Uma vez calculado ambos os gradientes, o detetor canny faz uso do imagem de dire c ao do gradiente para gerar um pr e-demarca c ao dos contornos na imagem. A Figura 3 apresenta o gradiente da Figura 2 (b).
FIG. 4. Resultado da Aplica c ao do detetor Canny.

FIG. 3. Gradiente da Figura 2 (b)

Percebe-se que o gradiente da imagem destacou de forma rudimentar os locais onde existem diferen cas de tom de cor na imagem, sendo esta uma esp ecie de detec c ao de bordas. O terceiro passo do m etodo faz uso dos gradientes nas dire c oes x e y computados no passo anterior para encontrar a dire c ao dos contornos na imagem. A id eia principal deste passo e converter as bordas pouco denidas pelo gradiente da imagem para um conjunto de bordas que sejam bem denidas. Basicamente isto e feito preservando todos os m aximos locais no gradiente da imagem usando m etodos de compara c ao entre os angulos e da magnitude dos gradientes, procedimento que decide quais s ao preservados na imagem nal. O pr oximo passo e basicamente uma limiariza c ao com o principal objetivo de remover bordas pouco importantes. Isto e feito supondo que as bordas importantes da imagem devem ser cont nuas ao longo das curvas da imagem. Desta forma, pixels que que n ao constituem uma linha ou fazem parte de um conjunto pouco determinante (n ao fazem parte de se c oes cont nuas na imagem) s ao descartados. O resultado do uso do detetor de Canny na imagem da Figura 3 s ao apresentados na Figura 4.

Percebe-se que o resultado obtido por meio do detetor considera apenas as formas mais importantes na imagem, resultando em tr es objetos bem denidos na mesma. A partir deste ponto, pode-se aplicar a transformada de Hough para c rculos para estimar o di ametro da pupila. A transformada de Hough e uma t ecnica que pode ser usada para isolar caracter sticas de formas particulares em imagens. Para tanto, e necess ario que as formas a serem detectadas sejam especicadas em uma forma param etrica, o que faz com que a transformada de Hough seja mais comumente utilizada para detectar elipses, linhas ou c rculos, que s ao as formas de interesse deste trabalho. O conceito principal da transformada de Hough e denir um mapeamento entre o espa co de imagem e o espa co de par ametros. Cada borda de uma imagem e transformada pelo mapeamento para determinar c elulas no espa co de par ametros, indicadas pelas primitivas denidas atrav es do ponto analisado (descri c oes param etricas das formas de interesse). Essas c elulas s ao incrementadas, e indicar ao no nal do processo, atrav es do m aximo valor acumulado, os quais os par ametros correspondem a forma especicada. A transformada consiste em mapear um pixel da imagem em uma curva no espa co de par ametros, organizado em forma de um acumulador N dimensional, onde N corresponde ao n umero de par ametros. Os acumuladores tem de dimens ao igual ao n umero de par ametros desconhecidos na equa c ao da fam lia de curvas que s ao buscadas. Por exemplo, achar os c rculos que usam a equa c ao r2 = (x a)2 + (y b)2 requer achar dois par ametros para cada segmento. As duas dimens oes da matriz acumuladora para esta fam lia correspondem aos valores para a e b. Assim, usando uma matriz acumuladora, o procedimento de Hough examina cada pixel e calcula os par ametros da curva (equa c ao) especicada que passa pelo mesmo. Ap os calculados os par ametros de um determinado pixel, eles s ao somados para um valor correspondente de a e b, e o acumulador (a,b) e incrementado. Quando todos pixels tiverem sido processados, e localizado o acumulador com os maiores valores (picos). Eles

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB indicam os par ametros de prov aveis linhas na imagem. Para encontrar c rculos em uma imagem, inicialmente localiza-se os centros destes e em seguida estima-se o raio. Para um dado pixel em um circulo pode-se encontrar o centro deste c rculo por meio da normal da tangente do pixel em quest ao. Assim dado v arios pixels do mesmo c rculo, a normal destes cruzar ao o centro do c rculo. Desta forma para cada pixel, pode-se calcular a tangente como a linha que se ajusta melhor a todos os pixels de uma vizinhan ca local. A cada normal calculada, uma entrada na matriz acumuladora e incrementada. Os m aximos da matriz acumuladora s ao os locais de centros dos poss veis c rculos. Para denir o raio do circulo, calcula-se a dist ancia de um pixels v alido em um c rculo at e o centro de determinado. Nas imagens de pupilometria, esta t ecnica foi aplicada sobre as bordas detectadas na Figura 4. O resultado da aplica c ao do m etodo s ao apresentados na Figura 5.

O ultimo destes ocorre com maior frequ encia. Neste caso, os dados de di ametro da pupila s ao completamente perdidos em uma faixa de tempo (tipicamente em um intervalo de 30 quadros ou 0,4 segundos). Para que as informa c oes perdidas durante estes eventos n ao provoquem limita c oes nos processos seguintes, e v alido o estudo de m etodos que realizem a estima c ao da informa c ao faltante, mantendo de forma aproximada a integridade dos dados. Existem diversas maneiras de realizar a estima c ao destes dados, tais como estima c ao pelo m etodo dos m nimos quadrados, ou por meio de m etodos de interpola c ao. Neste trabalho, optou-se por representa c ao de sinais esparsos para que os dados faltantes pudessem ser estimados. Representa c oes esparsas de sinais representam a maior parte da informa c ao do sinal como uma combina c ao linear de um pequeno n umero de elementos. Considera-se um sinal amostrado como:

y = x

(5)

FIG. 5. Resultado da Aplica ca o da transformada de Hough para c culos.

Como resultado deste m etodo, tem-se o di ametro do c rculo na imagem. Repetindo este m etodo a cada um dos quadros dos v deos de exames de pupilometria, obt em-se a s erie de variabilidade de di ametro da pupila. O m etodo de detec c ao apresentado neste trabalho sofre com alguns problemas os quais s ao introduzidos pelos pr oprios indiv duos durante os exames de pupilometria, fazendo com que a forma de interesse seja estimada de forma err onea. A seguir s ao apresentados m etodos para tratar estes poss veis erros na s erie temporal resultante.
B. M odulo 2 - Recupera c ao de dados por representa c ao esparsa de sinais

Em diversos momentos nos exames de pupilometria, dados podem ser pedidos ou corrompidos por diversos motivos, estes podem ser, super-aproxima c ao das formas de interesse e n ao detec c ao destas formas pelos algoritmos de vis ao computacional.

onde y e um vetor de tamanho N em que est ao armazenados os dados amostrados, x e um vetor de tamanho N contendo o sinal exato e e uma matriz m x n que amostra o sinal x, ou seja, representa o processo de aquisi c ao do sinal original. Uma vez representado de forma adequada, considerase que este mesmo sinal possa ser escrito de maneira simplicada (neste caso, utilizando apenas as amostras dispon veis), na qual e poss vel compactar o sinal exato x em uma nova base (formada por vetores unit arios), onde e escolhido um conjunto de amostras de y para que seja calculada uma representa c ao denominada esparsa do sinal x. Em sinais ditos esparsos, e poss vel descartar coecientes sem que exista perda signicante de informa c ao e a partir dos dados resultante desta opera c ao e poss vel recuperar de forma aproximada o sinal original. Especicamente no problema de recupera c ao, em que sinais possuem dados perdidos ou corrompidos, tentase encontrar combina c oes lineares de vetores de forma a reescrever estes dados faltantes com base em um conjunto de gerador menor que o original. Na grande maioria dos casos, os vetores unit arios que comp oe n ao formam um conjunto linearmente independente e n ao s ao ortogonais entre si, caracter stica desejada na representa c ao de bases para sistemas. Logo, para que seja poss vel obter este conjunto de caracter sticas, tenta-se decompor y como um conjunto de proje c oes sobre os vetores de . Este e um problema de miniza c ao que pode ser resolvido de diversas maneiras. Neste trabalho fez-se uso algoritmos iterativos num ericos para a solu c ao. O algoritmo utilizado e um variante do SALSA (Split Augmented Lagrangian Shrinkage Algorithm ). O detalhamento deste algoritmo est a fora do escopo deste trabalho, logo, ser ao apenas apresentados os resultados obtidos por meio do uso deste.

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB

20

18

16

14

12

10

FIG. 7. Boxplot da s erie temporal apresentada na Figura XX (c) sendo o ponto mais abaixo no eixo y o ponto demarcado na Figura XX (d). O Boxplot apresenta os pontos de outlier como sinais de (+).

FIG. 6. Efeitos da piscadela na detec ca o da pupila. Em (b) e apresentado o momento em que ocorre o evento e em (a) o efeito na dete ca o da pupila. Neste caso, ser a inserido na s erie temporal nal (c) um outlier, como apresentado no ponto (d).

O variante do SALSA usado neste trabalho para a recupera c ao das s eries e especialmente u til para estimar dados faltantes em s eries que apresentam comportamento ruidoso, que e o caso das s eries de pupilometria.

1.

Exemplo de recupera c ao de dados

Durante a captura das s eries temporais de pupilometria, como dito anteriormente, perdas de dados podem ocorrer por de diversos motivos, sendo os principais destes as piscadelas involunt arias provocadas pelos indiv duos durante os exames. Como resultado destes eventos, dados s ao perdidos uma vez que a pupila se encontra invis vel ou parcialmente vis vel aos algoritmos de detec c ao de c rculos, gerando no primeiro destes casos, dados faltantes e no segundo outliers na s erie temporal. o A Figura 6 Apresenta um destes eventos e o seu efeito na s erie. Em ambos os casos, diferentes estrat egias podem ser tomadas de forma a contornar os efeitos indesejados na s erie nal. No caso dos outliers, os dados estimados de forma err onea pelo algoritmo de detec c ao, fez-se uso de m etodos estat sticos para a detec c ao e remo c ao dos mesmos.

Para detec c ao destes pontos, usou-se Boxplots. Boxplots s ao ferramentas da estat stica descritiva que apresentam informa c oes em grupos de forma gr aca em que o eixo vertical representa a vari avel de interesse (neste caso o di ametro da pupila) e o eixo horizontal representa um fator de interesse. Nas caixas de um Boxplot, tamb em s ao apresentadas linhas horizontais indicando a variabilidade dos dados. Externamente, s ao exibidos os pontos de maior interesse nesta etapa, os outliers. A Figura 7 mostra o Boxplot da s erie na Figura 6 (d). Uma vez sobre posse destes pontos, deve-se removelos da s erie temporal. A n ao remo c ao destes pontos, resulta em uma aproxima c ao pouco exata pelo m etodo de estima c ao, descrevendo com pouca delidade o real comportamento da s erie. Sabe-se que o m etodo de estima c ao utilizado faz uso dos dados presentes na s erie para estimar os dados faltantes, logo, a presen ca de outliers (erros de detec c ao da pupila) adiciona erro na estima c ao. Para a estima c ao dos dados faltantes, aplica-se o variante do algoritmo SALSA sobre os dados sem os erros de detec c ao, resultando em um sinal completo. Para a s erie apresentada na Figura 6 foram executadas 2000 itera c oes do algoritmo. O resultado desta opera c ao e apresentado na Figura 8. Por meio de simples an alise da Figura 8 (b), percebese que o resultado da estima c ao representa de forma satisfat oria os dados faltantes, reproduzindo o comportamento global da s erie temporal. Entretanto, apenas uma inspe c ao visual dos resultados da estima c ao n ao e suciente para comprovar a eci encia do m etodo, para tanto, realizou-se alguns testes. Considere o sinal da Figura 9. Esta e uma s erie temporal de pupilometria onde n ao existem dados faltantes. O principal objetivo deste teste e provocar perda de dados de forma aleat oria no sinal v alido, aplicar a mesma t ecnica de estima c ao utilizada no sinal da Figura 8 (b), recuperar o sinal, e por m vericar m etricas como o

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB


20.6 20.5 20.4 20.3 20.2 20.1 20 19.9 19.8 19.7 19.6

18

17.9

17.8

17.7

17.6

17.5

17.4

17.3
0 20 40 60 80 100 120

20

40

Tempo (s)

60

80

100

120

Tempo (s)
20.6 20.5 20.4 20.3 20.2 20.1 20 19.9 19.8 19.7 19.6

FIG. 9. S erie original de pupilometria.

18

17.9

17.8

17.7

17.6

20

40

60

80

100

120

17.5

Tempo (s)
17.4

FIG. 8. Resultado da estima ca o dos dados faltantes pelo do algoritmo SALSA. (a) s erie com dados faltantes sem outliers, (b) s erie com dados faltantes estimados.

17.3

20

40

Tempo (s)

60

80

100

120

FIG. 10. S erie degradada de pupilometria.

quadrado da diferen ca entre a s erie com dados estimados e a original. Quanto mais pr oximo de zero estiver o valor desta m etrica melhor e a eci encia do m etodo. Figura 10 apresenta o sinal original. A partir dos dados presentes na Figura 10, realizou-se a degrada c ao do sinal por meio da retirada de 30 elementos de forma aleat oria, mantendo 3/4 do sinal intacto. O sinal modicado e apresentado na Figura 11. Sobre o sinal apresentado na Figura 10, foi aplicado o algoritmo SALSA, estimando os dados que foram propositadamente perdidos. O resultado desta opera c ao e apresentado na Figura 11, onde e apresentado original, com o objetivo de compara c ao. Baseado em ambos os sinais, vericou-se o valor do quadrado da diferen ca entre as duas s eries. O valor desta m etrica foi de 0,20. Pode-se considerar este como um valor pouco signicante, comprovando a ec acia do m etodo nesta situa c ao. Tamb em comparou-se os espectros de pot encia de ambas as s eries para verica c ao da semelhan ca entre o sinal e a estima c ao no dom nio da freq u encia. O principal ob-

18

17.9

17.8

17.7

17.6

17.5

17.4

17.3

20

40

Tempo (s)

60

80

100

120

FIG. 11. S erie de pupilometria original (- -) s erie estimada (-).

Implementa c ao de Sistema Autom atico De Detec c ao de Pupila em MATLAB


0.09 0.08 0.07 0.06 0.05 0.04 0.03 0.02 0.01 0

10

20

Frequncia (Hz)

30

40

50

60

FIG. 12. Espectro de pot encia da s erie de pupilometria apresentadas na Figura XX. Original (- -) s erie estimada (-).

jetivo deste teste e comprovar que a estima c ao n ao adicionou nenhuma componente em freq u encia que pudesse n ao reproduzir a realidade do sinal original. Ambos os espectros s ao apresentados na Figura 12. Inspecionando ambos os espectros de pot encia, percebe-se que nenhuma componente foi perdida. O que ocorreu foi a diminui c ao de amplitude de algumas destas, provocada pela subestima c ao e superestima c ao de algumas componentes do sinal no tempo. Tamb em calculouse o quadrado da diferen ca dos espectros e obteve-se 0,0668, que e inferior ao valor da m etrica calculada no tempo, comprovando mais uma vez a ec acia do m etodo. Apesar de funcionar relativamente bem, e v alida a aplica c ao de outros m etodos de estimar os dados de faltantes das s eries pupilometria uma vez que para promover integridade nos dados considera-se uma melhor solu c ao estimar os dados ao inv es de apenas eliminalos da s erie (a c ao que pode acarretar em efeitos em alta freq u encia no espectro do sinal devido a poss veis saltos na amplitude). Logo, outros m etodos como interpola c ao poderiam ser avaliados em rela c ao ` a estima c ao destes dados.

lometria, pode-se realizar uma an alise cr tica sobre a utiliza c ao do software MATLAB para a implementa c ao destes. Percebe-se que o MATLAB e uma ferramenta muito completa para o tipo de processamento utilizado para, primeiro, retirar a s erie temporal do v deo e, segundo, realizar o processamento dos dados faltantes na s erie. No primeiro caso, diversas fun c oes de vital import ancia para a implementa c ao deste m odulo j a encontram-se implementadas (tais como borramento gaussiano, detetor Canny e a transformada de Hough ), diminuindo o tempo de implementa c ao do software como um todo. No segundo caso, especialmente na representa c ao dos sinais de pupilometria de forma esparsa, o MATLAB n ao continha as fun c oes principais previamente, por em foi poss vel implementar com facilidade o m etodo. J a na detec c ao de outliers, o MATLAB continha as fun c oes necess arias para que fosse poss vel identicar e retirar estes pontos da s erie temporal. Apesar das facilidade promovidas pelo software na implementa c ao de ambos os m odulos, o MATLAB e uma linguagem n ao muito otimizadas, uma vez que este executa sobre uma combina c ao de plataformas que incluem linguagens baseadas em m aquinas virtuais, o que torna a execu c ao dos m etodos descritos neste trabalho, pouco eciente. Logo conclui-se que o MATLAB dever ser utilizado como ferramenta de prototipa c ao, n ao sendo adequado para aplica c oes de processamento em tempo real.

III. A.

REFERENCIAS BIBLIOGRAFICAS References

C.

Considera c oes Finais

Conclu da a implementa c ao dos m odulos de obten c ao e tratamento dos dados dos v deos de exames de pupi-

[1] Ke. H.,Sparse Representation for Signal Classication; Michigan State University; 2011; [2] Polo. L. P. A., Recuperacion de senales dispersas utilizando orthogonal matching pursuit (OMP); Revista Ingenieria e Investigacion 29 (1); 2019, 112, 118; [3] Slesnick. I.,SIntroduction to Sparsity in Signal Processing; NYU-Poly; 2012; [2] Sparse and Redundant Representations . Elad M.; Springer-Verlag London Limited, London, UK, 2010; [5] Strack. J.L., Sparse Image and Signal Processing: Wavelets, Curvelets, Morphological Diversity; Cambridge University Press; 2010;

You might also like