• Nenhum resultado encontrado

3.3 Filtragem Espacial

3.3.1 Suaviza¸c˜ao

A suaviza¸c˜ao da imagem ´e utilizada para remover o ru´ıdo e esbater uma imagem. O ru´ıdo de uma imagem corresponde aos pixels, ou a pequenos agrupamentos de pixels, isolados com grande varia¸c˜ao de intensidade, relativamente aos seus vizinhos. Com a suaviza¸c˜ao o ru´ıdo tende a desaparecer consoante a m´ascara e o filtro utilizados. A suaviza¸c˜ao esbate a imagem, o que resulta na perda de pequenos detalhes da imagem, e pode facilitar o reconhecimento de objectos.

Filtro de M´edia

O filtro de m´edia efectua a suaviza¸c˜ao atribuindo a cada pixel, a m´edia dos valores dos seus vizinhos e do seu pr´oprio valor. O c´alculo da m´edia ´e dado por (Filipe, 2009): Iout(i, j) = 1 Nv � m,n∈V Iin(m, n)

sendo Iout a imagem filtrada, Iin a imagem original, N v o n´umero de vizinhos, i e j

as coordenadas do pixel e m e n o tamanho da m´ascara.

Dependendo do tamanho da m´ascara, o n´ıvel de esbatimento ser´a diferente, assim quanto maior a m´ascara, mais esbatida a imagem ir´a ficar, sendo atenuada a varia¸c˜ao de intensidade do pixel central para os seus vizinhos.

Filtro Mediana

O filtro mediana n˜ao retorna um valor que seja uma combina¸c˜ao linear entre os valores da vizinhan¸ca, mas sim, o valor central do vector de valores ordenados da m´ascara, como ´e demonstrado na figura 3.2. Este filtro ´e especialmente eficaz na remo¸c˜ao dos pixels isolados, os quais constituem o ru´ıdo de uma imagem. Deste modo, n˜ao se obt´em um esbatimento t˜ao acentuado como no caso da m´edia, preser- vando desta forma as arestas e os contornos da imagem.

Figura 3.2 – Filtro Mediana (Filipe, 2009).

Filtro Gaussiano

O filtro Gaussiano ´e um filtro linear, onde os seus coeficientes s˜ao determinados pela fun¸c˜ao gaussiana com um desvio padr˜ao σ. O filtro gaussiano aplicado a uma imagem, ou seja numa matriz 2D possui a seguinte representa¸c˜ao (Filipe, 2009):

g(x, y) = 1

2πσ2e −x2+y22σ2

Figura 3.3 – Filtro Gaussiano 2D.

Este filtro atribui um maior peso aos pixels mais pr´oximos do pixel central, preser- vando as arestas da imagem. Dependendo do desvio padr˜ao atribu´ıdo, ir´a variar o

n´ıvel de suaviza¸c˜ao, sendo que quanto maior o desvio padr˜ao maior a suaviza¸c˜ao.

3.3.2

Detec¸c˜ao de Arestas

Define-se por aresta, uma ´area da imagem onde ocorrem grandes varia¸c˜oes de in- tensidades dos pixels, como por exemplo, numa imagem com objectos sobrepostos quando se vˆe um objecto e no decorrer da imagem se come¸ca a visualizar outro objecto, verificando-se uma maior altera¸c˜ao das intensidades dos pixels.

A detec¸c˜ao de arestas permite localizar as margens de um objecto na imagem, podendo facilitar a identifica¸c˜ao do mesmo. Com o conhecimento das arestas h´a tamb´em a possibilidade de, medindo as mesmas, obter informa¸c˜oes relativamente ao tamanho dos objectos de uma imagem.

Existem diferentes opera¸c˜oes que possibilitam a detec¸c˜ao de arestas, algumas destas encontram-se explicadas nos pontos seguintes desta disserta¸c˜ao.

Gradiente

No caso de vectores, quando se verifica uma mudan¸ca acentuada de valores, esta altera¸c˜ao pode ser localizada, calculando os m´aximos locais da primeira derivada. Como trabalhando com imagens, se tem em considera¸c˜ao matrizes bidimensionais, ´e ent˜ao necess´ario calcular a primeira derivada da matriz, isto ´e, onde se encontram as arestas.

O gradiente corresponde `a primeira derivada de uma matriz. Os m´aximos deste gradiente v˜ao definir as arestas, e para ser poss´ıvel obter uma aresta e n˜ao um ponto isolado, ao inv´es de se definir por aresta, s´o ao valor m´aximo, ´e necess´ario definir uma margem de valores, os quais representar˜ao a aresta.

Operador de Roberts, Sobel e Prewitt

Os operadores de Roberts, Sobel e Prewit n˜ao s˜ao orientados nos eixos dos x e y, uma vez que estes operadores utilizam m´ascaras que retornam os valores em pontos interpolados. No caso dos operadores de Roberts, demonstrados na figura 3.4, o ponto central da m´ascara encontra se em [x + 1/2, y + 1/2], onde x e y s˜ao as coordenadas de um pixel, devido ao facto de se tratar de uma m´ascara com um n´umero de elementos par.

Figura 3.4 – Operadores de Roberts (Filipe, 2009).

De modo a obter-se uma m´ascara centrada num pixel, ´e necess´ario que este apresente um n´umero de elementos impar. ´E usual utilizar duas m´ascaras, uma para detectar as arestas horizontais e outra para detectar as arestas verticais, sendo que estas m´ascaras devem ser sim´etricas em rela¸c˜ao ao ponto (x, y). As m´ascaras utilizadas por Sobel e Prewitt s˜ao ilustradas na figura 3.5 e na figura 3.6.

Figura 3.5 – Operadores de Sobel (Filipe, 2009)

Figura 3.6 – Operadores de Prewit (Filipe, 2009)

Operador Laplaciano

Quando se trabalha com a primeira derivada, ´e preciso definir um conjunto de pi- xels, aproximados do valor m´aximo de modo a que seja poss´ıvel identificar uma aresta. Desta forma, obt´em-se um n´umero elevado de pixels definidos como aresta. Para contrariar este efeito, recorre-se `a segunda derivada. Uma vez encontrados os m´aximos locais do gradiente, provenientes da primeira derivada, s˜ao procurados quais destes pontos correspondem ao cruzamento com zero, na segunda derivada. Quando os pontos da segunda derivada cruzarem zero, estes s˜ao definidos como uma aresta.

O Laplaciano corresponde `a segunda derivada de uma matriz bidimensional, e ´e definido pela express˜ao (Filipe, 2009):

∇2I = δ

2I

δx2 +

δ2I

δy2

Com o objectivo de calcular as derivadas segundo x e y, ´e preciso aproxim´a-las, usando as equa¸c˜oes das diferen¸cas demonstrada na equa¸c˜ao (Filipe, 2009):

δ2I δx2 = δ∇x δx = δ(I[i + 1, j]− I[i, j]) δx = δI[i + 1, j] δx − δI[i, j] δx ≈ (I[i + 2, j] − I[i + 1, j]) − (I[i, j + 1] − I[i, j])

= I[i + 2, j]− 2I[i + 1, j] + I[i, j]

A equa¸c˜ao anterior est´a centrada no pixel [i + 1, j], para se obter a m´ascara centrada no ponto [i, j], ter´a de substituir-se i por i−1. Com a combina¸c˜ao das duas equa¸c˜oes, a equa¸c˜ao do eixo dos x e a equa¸c˜ao do eixo dos y, obt´em-se a m´ascara ilustrada na figura 3.7.

Figura 3.7 – M´ascara de Laplace (Filipe, 2009).

Operador LoG

A segunda derivada de uma matriz de intensidades ´e muito sens´ıvel ao ru´ıdo. De forma a colmatar este problema ´e necess´ario efectuar-se a suaviza¸c˜ao da imagem e seguidamente, efectuar-se a detec¸c˜ao de arestas.

O operador LoG aplica o gaussiano antes de efectuar a detec¸c˜ao de arestas a partir do operador laplaciano, deste modo num primeiro passo ´e retirado o ru´ıdo `a imagem, resolvendo os problemas com o ru´ıdo da segunda derivada. Quando retirado o ru´ıdo ´e aplicado o operador laplaciano e detectadas as arestas. A equa¸c˜ao que define o operador LoG ´e descrita por (Filipe, 2009):

Iout(x, y) =∇2[Gσ(x, y)× Iin(x, y)] = [∇2G σ(x, y)]× Iin(x, y) = � 1 √ 2πσ2 x2+ y2− 2σ2 σ4 e −x2+y22σ2 � × Iin(x, y) Operador Hessiano

O operador Hessiano ´e um operador utilizado para a detec¸c˜ao dos m´aximos e m´ınimos locais, recorrendo `a matriz Hessiana. Tendo em conta a matriz de in- tensidades definida atrav´es de uma fun¸c˜ao f (x, y), a matriz Hessiana, H, ´e a matriz das derivadas parciais da fun¸c˜ao f , como demonstrado por (Evans, 2009):

H(f (x, y)) =   δ2f δx2 δ2f δxδy δ2f δxδy δ2f δy2  

O determinante desta matriz, definido como discriminante, ´e calculado por (Evans, 2009): det(H) = δ 2f δx2 δ2f δy2 − � δ2f δxδy �2

O valor do discriminante ´e utilizado para classificar os m´aximos e m´ınimos da fun¸c˜ao, atrav´es da segunda derivada. Tendo em conta que o determinante corresponde ao produto dos valores pr´oprios de Hessian, podem ent˜ao classificar-se os pontos com base no sinal. Deste modo, se o determinante for negativo, os valores pr´oprios tˆem sinais diferentes, ent˜ao n˜ao ´e um extremo local, mas se o sinal for positivo, ambos os valores pr´oprios s˜ao positivos ou negativos, sendo que, nestes dois casos, o ponto ´e um extremo local. Os extremos locais, definem as aresta da imagem.

4

(SURF)

4.1

Introdu¸c˜ao

O objectivo principal consiste no estudo da aplicabilidade do SURF em UAV para se efectuar o reconhecimento de objectos. Existem, no entanto, outros algoritmos

com as mesmas funcionalidades do SURF, mas com diferentes caracter´ısticas. ´E o

caso do SIFT, proposto por Lowe Lowe (2004) e o PCA-SIFT, proposto por Yan Ke (2004). De entre estes trˆes algoritmos existem algumas diferen¸cas relativamente `a sua robustez e tempo de processamento.

Luo Juan comparou os trˆes algoritmos, concluindo que, relativamente a altera¸c˜oes de imagem, como por exemplo, ao n´ıvel da rota¸c˜ao, da escala e das altera¸c˜oes de ilumina¸c˜ao, existem algumas varia¸c˜oes de detec¸c˜ao entre os algoritmos, sendo que se demonstrou que o SIFT apresenta uma superior robustez na rota¸c˜ao, enquanto que o SURF revela uma maior robustez nas mudan¸cas de ilumina¸c˜ao, por fim o PCA-SIFT ´e um algoritmo cujos valores nunca superam o SIFT ou o SURF. Quando se fazem compara¸c˜oes entre algoritmos, obtˆem-se informa¸c˜oes sobre os mes- mos, as quais constituem um aux´ılio, quando ´e necess´ario escolher o algoritmo a utilizar em determinada aplica¸c˜ao. Para o caso concreto estudado no ˆambito desta

disserta¸c˜ao, a utiliza¸c˜ao destes algoritmos em UAV, ´e necess´ario ter em conta o tempo de processamento. Nos UAV ´e necess´ario um processamento r´apido, para possibilitar a detec¸c˜ao em tempo real. Luo Juan comparou tamb´em os algoritmos consoante o tempo, e concluindo que o algoritmo SURF ´e o mais r´apido sem perder robustez na detec¸c˜ao de pontos de interesse, como ilustrado pela tabela 4.1.

Itens SIFT PCA-SIFT SURF

Correspondˆencias 271 18 186

Tempo Total (ms) 2.15378e+007 2.13969e+007 3362.86

Tabela 4.1 – Compara¸c˜ao SIFT, PCA-SIFT e SURF (Juan and Gwon, 2009).

O algoritmo SURF de Herbert Bay (2008), ´e reconhecido por ser robusto e r´apido na detec¸c˜ao de pontos de interesse, em conformidade com os resultados obtidos por Juan and Gwon (2009), surge como a escolha indicada. Para al´em da implementa¸c˜ao do SURF por Hebert Bay, existem implementa¸c˜oes, como a implementa¸c˜ao do Open- Surf, por Evans (2009), esta ´ultima permite acesso total `a implementa¸c˜ao, o estudo e altera¸c˜ao de toda a implementa¸c˜ao. Devido `a implementa¸c˜ao de Herbert Bay (2008) n˜ao ser de livre acesso e a implementa¸c˜ao de Evans (2009) manter a mesma robustez e rapidez da original, como comprovado por David Gossow and Paulus (2010), a implementa¸c˜ao OpenSurf ser´a a implementa¸c˜ao estudada ao longo desta disserta¸c˜ao.

Documentos relacionados