Algoritmo de transformada rápida multidimensional de Fourier
El algoritmo FFT de base vectorial es un algoritmo de transformada rápida de Fourier (FFT) multidimensional, que es una generalización del algoritmo FFT de Cooley-Tukey ordinario que divide las dimensiones de la transformada por radices arbitrarios. Descompone una transformada de Fourier discreta (DFT) multidimensional (MD) en MD DFT sucesivamente más pequeñas hasta que, en última instancia, solo es necesario evaluar MD DFT triviales. [1]
El algoritmo FFT multidimensional más común es el algoritmo fila-columna, que significa transformar la matriz primero en un índice y luego en el otro, ver más en FFT . Luego se desarrolló una FFT 2-D directa radix-2, [2] que puede eliminar el 25% de los multiplicados en comparación con el enfoque convencional de fila-columna. Y este algoritmo se ha extendido a matrices rectangulares y radices arbitrarias, [3] que es el algoritmo general de base vectorial.
El algoritmo FFT de base vectorial puede reducir significativamente el número de multiplicaciones complejas, en comparación con el algoritmo de vector-fila. Por ejemplo, para una matriz de elementos (M dimensiones y tamaño N en cada dimensión), el número de múltiplos complejos del algoritmo FFT de base vectorial para radix-2 no se pudo analizar (SVG (MathML se puede habilitar mediante el complemento del navegador): Respuesta no válida ("La extensión Math no puede conectarse a Restbase") del servidor "http://localhost:6011/en.wikipedia.org/v1/":): {\displaystyle \frac{2^M -1}{2 ^M} N^M \log_2 N}
, mientras tanto, para el algoritmo fila-columna, es . Y, en general, se obtienen ahorros aún mayores en multiplicaciones cuando este algoritmo se opera en radices más grandes y en matrices de dimensiones más altas. [3]
En general, el algoritmo vector-radix reduce significativamente la complejidad estructural del DFT tradicional al tener un mejor esquema de indexación, a expensas de un ligero aumento en las operaciones aritméticas. Por lo tanto, este algoritmo se usa ampliamente para muchas aplicaciones en ingeniería, ciencia y matemáticas, por ejemplo, implementaciones en procesamiento de imágenes [4] y diseño de procesadores FFT de alta velocidad. [5]
Caja DIT 2D
Al igual que con el algoritmo FFT de Cooley-Tukey , la FFT de base vectorial bidimensional se deriva descomponiendo la DFT 2-D normal en sumas de DFT más pequeñas multiplicadas por factores de "giro".
Un algoritmo de diezmado en el tiempo ( DIT ) significa que la descomposición se basa en el dominio del tiempo ; consulte más información en el algoritmo FFT de Cooley-Tukey .
Suponemos que la DFT 2-D está definida
donde , y , y es una matriz, y .
Para simplificar, supongamos que , y la base- es tal que es un número entero.
Usando el cambio de variables:
, dónde
, dónde
donde o , entonces la DFT bidimensional se puede escribir como: [6]
La ecuación anterior define la estructura básica de la base DIT 2-D: "mariposa". (Ver "mariposa" 1-D en el algoritmo FFT de Cooley-Tukey )
Cuando , la ecuación se puede dividir en cuatro sumatorias, y esto conduce a: [1]
para ,
dónde .
Puede verse como una DFT de dimensiones, cada una sobre un subconjunto de la muestra original:
es la DFT sobre aquellas muestras de para las cuales ambos y son pares;
es la DFT sobre las muestras para las cuales es par e impar;
es la DFT sobre las muestras para las cuales es par e impar;
es la DFT sobre las muestras para las cuales ambos y son impares.
De manera similar, un algoritmo de diezmado en frecuencia ( DIF , también llamado algoritmo Sande-Tukey) significa que la descomposición se basa en el dominio de la frecuencia , ver más en Algoritmo Cooley-Tukey FFT .
Usando el cambio de variables:
, dónde
, dónde
donde o y la ecuación DFT se puede escribir como: [6]
Otros enfoques
Se ha demostrado que el algoritmo FFT de base dividida es un método útil para DFT 1-D. Y este método se ha aplicado a la FFT de base vectorial para obtener una FFT de base vectorial dividida. [6] [7]
En el algoritmo convencional de base vectorial 2-D, descomponemos los índices en 4 grupos:
Mediante el algoritmo de división de vector-base, los primeros tres grupos permanecen sin cambios, el cuarto grupo impar-impar se descompone en otros cuatro subgrupos y siete grupos en total:
Eso significa que el cuarto término en la ecuación de base DIT 2-D se convierte en: [8]
dónde
El 2-DN por N DFT se obtiene luego mediante el uso sucesivo de la descomposición anterior, hasta la última etapa.
Se ha demostrado que el algoritmo de base vectorial dividida ha ahorrado aproximadamente el 30% de las multiplicaciones complejas y aproximadamente el mismo número de sumas complejas para una matriz típica, en comparación con el algoritmo de base vectorial. [7]
Referencias
^ ab Dudgeon, Dan; Russell, Mersereau (septiembre de 1983). Procesamiento de señales digitales multidimensionales . Prentice Hall. pag. 76.ISBN 0136049591.
^ Rivard, G. (1977). "Transformada rápida directa de Fourier de funciones bivariadas". Transacciones IEEE sobre acústica, voz y procesamiento de señales . 25 (3): 250–252. doi :10.1109/TASSP.1977.1162951.
^ abHarris , D.; McClellan, J.; Chan, D.; Schuessler, H. (1977). "Transformación rápida de Fourier de base vectorial". ICASSP '77. Conferencia internacional IEEE sobre acústica, voz y procesamiento de señales . vol. 2. págs. 548–551. doi :10.1109/ICASSP.1977.1170349.
^ Buijs, H.; Pomerleau, A.; Fournier, M.; Tam, W. (diciembre de 1974). "Implementación de una transformada rápida de Fourier (FFT) para aplicaciones de procesamiento de imágenes". Transacciones IEEE sobre acústica, voz y procesamiento de señales . 22 (6): 420–424. doi :10.1109/TASSP.1974.1162620.
^ Badar, S.; Dandekar, D. (2015). "Diseño de procesador FFT de alta velocidad utilizando arquitectura canalizada Radix - 4 ". 2015 Congreso Internacional de Instrumentación y Control Industrial (ICIC) . págs. 1050-1055. doi :10.1109/IIC.2015.7150901. ISBN978-1-4799-7165-7. S2CID 11093545.
^ abc Chan, Carolina del Sur; Ho, KL (1992). "Transformada de Fourier rápida de base vectorial dividida". Transacciones IEEE sobre procesamiento de señales . 40 (8): 2029-2039. Código Bib : 1992ITSP...40.2029C. doi :10.1109/78.150004.
^ ab Pei, Soo-Chang; Wu, Ja-Lin (abril de 1987). "Transformación rápida de Fourier 2D de base vectorial dividida". ICASP '87. Conferencia internacional IEEE sobre acústica, voz y procesamiento de señales . vol. 12. págs. 1987-1990. doi :10.1109/ICASSP.1987.1169345. S2CID 118173900.
^ Wu, H.; Paoloni, F. (agosto de 1989). "Sobre el algoritmo FFT de base dividida de vector bidimensional". Transacciones IEEE sobre acústica, voz y procesamiento de señales . 37 (8): 1302-1304. doi : 10.1109/29.31283.