Para algunos experimentos de eliminación de ruido y desconvolución, me gustaría aplicar una transformación wavelet de segunda generación (usando pasos de elevación ) a las imágenes.
Sé que hay varias implementaciones disponibles, pero la mayoría de ellas usan matlab, mientras que quiero trabajar en C ++ con OpenCV . Como no hay una implementación incorporada de transformación wavelet en OpenCV 2.x, planeo implementarla yo mismo (además, será un buen ejercicio para mí). Después de un poco de investigación, pude encontrar los artículos originales sobre la transformación de segunda generación, pero todavía estoy un poco confundido sobre la forma exacta en que funciona el algoritmo.
Tomando como referencia principal el artículo [1] de Sweldens: El esquema de elevación: una construcción de wavelets de segunda generación , todavía estoy confundido por la definición de los conjuntos de índices : ¿cuál es su tamaño? como se construyen ...
De ahí mi pregunta: ¿alguien sabe acerca de algunos recursos sobre la transformación wavelet de segunda generación (documentos, tutoriales, diapositivas ...) que están en forma de tutorial o que proporcionan una vista más algorítmica (en lugar de matemática) , ¿qué me ayudaría a diseñar mi propia implementación?
Gracias de antemano.
Referencias
Mi referencia principal es:
[1] Sweldens, W. (1998). El esquema de elevación: una construcción de wavelets de segunda generación. Revista SIAM sobre análisis matemático, 29 (2), 511.
Y también estoy aprendiendo de:
[2] Daubechies, I. y Sweldens, W. (1998). La factorización wavelet se transforma en pasos de elevación. Análisis de Journal of Fourier y aplicaciones, 4 (3), 247–269.
[3] Kovacevic, J. y Sweldens, W. (2000). Familias wavelet de orden creciente en dimensiones arbitrarias. Procesamiento de imagen, 9 (3), 480–496. doi: 10.1109 / 83.826784
Respuestas:
Finalmente compré una copia de [Ripples in Mathematics The Discrete Wavelet Transform] [1], y estoy muy satisfecho con este libro. Los autores explican el DWT con puntos de vista alternos (esquemas de elevación, enfoque de bancos de filtros, análisis de resolución múltiple), donde cada uno de estos puntos de vista tiene sus propias ventajas. Además, el libro está orientado a la implementación, con capítulos sobre manejo de límites e implementaciones de matlab / C.
Todavía estoy buscando una manera adecuada de manejar señales de tamaños extraños, pero Ripples me dio un buen comienzo.
[1]: http://www.control.auc.dk/~alc/ripples.html "Ripples in Mathematics The Discrete Wavelet Transform", por Arne Jensen y Anders la Cour-Harbo
fuente