¿Cómo mejorar el rendimiento del filtro de mínimos cuadrados (LMS) / NLMS?


14

¿Hay formas de aumentar el rendimiento computacional de un filtro de mínimos cuadrados normalizados (NLMS)? Se ha propuesto que los filtros de dominio de frecuencia de bloque de múltiples capas (MDF) hagan esto, pero también eliminan la velocidad y la precisión de convergencia, porque solo actualizan la respuesta de impulso estimada una vez por cada bloque, no una vez por cada muestra. ¿Hay otros métodos?

Respuestas:


6

Si desea implementar el algoritmo NLMS "estándar" sin cortar ninguna esquina, entonces probablemente no encontrará una estructura que sea significativamente más eficiente. Las formas de bloque de filtrado LMS tienen como objetivo utilizar técnicas de convolución rápida (como overlap-save o overlap-add) para acelerar esa parte del proceso. Sin embargo, como notó, los coeficientes del filtro solo se actualizan por bloque, ya que el filtro debe ser constante sobre el bloque para usar el enfoque de convolución rápida.

La naturaleza altamente recursiva de NLMS lo limitará si desea mantener la característica de actualización muestra por muestra. Si bien la acción de filtrado no es recursiva, los coeficientes de filtro en el instante de tiempo N son una función de los coeficientes en el instante de tiempo N-1, lo que limita su capacidad de acelerar el proceso mediante el uso de paralelismo o cálculo orientado a bloques. Como en la mayoría de los casos, no hay un almuerzo gratis: si quieres NLMS puro, entonces es mejor que lo implementes.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.