donde h [ m ] = 0 para m fuera de la región [1, M ] . Este artículo utiliza notaciones abstractas comunes, como o en las que se entiende que las funciones deben pensarse en su totalidad, en lugar de en instantes específicos (ver Convolución#Notación ).
El concepto es calcular segmentos cortos de y [ n ] de una longitud arbitraria L y concatenar los segmentos. Eso requiere segmentos de entrada más largos que se superpongan al siguiente segmento de entrada. Los datos superpuestos se "guardan" y se utilizan por segunda vez. [1] Primero describimos ese proceso con solo convolución convencional para cada segmento de salida. Luego describimos cómo reemplazar esa convolución con un método más eficiente.
Considere un segmento que comienza en n = kL + M , para cualquier entero k , y defina :
Entonces, para , y de manera equivalente , podemos escribir:
Con la sustitución , la tarea se reduce a calcular . Estos pasos se ilustran en los primeros 3 trazos de la Figura 1, excepto que la porción deseada de la salida (tercer trazo) corresponde a 1 ≤ j ≤ L. [B]
Si extendemos periódicamente x k [ n ] con periodo N ≥ L + M − 1, según :
las circunvoluciones y son equivalentes en la región . Por lo tanto, es suficiente calcular la convolución circular (o cíclica) de N puntos de con en la región [1, N ]. La subregión [ M + 1, L + M ] se agrega al flujo de salida y los demás valores se descartan . La ventaja es que la convolución circular se puede calcular de manera más eficiente que la convolución lineal, según el teorema de la convolución circular :
L se elige habitualmente de modo que N = L+M-1 sea una potencia entera de 2, y las transformaciones se implementan con el algoritmo FFT para mayor eficiencia.
Los efectos de borde inicial y posterior de la convolución circular se superponen y agregan, [C] y posteriormente se descartan. [D]
Pseudocódigo
( Algoritmo de superposición y guardado para convolución lineal )h = FIR_impulso_respuestaM = longitud(h)superposición = M − 1N = 8 × superposición (consulte la siguiente sección para una mejor elección)tamaño_paso = N - superposiciónH = EPS(h, N)posición = 0mientras que posición + N ≤ longitud(x) yt = IDFT(DFT(x(posición+(1:N))) × H) y(posición+(1:tamaño_paso)) = yt(M : N) (descartar M−1 valores y) posición = posición + tamaño_pasofin
Consideraciones de eficiencia
Cuando el algoritmo FFT implementa DFT e IDFT, el pseudocódigo anterior requiere aproximadamente N (log 2 (N) + 1) multiplicaciones complejas para FFT, producto de matrices e IFFT. [E] 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, cuando y la ecuación 3 es igual, mientras que la evaluación directa de la ecuación 1 requeriría hasta multiplicaciones complejas por muestra de salida, siendo el peor caso cuando ambos y tienen valores complejos. También tenga en cuenta que para cualquier ecuación dada, 3 tiene un mínimo con respecto a la Figura 2. Es una gráfica de los valores de esa ecuación minimizada para un rango de longitudes de filtro ( ).
En lugar de la Ec.1 , también podemos considerar aplicar la Ec.2 a una secuencia larga de muestras de longitud. El número total de multiplicaciones complejas sería:
Comparativamente, el número de multiplicaciones complejas requeridas por el algoritmo de pseudocódigo es:
Por lo tanto, el costo del método de superposición y ahorro aumenta casi mientras que el costo de una única convolución circular grande es casi .
Superponer-descartar
Superponer-descartar [2] y Superponer-desechar [3] son etiquetas que se utilizan con menos frecuencia para el mismo método que se describe aquí. Sin embargo, estas etiquetas son en realidad mejores (que solapar–guardar ) para distinguirlas de solapar–añadir , porque ambos métodos "guardan", pero solo uno descarta. "Guardar" simplemente se refiere al hecho de que se necesitan M − 1 muestras de entrada (o salida) del segmento k para procesar el segmento k + 1.
Ampliar superposición: guardar
El algoritmo de superposición y guardado se puede ampliar para incluir otras operaciones comunes de un sistema: [F] [4]
Los canales IFFT adicionales se pueden procesar de forma más económica que el primero reutilizando la FFT directa.
Las tasas de muestreo se pueden cambiar mediante el uso de FFT directas e inversas de diferentes tamaños.
La traducción de frecuencia (mezcla) se puede lograr reorganizando los contenedores de frecuencia.
^ Cambiar los efectos de borde indeseables a las últimas salidas M-1 es una posible conveniencia en tiempo de ejecución, porque el IDFT se puede calcular en el búfer, en lugar de calcularlo y copiarlo. Luego, los efectos de borde se pueden sobrescribir con el siguiente IDFT. Una nota a pie de página posterior explica cómo se realiza el cambio, mediante un desplazamiento temporal de la respuesta al impulso.
^ No debe confundirse con el método Overlap-add , que conserva efectos de borde inicial y posterior separados.
^ Los efectos de borde se pueden mover desde el frente hacia la parte posterior de la salida IDFT reemplazándolos con el significado de que el búfer de longitud N se desplaza (gira) circularmente mediante muestras M-1. Por tanto, el elemento h(M) está en n=1. El elemento h(M-1) está en n=N. h(M-2) está en n=N-1. Etc.
^ "Procesamiento STFT de superposición y adición (OLA) | Procesamiento de señales de audio espectral". www.dsprelacionado.com . Consultado el 2 de marzo de 2024 . El nombre de superposición-guardado proviene del hecho de que L-1 muestras del fotograma anterior [aquí: M-1 muestras del fotograma actual] se guardan para calcular el siguiente fotograma.
^ Harris, FJ (1987). DFElliot (ed.). Manual de procesamiento de señales digitales . San Diego: Prensa académica. págs. 633–699. ISBN0122370759.
^ Frerking, Marvin (1994). Procesamiento Digital de Señales en Sistemas de Comunicación . Nueva York: Van Nostrand Reinhold. ISBN0442016166.
^ Borgerding, Mark (2006). "Convertir superposición: guardar en un banco de filtros de reducción de resolución y mezcla multibanda". Revista de procesamiento de señales IEEE . 23 (marzo de 2006): 158-161. doi :10.1109/MSP.2006.1598092.
Rabiner, Lawrence R.; Oro, Bernard (1975). "2,25" . Teoría y aplicación del procesamiento de señales digitales . Englewood Cliffs, Nueva Jersey: Prentice-Hall. págs. 63–67. ISBN 0-13-914101-4.
patente estadounidense 6898235, Carlin, Joe; Collins, Terry & Hays, Peter et al., "Dispositivo de búsqueda de dirección y interceptación de comunicaciones de banda ancha mediante hipercanalización", publicado el 10 de diciembre de 1999, publicado el 24 de mayo de 2005 , también disponible en https://patentimages.storage.googleapis. com/4d/39/2a/cec2ae6f33c1e7/US6898235.pdf
Enlaces externos
Dra. Deepa Kundur, Superponer agregar y superponer guardar, Universidad de Toronto