En el procesamiento de señales , el método de superposición-suma es una forma eficiente de evaluar la convolución discreta de una señal muy larga.con un filtro de respuesta de impulso finito (FIR):
dóndeparafuera de la región
Este artículo utiliza notaciones abstractas comunes, comooen el que se entiende que las funciones deben pensarse en su totalidad, en lugar de en instantes específicos.(véase Convolución#Notación ).
Algoritmo

El concepto consiste en dividir el problema en múltiples convoluciones decon segmentos cortos de:
dóndees una longitud de segmento arbitraria. Entonces :
yse puede escribir como una suma de convoluciones cortas : [ 1 ]
donde la convolución lineales cero fuera de la regiónY para cualquier parámetro[ A ] es equivalente a la-convolución circular de puntos deconen la región La ventaja es que la convolución circular se puede calcular de forma más eficiente que la convolución lineal, según el teorema de la convolución circular :
dónde :
- DFT N e IDFT N se refieren a la transformada discreta de Fourier y su inversa, evaluadas sobrepuntos discretos y
- se elige habitualmente de tal manera quees una potencia entera de 2, y las transformaciones se implementan con el algoritmo FFT , para mayor eficiencia.
Pseudocódigo
A continuación se presenta una representación en pseudocódigo del algoritmo :
( Algoritmo de superposición y suma para convolución lineal ) h = filtro FIR M = longitud(h) Nx = longitud(x) N = 8 × 2^techo( log2(M) ) (8 veces la potencia de dos más pequeña mayor que la longitud del filtro M. Consulte la siguiente sección para una opción ligeramente mejor). step_size = N - (M-1) (L en el texto anterior) H = DFT(h, N) posición = 0 y(1 : Nx + M-1) = 0 mientras posición + tamaño_paso ≤ Nx hacer y(posición+(1:N)) = y(posición+(1:N)) + IDFT(DFT(x(posición+(1:tamaño_paso)), N) × H) posición = posición + tamaño_de_paso fin
Consideraciones de eficiencia

Cuando la DFT y la IDFT se implementan mediante el algoritmo FFT, el pseudocódigo anterior requiere aproximadamente N (log 2 (N) + 1) multiplicaciones complejas para la FFT, el producto de matrices y la IFFT. [ B ] Cada iteración produce N-M+1 muestras de salida, por lo que el número de multiplicaciones complejas por muestra de salida es aproximadamente :
Por ejemplo, cuandoyLa ecuación 3 es igual amientras que la evaluación directa de la ecuación 1 requeriría hastamultiplicaciones complejas por muestra de salida, siendo el peor caso cuando ambosyson de valor complejo. Tenga en cuenta también que para cualquier dadoLa ecuación 3 tiene un mínimo con respecto a La figura 2 es un gráfico de los valores deque minimizan la ecuación 3 para un rango de longitudes de filtro ().
En lugar de la ecuación 1 , también podemos considerar aplicar la ecuación 2 a una secuencia larga de longitudmuestras. El número total de multiplicaciones complejas sería:
En comparación, el número de multiplicaciones complejas requeridas por el algoritmo en pseudocódigo es:
Por lo tanto, el costo del método de superposición-adición se escala casi comomientras que el costo de una sola convolución circular grande es casiEn la Figura 3, generada mediante simulación con MATLAB , se comparan ambos métodos . Las curvas de nivel representan la relación constante entre los tiempos de ejecución de cada método. Cuando el método de superposición y suma es más rápido, la relación supera 1, llegando incluso a valores de hasta 3.

Véase también
Notas
- ↑ Esta condición implica que elEl segmento tiene al menosSe añadieron ceros, lo que evita la superposición circular de los transitorios de subida y bajada de la salida.
- ↑ El algoritmo FFT de Cooley-Tukey para N=2 k necesita (N/2) log 2 (N) – ver FFT – Definición y velocidad
Referencias
Lecturas adicionales
- Oppenheim, Alan V.; Schafer, Ronald W. (1975). Procesamiento digital de señales . Englewood Cliffs, NJ: Prentice-Hall. ISBN 0-13-214635-5.
- Hayes, M. Horace (1999). Procesamiento digital de señales . Serie Schaum's Outline. Nueva York: McGraw Hill. ISBN 0-07-027389-8.
- Senobari, Nader Shakibay; Funning, Gareth J.; Keogh, Eamonn; Zhu, Yan; Yeh, Chin-Chia Michael; Zimmerman, Zachary; Mueen, Abdullah (2019). "Correlación cruzada supereficaz (SEC-C): un código de filtrado adaptado rápido adecuado para ordenadores de sobremesa" (PDF) . Seismological Research Letters . 90 (1): 322–334 . doi : 10.1785/0220180122 . ISSN 0895-0695 .
- Procesamiento de señales
- Transforma
- Análisis de Fourier
- Análisis numérico