Como melhorar o desempenho dos filtros de mínimos quadrados (LMS) / NLMS?

14

Existem maneiras de aumentar o desempenho computacional de um filtro de mínimos quadrados normalizados (NLMS)? Foram propostos filtros de domínio em frequência de bloco de múltiplas faixas (MDF) , mas eles também diminuem a velocidade e a precisão da convergência, porque somente atualizam a resposta de impulso estimada uma vez a cada bloco, não uma vez a cada amostra. Existem outros métodos?

Phonon
fonte

Respostas:

6

Se você deseja implementar o algoritmo NLMS "padrão" sem cortar nenhum canto, provavelmente não encontrará uma estrutura que seja significativamente mais eficiente. As formas de bloco da filtragem LMS visam usar técnicas de convolução rápidas (como sobreposição de economia ou sobreposição de adição) para acelerar essa parte do processo. No entanto, como você observou, os coeficientes do filtro são atualizados apenas por bloco, pois o filtro deve ser constante sobre o bloco para usar a abordagem de convolução rápida.

A natureza altamente recursiva do NLMS limitará você, se você deseja manter a característica de atualização amostra por amostra. Enquanto a ação de filtragem não é recursiva, os coeficientes de filtro no instante N são função dos coeficientes no instante N-1, o que limita sua capacidade de acelerar o processo usando paralelismo ou computação orientada a blocos. Como na maioria dos casos, não há almoço grátis: se você deseja NLMS puro, é melhor implementá-lo.

Jason R
fonte