Processamento Digital de Sinais Capítulo 4 em Português
Por: Leone Azevedo • 4/5/2015 • Projeto de pesquisa • 4.068 Palavras (17 Páginas) • 459 Visualizações
4.1 Relação da FFT para a DFT
Embora muitos algoritmos FFT diferentes foram desenvolvidos, nesta seção, vamos ver por que o algoritmo FFT radix-2 é tão popular e aprender como ela está relacionada ao algoritmo DFT clássica. O algoritmo de radix-2 de FFT é um processo muito eficiente para a realização DFTs sob a restrição de que o tamanho da DFT ser uma potência de dois integral. (Isto é, o número de pontos na transformação é N = 2k, onde k é um número inteiro positivo.) Vamos ver apenas porque o radix-2 de FFT é a técnica de análise espectral preferido utilizado pelos profissionais de processamento de sinal.
Lembre-se que o nosso DFT Exemplo 1 na Seção 3.1 ilustra o número de operações aritméticas redundantes necessários para um simples DFT 8 pontos. (Por exemplo, acabamos por calcular o produto de 1,0607 • 0,707 quatro vezes separadas.) Por outro lado, o radix-2 FFT elimina estes despedimentos e reduz o número de operações aritméticas necessárias. Para apreciar a eficiência da FFT, vamos considerar o número de multiplicações complexas, necessárias para o nosso velho amigo, a expressão para uma DFT N-ponto,
[pic 1]
Para uma DFT de 8 pontos, Eq. (4-1) nos diz que nós teríamos que realizar N2 ou 64 multiplicações complexas. (Isso porque, para cada um dos oito X (m) s, temos que somar oito produtos complexos como n vai de 0 a 7.) Como nós vamos verificar em seções posteriores deste capítulo, o número de multiplicações complexas, por um FFT N-ponto, é de aproximadamente
[pic 2]
(Dizemos aproximadamente porque algumas multiplicações vêm a serem multiplicações por +1 ou -1, que ascendem a meras alterações de sinal.) Bem, este (N / 2) valor log2N é uma redução significativa das multiplicações complexas N2 exigidos pela Eq. (4-1), em particular para a grande N. Para mostrar apenas como significativa, a Figura 4-1 compara o número de multiplicações complexas requeridas por DFTs e FFTs como uma função do número de pontos de dados de entrada N. radix-2 Quando N = 512, por exemplo, a DFT requer 200 vezes mais multiplicações complexas do que as necessárias para que a FFT. Quando N = 8192, a DFT deve calcular 1000 multiplicações complexas para cada multiplicação complexa na FFT!
[pic 3]
Figura 4-1 Número de multiplicações complexas no DFT e a radix-2 de FFT como uma função de N.
É apropriado agora para deixar claro que a FFT não é uma aproximação para a DFT. É exatamente igual ao DFT; é a DFT. Além disso, todas as características de desempenho da DFT descrito no capítulo anterior, a simetria de saída, linearidade, grandezas de saída, o vazamento, a perda de recorte, etc., também descrevem o comportamento da FFT.
4.2 Dicas para o uso FFTs na Prática
Com base em como FFTs úteis são, aqui está uma lista de indicadores práticos, ou dicas, sobre a aquisição de amostras de dados de entrada e usando o radix-2 FFT para analisar sinais do mundo real ou dados.
4.2.1 Amostra Rápido bastante o suficiente
Quando a digitalização de sinais contínuos com um conversor A /D, por exemplo, nós sabemos, a partir do capítulo 2, que a nossa taxa de amostragem deve ser maior que o dobro da largura de banda do sinal de entrada contínua A /D para prevenir no domínio da frequência aliasing. Dependendo da aplicação, os praticantes tipicamente uma amostragem de 2,5 a quatro vezes a largura de banda do sinal. Se nós sabemos que a largura de banda do sinal contínuo não é muito grande em relação à taxa de amostragem máxima de nosso conversor A /D, é fácil evitar o aliasing. Se não sabemos a contínua entrada A /D sinal de largura de banda, como é que vamos saber se nós estamos tendo problemas de aliasing? Bem, devemos desconfiar de qualquer resultado FFT que têm componentes espectrais nas freqüências perto da metade da taxa de amostragem. Idealmente, gostaríamos de trabalhar com sinais cujas amplitudes espectrais diminuem com o aumento da frequência. Desconfie de aliasing se existem componentes espectrais cujas freqüências parecem depender da taxa de amostragem. Se suspeitarmos que aliasing está ocorrendo ou que o sinal contínuo contém ruído de banda larga, nós vamos ter que usar um filtro passa-baixa analógico antes da conversão A / D.
A freqüência de corte do filtro passa-baixa deve, naturalmente, ser maior do que a faixa de freqüência de interesse, mas menos da metade da taxa de amostragem.
Embora saibamos que uma N-ponto radix-2 FFT requer N = amostras de entrada 2k, quantas amostras devemos coletar antes de realizar o nosso FFT? A resposta é que a coleta de dados intervalo de tempo deve ser longa o suficiente para satisfazer a nossa resolução de freqüência FFT desejado para a taxa de amostra em questão fs. O intervalo de tempo de coleta de dados é o inverso da resolução de freqüência FFT desejado, e quanto mais tempo nós amostra a uma taxa de amostragem fs fixo, mais fina a nossa resolução de freqüência será; ou seja, o intervalo de tempo total de coleta de dados é N / fs segundos, e nossa resolução de frequência N ponto-FFT bin-to-bin é fs / N Hz. Assim, por exemplo, se precisamos de uma resolução espectral de 5 Hz, então, fs / N = 5 Hz, e
[pic 4]
Neste caso, se fs é, digamos, 10 kHz, em seguida, N deve ser, pelo menos, 2.000, e que tínhamos escolha N igual a 2048, porque este número é uma potência de 2.
4.2.2 Manipulando os dados de tempo antes da transformação
Ao usar o radix-2 FFT, se nós não temos controle sobre o comprimento da nossa sequência de dados no domínio do tempo, e que o comprimento da sequência não é um poder integrante de dois, temos duas opções. Nós poderíamos descartar amostras de dados suficientes para que a FFT comprimento seqüência de entrada restante é algum poder integrante de dois. Este regime não é recomendado porque ignorando amostras de dados degrada nossa resolução no domínio da freqüência resultante. (Quanto maior for N, o melhor a nossa resolução de freqüência, certo?) Uma abordagem melhor é acrescentar suficientes amostras de valor zero para o fim da sequência de dados em tempo para coincidir com o número de pontos do segundo maior radix-2 FFT.
Por exemplo, se temos 1000 amostras de tempo para transformar, em vez de analisar apenas 512 deles com uma FFT de 512 pontos, devemos acrescentar 24 zero à direita valorizados amostras para a sequência original e usar uma FFT 1024 pontos. (Esta técnica zero recheio é discutido em mais detalhe na Secção 3.11.)
FFTs sofrem os mesmos efeitos nocivos do vazamento espectral que discutimos para o DFT na Seção 3.8. Podemos multiplicar os dados de tempo por uma função de janela para aliviar este problema de vazamento. Esteja preparado, porém, para a degradação resolução de freqüência inerente quando as janelas são usados. By the way, se acrescentar zeros é necessário prorrogar a seqüência de tempo, temos de nos certificar de que acrescentar os zeros depois da multiplicação da sequência de dados de tempo original por uma função janela. A aplicação de uma função de janela para os zeros anexa irá distorcer a janela resultante e piorar os nossos problemas de vazamento FFT.
...