Filtragem de Imagens CONCI, A. AZEVEDO, E. e LETA, F. “Computação Gráfica. Teoria e Prática”, Vol 2 – Cap. 5 Filtragem no Domínio Espacial (rev.) Filtragem no Domínio de Frequência Objetivo dos Filtros Melhorar a qualidade das imagens através da: • Ampliação do seu contraste; • Eliminação de padrões periódicos ou aleatórios; • Melhoria no seu foco e acentuação de características. Classificação • Domínio ou espaço em que atuam: da freqüência ou espacial. • Tipo de freqüência: passa ou elimina baixas freqüências; passa ou elimina altas freqüências; e passa ou elimina faixas de freqüências. • Linearidade: lineares ou inversíveis ou não lineares. • Tipo de aplicação: suavização; contraste; adaptativos; globais; janelados; ou, locais. Filtragem no Domínio Espacial (revisão) • • • • Filtros (Máscaras) Lineares e Não Lineares Filtros Passa Baixa – Filtros de Suavização Filtros Passa-Alta ou de Acentuação Filtro alto reforço Filtragem no Domínio Espacial (revisão) Os métodos de filtragem que trabalham no domínio espacial operam diretamente sobre os pixels, normalmente utilizando operações de convolução com máscaras. O uso de máscaras nas imagens no domínio espacial é usualmente chamado de filtragem espacial e as máscaras são chamadas de filtros espaciais. Filtragem no Domínio de Frequência • Filtragem Passa Baixa • Filtragem Passa Alta • Outros filtros no domínio de freqüência Filtragem no Domínio de Frequência 1- A imagem é transformada do domínio espacial para o da freqüência (transformada de Fourier). 2- Operações de filtragem são realizadas nessa imagem. 3- Realiza-se o processo inverso, onde a imagem no domínio da freqüência é transformada para o domínio espacial. Esquema de processamento no domínio da freqüência usando a transformada de imagens A Transformada de Fourier A transformada de Fourier de uma função é uma função complexa: F (u) R(u) jI (u) A Transformada de Fourier A Transformada de Fourier é uma operação que transforma uma função definida no domínio espacial em uma outra função definida no domínio frequencial F (u, v) f ( x, y) exp j 2 (ux vy)dxdy f ( x, y) F (u, v) exp j 2 (ux vy)dudv Transformada Discreta de Fourier Discrete Fourier Transform (DFT) Para uso em computadores, seja para aplicações científicas ou em processamento digital de sinais, é preciso ter valores xk discretos. Para isso existe a versão da transformada para funções discretas. Um algoritmo eficiente para o cálculo das Transformadas de Fourier é o algoritmo FFT (Fast Fourier transform), cuja complexidade é O(n log2 n) contra O(n2) necessários para o mesmo cálculo com a DFT. Complexidade dos Algoritmos • Computando diretamente a DFT: 2 – Uma DFT de N pontos requer N multiplicações de ponto flutuante por ponto de saída 2 – Uma vez que existem N pontos de saída, a 4 complexidade computacional da DFT é O(N ) – N = 256 => N4= 4x109 => tAthlonXP+ ~ 24s – N = 15Mpixels => N2 = 2x1014 => t ~ 15 dias!!! (`~167Mflops) • Computando com a FFT – Complexidade = NlogN => N = 15Mpix => t ~ 1,5s Espectro de Frequências • exemplo : g(t) = sin(2f t) + (1/3)sin(2(3f) t) = + Perfil de um sinal com 3 frequências Espectro de Frequências do sinal ao lado 8 15 10 6 5 Amplitude Amplitude da onda A 20 0 -5 -10 4 2 -15 -20 0 90 180 270 0 0.00 360 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10 8 20 15 6 10 5 Amplitude Amplitude da onda B 0.01 0 -5 4 2 -10 -15 0 0.00 -20 0 90 180 270 360 8 15 6 10 5 Amplitude Amplitude da onda C 20 0 -5 4 2 -10 -15 0 0.00 -20 90 180 270 360 20 8 15 10 6 5 Amplitude Amplitude de A + B + C 0 0 -5 -10 4 2 -15 -20 0 90 180 Ângulo 270 360 0 0.00 Frequência (Hz) Espectro de Frequências TF TIF Transformada de Fourier (TF) & Transformada Inversa de Fourier (TIF). Imagem Baboon e seu espectro de Fourier. Imagem Brick e seu espectro de Fourier. Processamento de imagens no domínio de Fourier 1- A imagem f(x,y) é transformada para o domínio de Fourier (transformada discreta). 2- A imagem no domínio de Fourier é representada por F(u,v) e é convoluída com o filtro H(u,v). 3- Ao produto F(u,v) H(u,v) é aplicada a inversa da transformada de Fourier para retornar ao domínio espacial, onde se tem a imagem processada g(x,y). Filtragem Passa Baixa (suavização) • Os detalhes da imagem que geram altas freqüências. (ex: bordas, lados e outras transições abruptas de nível de cinza). • Utilizando um filtro passa baixa obtém-se uma imagem menos nítida ou suavizada. • Tem-se uma perda de detalhes que são os componentes de altas freqüências. Filtro passa baixa ideal: H(u,v) = 1 se u2 + v2 < r2 H(u,v) = 0 se u2 + v2 r2 Resultado da filtragem passa baixa Filtragem Passa Alta (aguçamento/realçe) Na filtragem passa alta, os componentes de alta freqüência da transformada de Fourier não são alterados, enquanto os de baixa freqüência são removidos. Isto faz com que os detalhes finos da imagem sejam enfatizados. Filtro passa alta ideal: H(u,v) = 0 se u2 + v2 < r2 H(u,v) = 1 se u2 + v2 r2 Resultado da filtragem passa alta. Filtros Passa Baixa Filtros de Suavização Objetivo: • Suavizar a imagem pela redução das variações nos de níveis de cinza que dão à aparência de “serrilhado” nos patamares de intensidade. • Atenuar as altas freqüências, que correspondem às transições abruptas. • Minimizar ruídos. Filtros Passa-Alta ou de Acentuação • Atenuam ou eliminam as baixas freqüências, realçando as altas freqüências. • Usados para realçar os detalhes na imagem (intensificação ou “sharpening”). • Destacam características como bordas, linhas, curvas e manchas. • Tornam mais nítidas as transições entre regiões diferentes (como os contornos), realçando o contraste. Filtros passa-banda ou elimina faixa Filtros passa-baixa, passa-alta e passa-faixa em freqüência (acima) e no espaço (abaixo).