Transformada de Fourier



Introdução

O interesse em métodos de processamento digital de imagens vem principalmente de duas áreas de aplicações: melhoria de informação (imagem) para interpretação humana, e processamento de dados (imagens) em computador, e vem crescendo com aplicações no Programa Espacial, na Medicina,Arqueologia, Física, Astronomia, Biologia, Indústria etc.
O termo imagem refere-se a uma função de intensidade de luz bi-dimensional f(x,y), onde x e y são coordenadas espaciais e o valor de f em um ponto qualquer (x,y) é proporcional ao brilho ou nível de cinza da imagem naquele ponto. Uma imagem digital é uma imagem f(x,y) discretizada no espaço e na intensidade de brilho e pode ser considerada uma matriz, cujos elementos são chamados de "pixels" ("picture elements").

Transformada de Fourier

Com a evolução tecnológica e o desenvolvimento de computadores digitais de alta capacidade e velocidade de processamento, o processamento Digital de Imagens tem sido cada vez mais utilizado para análise e diagnósticos.
Uma das ferramentas mais utilizada neste processamento é a transformada de Fourier, a qual nos permite ter uma visão da imagem a ser analisada no domínio da freqüência, facilitando sobremaneira esta análise e o seu processamento, normalmente, aplicando-se técnicas de filtragem digital.
Na prática, a utilização de algoritmos para execução rápida das transformadas de Fourier (FFT) juntamente com os teoremas de convolução e da correlação permitem, de maneira simplificada, a implementação das técnicas de filtragens para eliminação de ruídos e interferências das imagens (ou de uma maneira geral, sinais) em análise.

A teoria da transformada de Fourier assume que o sinal é contínuo com uma extensão infinita, para o qual a transformada é desejada. Por outro lado, imagens são freqüentemente descontínuas ao longo de uma linha ou coluna da imagem. Para analisar dados de pixel de uma imagem contínua a versão discreta de transformada de Fourier foi desenvolvida e foi chamada de transformada rápida de Fourier (FFT). Esta implementação é a base para a maioria de algorítmos de processamento de imagens usando transformada de Fourier.

Qualquer imagem pode ser representada por uma transformada de Fourier bi-dimensional, a qual pode ser considerada como uma imagem com uma parte real e uma parte complexa. A bi-dimensional FFT é um mapeamento de valores de pixel de imagem no espaço de freqüência da imagem espacial. Executando a bi-dimensional FFT em uma imagem, cria-se um mapa bi-dimensional de todas as freqüências de espaço dentro de uma imagem.

A Transfomada de Fourier (FT) é uma ferramenta largamente empregada em processamento de sinais, processamento de sons e em processamento de imagens. Denominada assim em homenagem ao físico francês Jean Baptiste Joseph Fourier (1768-1830), a FT decompõe um sinal em suas componentes elementares seno e cosseno. A FT aplicada a uma imagem no domínio espacial gera uma informação no domínio da freqüência, em que cada ponto, definido por um vetor do tipo (k.cosseno, k.seno), representa uma dada freqüência contida no domínio espacial da imagem.

As aplicações referentes à FT são inúmeras: filtragem, segmentação, reconhecimento de padrões, descrição de imagens, compressão e recontrução constituem algumas delas.

A transformada de Fourier representa a soma de uma série de formas de onda senoidais com diferentes amplitudes, fase e frequência. Pode ser uma utilizada em processamento digital de imagens quando queremos conhecer frequências espaciais de um determinado padrão.

Entretanto, a transformada pode ser utilizada também na reconstrução bi-dimensional de imagens em geral, por sua facilidade e rapidez de cálculo, comparado com a resolução das equações de projeção algebricamente, que consistem na montagem de uma matriz e sua resolução.

Na prática, quando queremos trabalhar uma imagem no domínio da freqüência, por exemplo, simplesmente fazemos a transformada de Fourier da referida imagem e a multiplicamos pela função de transferência de um filtro (convenientemente de acordo com a aplicação) no entanto, muitas vezes, é mais simples "zerarmos" os coeficientes das componentes de freqüência que queremos filtrar e tomamos, em seguida, em ambos os casos, a transformada inversa obtendo, assim, a imagem filtrada (processada). Quando zeramos os coeficientes da transformada de Fourier a partir de um certo valor,obtemos um filtro passa-baixa, ou até um certo valor, temos um filtro passa-alta, ou entre dois valores de freqüência, um filtro passa-faixa ou rejeita-faixa.


Algumas Propriedades Importantes da Transformada de Fourier

Temos duas maneiras de representar uma mesma função ou sinal: uma representação no domínio do tempo ou do espaço e outra no domínio da freqüência.
A representação de um sinal no domínio do tempo está presente, naturalmente, no nosso dia a dia. Contudo, certas operações, principalmente na engenharia, tornam-se muito mais simples e esclarecedoras se trabalharmos no domínio da freqüência, domínio este, conseguido através das Transformadas de Fourier.
É muito importante observar o que ocorre em um domínio, quando efetuamos certas operações no outro domínio.

1 - Separabilidade
Esta propriedade nos mostra que o par de transformadas F(u,v) e f(x,y) pode ser obtido em dois passos separados, considerando-se duas operações 1D. Em outras palavras, a função bi-dimensional F(u,v) é obtida pela transformação em cada linha de f(x,y) e o resultado é multiplicado pelo número total das mesmas, M, obtendo-se F(x,v). F(u,v) é obtida, agora, transformando-se F(x,v) coluna por coluna.

2 - Translação
Esta propriedade mostra que a multiplicação de f(x,y) pela exponencial e j2p (uo x/M + vo y/N) resulta num deslocamento na freqüência para o ponto (uo, vo).
De maneira análoga, se multiplicarmos a transformada F(u,v) pela mesma exponencial e tomarmos a transformada inversa, efetuamos um deslocamento espacial da origem para o ponto (xo, yo).

3 - Periodicidade
Esta propriedade mostra que se f(x,y) é periódica, somente um período é necessário para especificar completamente F(u,v) no domínio da freqüência. O mesma se aplica a f(x,y) no domínio espacial.

4 - Rotação
Esta propriedade nos mostra que uma rotação em f(x,y) por ângulo a, produz a mesma rotação em F(u,v) e vice-versa.

5 - Teorema da Convolução
O teorema da convolução é, provavelmente, uma das ferramentas mais eficazes na análise em freqüência.
A importância da convolução no domínio da freqüência consiste no fato que se f(x) tem a transformada de Fourier F(u) e g(x) tem sua transformada de Fourier G(u) então f(x)*g(x) tem F(u)G(u) como transformada, ou seja:
f(x)*g(x) Û F(u)G(u)
O que mostra que a convolução no domínio espacial (x), pode ser obtida pela transformada inversa do produto F(u)G(u).
O resultado pode ser estendido para o domínio da freqüência; ou seja: f(x)g(x) Û F(u)*G(u)

Programas sobre a transformada de Fourier (FFT)

Em todos estes programas a rotina para efetuar o cálculo da transformada de Fourier é a descrita em "Numerical Recipes", convertida para Basic e ligeiramente adaptada para servir aos propósitos do programa em questão.

FFT SpecMusEV (http://artemis.ffclrp.usp.br/Software/FFT SpecMusEV.zip) permite que o usuário possa gerar (na forma de gráfico e tabela de pontos) várias funções periódicas, simples ou compostas (incluindo sen x, cos x, onda quadrada, onda triangular, etc.), e em seguida calcular a transformada de Fourier dessa função. O programa possibilita ainda o cálculo da transformada de Fourier de dados de um arquivo *.raw (três arquivos *.raw estão incluídos como exemplo, trechos curtos de "Moonlight Serenade" e "Sinfonia n°5 de Beethoven"). A transformada de Fourier é mostrada na forma de um gráfico linear (módulo, parte real, parte imaginária, etc.), ou de um gráfico logarítmico, próprio para fazer análise musical (um teclado musical auxilia na identificação da nota).
Uma outra operação que o programa permite é a recuperação da função original a partir dos dados da transformada de Fourier. Este cálculo reverso fornece os resultados como gráfico e como lista de pontos, para comparação com os dados da função original.
É possível também imprimir um relatório com dados da função original e da transformada, imprimir gráficos, etc..

FFT SpecEV (http://artemis.ffclrp.usp.br/Software/FFT SpecEV.zip) - Este programa mostra como a transformada de Fourier pode ser utilizada para processar os dados obtidos de um espectrômetro de ressonância magnética nuclear, transformando a curva "fid" obtida do espectrômetro em um espectro de RMN. Trata-se de um programa simples, elaborado apenas para efeito de ilustração dos.
Há rotinas para calcular a transformada, traçar gráficos de módulo, da parte real separada da imaginária, para "ajustar a fase" (que significa "combinar" a parte real com a imaginária de uma forma peculiar), para corrigir o efeito do filtro "Bruker", para formatar e imprimir o espectro, ampliar picos, etc.
Naturalmente, dada a simplicidade do programa, ele pode ler arquivos "fid" apenas do espectrômetro Bruker. Alguns poucos arquivos são fornecidos para serem utilizados como exemplo..

FFT MusEV (http://artemis.ffclrp.usp.br/Software/FFT MusEV.zip) - Programa que ilustra como a transformada de Fourier pode ser usada para analisar um som musical complexo (gravado em um arquivo *.wav), determinando quais as notas musicais (freqüências) que estão sendo executadas em um certo trecho, qual é a composição dos harmônicos de um certo instrumento musical, etc.
O arquivo *.wav a ser analisado é mostrado como um gráfico; o som correspondente ao gráfico todo ou a uma parte selecionada pode ser ouvido à vontade, permitindo escolher o trecho com o som desejado.
A transformada de Fourier é apresentada como um gráfico logarítmico, tendo embaixo um teclado musical ativo, que pode produzir som e permitir uma análise muito instrutiva do gráfico.
Vários arquivos *.wav, curtos, estão incluídos. Outros arquivos, mais longos, estão em "wavExtraFiles" (v. abaixo). O leitor pode gravar seus próprios arquivos *.wav de um CD comum ou com um microfone, utilizando os programas que acompanham seu multimedia..