stringtranslate.com

Transformada wavelet discreta

Un ejemplo de la transformada wavelet discreta 2D que se utiliza en JPEG2000 . La imagen original se filtra con un filtro de paso alto, lo que produce las tres imágenes grandes, cada una de las cuales describe cambios locales en el brillo (detalles) en la imagen original. Luego se filtra con un filtro de paso bajo y se reduce su escala, lo que produce una imagen de aproximación; esta imagen se filtra con un filtro de paso alto para producir las tres imágenes de detalles más pequeños y se filtra con un filtro de paso bajo para producir la imagen de aproximación final en la parte superior izquierda. [ aclaración necesaria ]

En el análisis numérico y el análisis funcional , una transformada wavelet discreta ( DWT ) es cualquier transformada wavelet para la cual las wavelets se muestrean de forma discreta. Al igual que con otras transformadas wavelet, una ventaja clave que tiene sobre las transformadas de Fourier es la resolución temporal: captura información tanto de frecuencia como de ubicación (ubicación en el tiempo).

Ejemplos

Ondículas de Haar

La primera DWT fue inventada por el matemático húngaro Alfréd Haar . Para una entrada representada por una lista de números, se puede considerar la transformada wavelet de Haar para emparejar los valores de entrada, almacenar la diferencia y pasar la suma. Este proceso se repite de forma recursiva, emparejando las sumas para demostrar la siguiente escala, que conduce a las diferencias y a una suma final.

Ondículas de Daubechies

El conjunto de transformadas wavelet discretas más comúnmente utilizado fue formulado por la matemática belga Ingrid Daubechies en 1988. Esta formulación se basa en el uso de relaciones de recurrencia para generar muestreos discretos progresivamente más finos de una función wavelet madre implícita; cada resolución es el doble de la de la escala anterior. En su artículo seminal, Daubechies deriva una familia de wavelets , la primera de las cuales es la wavelet de Haar. El interés en este campo ha explotado desde entonces, y se desarrollaron muchas variaciones de las wavelets originales de Daubechies. [1] [2] [3]

La transformada wavelet compleja de árbol dual (DCWT)

La transformada wavelet compleja de árbol dual ( WT) es una mejora relativamente reciente de la transformada wavelet discreta (DWT), con importantes propiedades adicionales: es casi invariante al desplazamiento y selectiva en la dirección en dos dimensiones y más. Lo logra con un factor de redundancia de solo , sustancialmente menor que la DWT no diezmada. La WT de árbol dual multidimensional (MD) no es separable, pero se basa en un banco de filtros (FB) separable y computacionalmente eficiente. [4]

Otros

Otras formas de transformada wavelet discreta incluyen la wavelet Le Gall–Tabatabai (LGT) 5/3 desarrollada por Didier Le Gall y Ali J. Tabatabai en 1988 (usada en JPEG 2000 o JPEG XS ), [5] [6] [7] la QMF binomial desarrollada por Ali Naci Akansu en 1990, [8] el algoritmo de partición de conjuntos en árboles jerárquicos (SPIHT) desarrollado por Amir Said con William A. Pearlman en 1996, [9] la transformada wavelet no diezmada o no diezmada (donde se omite el submuestreo) y la transformada de Newland (donde se forma una base ortonormal de wavelets a partir de filtros de sombrero de copa construidos apropiadamente en el espacio de frecuencia ). Las transformadas de paquetes wavelet también están relacionadas con la transformada wavelet discreta. La transformada wavelet compleja es otra forma.

Propiedades

La DWT de Haar ilustra las propiedades deseables de las wavelets en general. En primer lugar, se puede realizar en operaciones; en segundo lugar, captura no solo una noción del contenido de frecuencia de la entrada, al examinarla en diferentes escalas, sino también el contenido temporal, es decir, los momentos en que ocurren estas frecuencias. Combinadas, estas dos propiedades hacen que la transformada rápida de wavelets (FWT) sea una alternativa a la transformada rápida de Fourier (FFT) convencional.

Problemas de tiempo

Debido a los operadores de cambio de velocidad en el banco de filtros, la WT discreta no es invariante en el tiempo, sino que es muy sensible a la alineación de la señal en el tiempo. Para abordar el problema de variación en el tiempo de las transformadas wavelet, Mallat y Zhong propusieron un nuevo algoritmo para la representación wavelet de una señal, que es invariante a los cambios en el tiempo. [10] Según este algoritmo, que se denomina TI-DWT, solo se muestrea el parámetro de escala a lo largo de la secuencia diádica 2^j (j∈Z) y se calcula la transformada wavelet para cada punto en el tiempo. [11] [12]

Aplicaciones

La transformada wavelet discreta tiene una gran cantidad de aplicaciones en ciencia, ingeniería, matemáticas e informática. En particular, se utiliza para la codificación de señales, para representar una señal discreta en una forma más redundante, a menudo como preacondicionamiento para la compresión de datos . También se pueden encontrar aplicaciones prácticas en el procesamiento de señales de aceleraciones para el análisis de la marcha, [13] [14] procesamiento de imágenes, [15] [16] en comunicaciones digitales y muchas otras. [17] [18] [19]

Se demuestra que la transformada wavelet discreta (discreta en escala y desplazamiento, y continua en el tiempo) se implementa exitosamente como banco de filtros analógicos en el procesamiento de señales biomédicas para el diseño de marcapasos de bajo consumo y también en comunicaciones inalámbricas de banda ultra ancha (UWB). [20]

Ejemplo en procesamiento de imágenes

Imagen con ruido gaussiano
Imagen con ruido gaussiano eliminado

Los wavelets se utilizan a menudo para eliminar el ruido de señales bidimensionales, como imágenes. El siguiente ejemplo proporciona tres pasos para eliminar el ruido gaussiano blanco no deseado de la imagen ruidosa que se muestra. Se utilizó Matlab para importar y filtrar la imagen.

El primer paso es elegir un tipo de wavelet y un nivel N de descomposición. En este caso se eligieron wavelets biortogonales 3.5 con un nivel N de 10. Los wavelets biortogonales se utilizan comúnmente en el procesamiento de imágenes para detectar y filtrar el ruido blanco gaussiano, [21] debido a su alto contraste con los valores de intensidad de los píxeles vecinos. Utilizando estos wavelets se realiza una transformación wavelet en la imagen bidimensional.

Tras la descomposición del archivo de imagen, el siguiente paso es determinar los valores de umbral para cada nivel de 1 a N. La estrategia de Birgé-Massart [22] es un método bastante común para seleccionar estos umbrales. Mediante este proceso se crean umbrales individuales para N = 10 niveles. La aplicación de estos umbrales constituye la mayor parte del filtrado real de la señal.

El paso final es reconstruir la imagen a partir de los niveles modificados. Esto se logra utilizando una transformada wavelet inversa. La imagen resultante, con el ruido gaussiano blanco eliminado, se muestra debajo de la imagen original. Al filtrar cualquier forma de datos, es importante cuantificar la relación señal-ruido del resultado. [ cita requerida ] En este caso, la relación señal-ruido de la imagen ruidosa en comparación con la original fue del 30,4958 %, y la relación señal-ruido de la imagen sin ruido es del 32,5525 %. La mejora resultante del filtrado wavelet es una ganancia de relación señal-ruido del 2,0567 %. [23]

La elección de otras ondículas, niveles y estrategias de umbralización puede dar como resultado distintos tipos de filtrado. En este ejemplo, se optó por eliminar el ruido gaussiano blanco, aunque, con una umbralización diferente, podría haberse amplificado con la misma facilidad.

Para ilustrar las diferencias y similitudes entre la transformada wavelet discreta y la transformada de Fourier discreta , considere la DWT y la DFT de la siguiente secuencia: (1,0,0,0), un impulso unitario .

La DFT tiene base ortogonal ( matriz DFT ):

Mientras que la DWT con wavelets de Haar para datos de longitud 4 tiene base ortogonal en las filas de:

(Para simplificar la notación, se utilizan números enteros, por lo que las bases son ortogonales pero no ortonormales ).

Las observaciones preliminares incluyen:


La DWT demuestra la localización: el término (1,1,1,1) da el valor promedio de la señal, el término (1,1,–1,–1) coloca la señal en el lado izquierdo del dominio, y el término (1,–1,0,0) la coloca en el lado izquierdo del lado izquierdo, y al truncarlo en cualquier etapa se obtiene una versión reducida de la señal:

La función sinc , que muestra los artefactos del dominio del tiempo ( subimpulso y oscilaciones ) al truncar una serie de Fourier.

La DFT, por el contrario, expresa la secuencia mediante la interferencia de ondas de varias frecuencias; por lo tanto, al truncar la serie se obtiene una versión filtrada de paso bajo de la serie:

En particular, la aproximación intermedia (de 2 términos) difiere. Desde la perspectiva del dominio de la frecuencia, esta es una mejor aproximación, pero desde la perspectiva del dominio del tiempo tiene desventajas: presenta subimpulso (uno de los valores es negativo, aunque la serie original no es negativa en todas partes) y un anillo de , donde el lado derecho no es cero, a diferencia de la transformada wavelet. Por otro lado, la aproximación de Fourier muestra correctamente un pico, y todos los puntos están dentro de su valor correcto, aunque todos los puntos tienen error. La aproximación wavelet, por el contrario, coloca un pico en la mitad izquierda, pero no tiene pico en el primer punto, y si bien es exactamente correcta para la mitad de los valores (lo que refleja la ubicación), tiene un error de para los otros valores.

Esto ilustra los tipos de compensaciones entre estas transformaciones y cómo en algunos aspectos la DWT proporciona un comportamiento preferible, particularmente para el modelado de transitorios.

Definición

Un nivel de la transformación

La DWT de una señal se calcula pasándola por una serie de filtros. Primero, las muestras pasan por un filtro de paso bajo con respuesta al impulso que da como resultado una convolución de los dos:

La señal también se descompone simultáneamente utilizando un filtro de paso alto . Las salidas proporcionan los coeficientes de detalle (del filtro de paso alto) y los coeficientes de aproximación (del filtro de paso bajo). Es importante que los dos filtros estén relacionados entre sí y se los conoce como filtro de espejo en cuadratura .

Diagrama de bloques del análisis de filtros

Sin embargo, como ya se ha eliminado la mitad de las frecuencias de la señal, se puede descartar la mitad de las muestras según la regla de Nyquist. La salida del filtro de paso bajo del diagrama anterior se submuestrea entonces por 2 y se procesa más al pasarla nuevamente por un nuevo filtro de paso bajo y un filtro de paso alto con la mitad de la frecuencia de corte del anterior, es decir:

Esta descomposición ha reducido a la mitad la resolución temporal, ya que solo la mitad de la salida de cada filtro caracteriza la señal. Sin embargo, cada salida tiene la mitad de la banda de frecuencia de la entrada, por lo que la resolución de frecuencia se ha duplicado.

Con el operador de submuestreo

El resumen anterior se puede escribir de forma más concisa.

Sin embargo, calcular una convolución completa con submuestreo posterior desperdiciaría tiempo de cálculo.

El esquema de elevación es una optimización donde estos dos cálculos se intercalan.

Bancos de filtros y cascadas

Esta descomposición se repite para aumentar aún más la resolución de frecuencia y los coeficientes de aproximación se descomponen con filtros de paso alto y paso bajo y luego se muestrean a la baja. Esto se representa como un árbol binario con nodos que representan un subespacio con una localización de tiempo-frecuencia diferente. El árbol se conoce como banco de filtros .

Un banco de filtros de 3 niveles

En cada nivel del diagrama anterior, la señal se descompone en frecuencias altas y bajas. Debido al proceso de descomposición, la señal de entrada debe ser un múltiplo de donde es el número de niveles.

Por ejemplo, una señal con 32 muestras, rango de frecuencia de 0 a 3 niveles de descomposición, se producen 4 escalas de salida:

Representación del dominio de frecuencia de la DWT

Relación con la ondícula madre

La implementación del banco de filtros de wavelets se puede interpretar como el cálculo de los coeficientes de wavelet de un conjunto discreto de wavelets secundarios para un wavelet madre determinado . En el caso de la transformada de wavelet discreta, el wavelet madre se desplaza y se escala mediante potencias de dos.

donde es el parámetro de escala y es el parámetro de desplazamiento, ambos son números enteros.

Recuerde que el coeficiente wavelet de una señal es la proyección de sobre un wavelet, y sea una señal de longitud . En el caso de un wavelet hijo en la familia discreta anterior,

Ahora fijemos en una escala particular, de modo que sea una función de solamente. A la luz de la ecuación anterior, se puede ver como una convolución de con una versión dilatada, reflejada y normalizada de la ondícula madre, , muestreada en los puntos . Pero esto es precisamente lo que dan los coeficientes de detalle a nivel de la transformada de ondícula discreta. Por lo tanto, para una elección apropiada de y , los coeficientes de detalle del banco de filtros corresponden exactamente a un coeficiente de ondícula de un conjunto discreto de ondículas hijas para una ondícula madre dada .

Como ejemplo, considere la ondícula discreta de Haar , cuya ondícula madre es . Entonces, la versión dilatada, reflejada y normalizada de esta ondícula es , que es, de hecho, el filtro de descomposición de paso alto para la transformada de ondícula discreta de Haar.

Complejidad temporal

La implementación del banco de filtros de la transformada wavelet discreta toma solo O( N ) en ciertos casos, en comparación con O( N  log  N ) para la transformada rápida de Fourier .

Nótese que si y tienen una longitud constante (es decir, su longitud es independiente de N), entonces y cada uno toma un tiempo O( N ) . El banco de filtros wavelet realiza cada una de estas dos convoluciones O( N ) y luego divide la señal en dos ramas de tamaño N/2. Pero solo divide recursivamente la rama superior convolucionada con (a diferencia de la FFT, que divide recursivamente tanto la rama superior como la rama inferior). Esto conduce a la siguiente relación de recurrencia

lo que conduce a un tiempo O( N ) para toda la operación, como se puede demostrar mediante una expansión en serie geométrica de la relación anterior.

A modo de ejemplo, la transformada wavelet de Haar discreta es lineal, ya que en ese caso y tienen una longitud constante de 2.

La localidad de las wavelets, junto con la complejidad O( N ), garantiza que la transformación se pueda calcular en línea (en modo streaming). Esta propiedad contrasta marcadamente con la FFT, que requiere acceso a toda la señal a la vez. También se aplica a la transformación multiescala y a las transformaciones multidimensionales (por ejemplo, DWT 2-D). [24]

Otras transformaciones

Ejemplo de código

En su forma más simple, la DWT es notablemente fácil de calcular.

La wavelet de Haar en Java :

public static int [] discreteHaarWaveletTransform ( int [] input ) { // Esta función supone que input.length=2^n, n>1 int [] output = new int [ input . length ] ;            for ( int length = input . length / 2 ; ; length = length / 2 ) { // length es la longitud actual del área de trabajo de la matriz de salida. // length comienza en la mitad del tamaño de la matriz y cada iteración se reduce a la mitad hasta que es 1. for ( int i = 0 ; i < length ; ++ i ) { int suma = input [ i * 2 ] + input [ i * 2 + 1 ] ; int diferencia = input [ i * 2 ] - input [ i * 2 + 1 ] ; salida [ i ] = suma ; salida [ length + i ] = diferencia ; } if ( length == 1 ) { return salida ; }                                                                   //Intercambia matrices para realizar la siguiente iteración System . arraycopy ( salida , 0 , entrada , 0 , longitud ); } }      

El código Java completo para una DWT 1-D y 2-D que utiliza wavelets de Haar , Daubechies , Coiflet y Legendre está disponible en el proyecto de código abierto: JWave. Además, una implementación de elevación rápida de la transformada wavelet CDF biortogonal discreta 9/7 en C , utilizada en el estándar de compresión de imágenes JPEG 2000 , se puede encontrar aquí (archivado el 5 de marzo de 2012).

Ejemplo del código anterior

Ejemplo de cálculo de los coeficientes wavelet discretos de Haar para una señal de sonido de alguien que dice "Me encantan los wavelets". La forma de onda original se muestra en azul en la parte superior izquierda y los coeficientes wavelet se muestran en negro en la parte superior derecha. En la parte inferior se muestran tres regiones ampliadas de los coeficientes wavelet para diferentes rangos.

Esta figura muestra un ejemplo de aplicación del código anterior para calcular los coeficientes wavelet de Haar en una forma de onda de sonido. Este ejemplo destaca dos propiedades clave de la transformada wavelet:

Véase también

Referencias

  1. ^ AN Akansu, RA Haddad y H. Caglar, Transformada QMF-Wavelet binomial de reconstrucción perfecta, Proc. SPIE Comunicaciones visuales y procesamiento de imágenes, págs. 609–618, vol. 1360, Lausana, septiembre de 1990.
  2. ^ Akansu, Ali N.; Haddad, Richard A. (1992), Descomposición de señales multirresolución: transformadas, subbandas y wavelets, Boston, MA: Academic Press, ISBN  978-0-12-047141-6
  3. ^ AN Akansu, Bancos de filtros y wavelets en el procesamiento de señales: una revisión crítica, Proc. SPIE Video Communications and PACS for Medical Applications (artículo invitado), págs. 330-341, vol. 1977, Berlín, octubre de 1993.
  4. ^ Selesnick, IW; Baraniuk, RG; Kingsbury, NC, 2005, La transformada wavelet compleja de árbol dual
  5. ^ Sullivan, Gary (8–12 de diciembre de 2003). «Características generales y consideraciones de diseño para la codificación de vídeo en subbandas temporales». UIT-T . Grupo de expertos en codificación de vídeo . Consultado el 13 de septiembre de 2019 .
  6. ^ Bovik, Alan C. (2009). La guía esencial para el procesamiento de video. Academic Press . p. 355. ISBN 9780080922508.
  7. ^ Gall, Didier Le; Tabatabai, Ali J. (1988). "Codificación de subbandas de imágenes digitales utilizando filtros de núcleo corto simétricos y técnicas de codificación aritmética". ICASSP-88., Conferencia internacional sobre acústica, habla y procesamiento de señales . pp. 761–764 vol.2. doi :10.1109/ICASSP.1988.196696. S2CID  109186495.
  8. ^ Ali Naci Akansu , Una estructura QMF-Wavelet eficiente (Binomial-QMF Daubechies Wavelets), Proc. 1er Simposio NJIT sobre Wavelets, abril de 1990.
  9. ^ Said, A.; Pearlman, WA (1996). "Un nuevo, rápido y eficiente códec de imágenes basado en particionamiento de conjuntos en árboles jerárquicos". IEEE Transactions on Circuits and Systems for Video Technology . 6 (3): 243–250. doi :10.1109/76.499834. ISSN  1051-8215 . Consultado el 18 de octubre de 2019 .
  10. ^ S. Mallat, Un recorrido wavelet por el procesamiento de señales, 2.ª ed. San Diego, CA: Academic, 1999.
  11. ^ SG Mallat y S. Zhong, "Caracterización de señales a partir de bordes multiescala", IEEE Trans. Pattern Anal. Mach. Intell., vol. 14, núm. 7, págs. 710–732, julio de 1992.
  12. ^ Ince, Kiranyaz, Gabbouj, 2009, Un sistema genérico y robusto para la clasificación automatizada de señales de ECG específicas para cada paciente
  13. ^ "Nuevo método para la estimación de la longitud de la zancada con acelerómetros de red de área corporal", IEEE BioWireless 2011 , págs. 79-82
  14. ^ Nasir, V.; Cool, J.; Sassani, F. (octubre de 2019). "Monitoreo inteligente de mecanizado mediante señal de sonido procesada con el método wavelet y una red neuronal autoorganizada". IEEE Robotics and Automation Letters . 4 (4): 3449–3456. doi :10.1109/LRA.2019.2926666. ISSN  2377-3766. S2CID  198474004.
  15. ^ Broughton, S. Allen. "Métodos basados ​​en wavelets en el procesamiento de imágenes". www.rose-hulman.edu . Consultado el 2 de mayo de 2017 .
  16. ^ Chervyakov, NI; Lyakhov, PA; Nagornov, NN (1 de noviembre de 2018). "Ruido de cuantificación de filtros de transformada wavelet discreta multinivel en el procesamiento de imágenes". Optoelectrónica, instrumentación y procesamiento de datos . 54 (6): 608–616. Bibcode :2018OIDP...54..608C. doi :10.3103/S8756699018060092. ISSN  1934-7944. S2CID  128173262.
  17. ^ Akansu, Ali N.; Smith, Mark JT (31 de octubre de 1995). Transformadas de subbanda y wavelet: diseño y aplicaciones . Kluwer Academic Publishers. ISBN 0792396456.
  18. ^ Akansu, Ali N.; Medley, Michael J. (6 de diciembre de 2010). Transformadas wavelet, de subbanda y de bloque en comunicaciones y multimedia . Kluwer Academic Publishers. ISBN 978-1441950864.
  19. ^ AN Akansu, P. Duhamel, X. Lin y M. de Courville Transmultiplexores ortogonales en comunicación: una revisión, IEEE Trans. On Signal Processing, número especial sobre teoría y aplicaciones de bancos de filtros y wavelets. Vol. 46, n.º 4, págs. 979–995, abril de 1998.
  20. ^ AN Akansu, WA Serdijn e IW Selesnick, Transformadas wavelet en el procesamiento de señales: una revisión de aplicaciones emergentes, Physical Communication, Elsevier, vol. 3, número 1, págs. 1–18, marzo de 2010.
  21. ^ Pragada, S.; Sivaswamy, J. (1 de diciembre de 2008). "Eliminación de ruido de imágenes mediante wavelets biortogonales emparejados". Sexta Conferencia india de 2008 sobre visión artificial, procesamiento de imágenes gráficas : 25–32. doi :10.1109/ICVGIP.2008.95. S2CID  15516486.
  22. ^ "Umbrales para wavelet 1-D usando la estrategia Birgé-Massart - MATLAB wdcbm". www.mathworks.com . Consultado el 3 de mayo de 2017 .
  23. ^ "Cómo obtener la relación señal/ruido para dos imágenes - Respuestas de MATLAB - MATLAB Central" www.mathworks.com . Consultado el 10 de mayo de 2017 .
  24. ^ Barina, David (2020). "Transformada wavelet en tiempo real para franjas de imágenes infinitas". Revista de procesamiento de imágenes en tiempo real . 18 (3). Springer: 585–591. doi :10.1007/s11554-020-00995-8. S2CID  220396648 . Consultado el 9 de julio de 2020 .
  25. ^ Atto, Abdourrahmane M.; Trouvé, Emmanuel; Nicolas, Jean-Marie; Lê, Thu Trang (2016). "Operadores wavelet y modelos de observación multiplicativos: aplicación al análisis de series temporales de imágenes SAR" (PDF) . IEEE Transactions on Geoscience and Remote Sensing . 54 (11): 6606–6624. Bibcode :2016ITGRS..54.6606A. doi :10.1109/TGRS.2016.2587626. S2CID  1860049.

[1]

Enlaces externos

  1. ^ Prasad, Akhilesh; Maan, Jeetendrasingh; Verma, Sandeep Kumar (2021). "Transformadas wavelet asociadas con la transformada de índice de Whittaker". Métodos matemáticos en las ciencias aplicadas . 44 (13): 10734–10752. Bibcode :2021MMAS...4410734P. doi :10.1002/mma.7440. ISSN  1099-1476. S2CID  235556542.