# How to implement a $j$-level $M$-band wavelet transform of an image?

I want to implement an $M$-band (or multi-band) wavelet transform, to be used for feature extraction on images.

• Is there a built-in Matlab function available?
• Do I have to implement is using filter coefficients?
• Where can I get filter coefficients for $M$-band wavelets?
• Welcome to DSP.SE! What have you tried? Can't you find anything from Googling? Why do you need to do it? Is it just matlab? Or will C code do? – Peter K. Mar 22 '16 at 15:48
• @Peter K. while the question deserves some editing, I understand it. There are few available $M$-band wavelet filter directly available. I have an implement of a $M$-band that I did not make public yet. I should clean the code and do something with that. – Laurent Duval Mar 22 '16 at 18:58
• OK, @LaurentDuval: I don't mean to discourage useratstat, but it does seem like a better asked question could be made of it. Perhaps you could try editing? – Peter K. Mar 22 '16 at 19:00

[EDIT: some code made available] The notion of $M$-band wavelet transform, $M\ge2$, generalizes the standard $2$-band wavelet. The theory is provides, for instance, in Theory Of Regular M-Band Wavelet Bases, P. Steffen et al., 1993. Remember that with $2$-band wavelets, one cannot obtain wavelets that are real-valued, symmetric, orthogonal and with finite support, except for the Haar wavelet (not very regular). For $M>2$, such designs can be obtained with sufficient regularity, and $M$-band wavelets are sometimes believed to be more efficient for image analysis. Alas, regular $M$-band filterbank are generally harder to design, and $M$-band wavelets have been used more rarely. Resultingly, they are less implemented in standard software.

On $M$-band implementations: I am not aware of build-in Matlab functions. However, there exist $1$D versions, that you can built upon for your applications: A $2$-D version is now embedded in the Matlab toolbox: $M$-band $2$D dual-tree (Hilbert) wavelet multicomponent image denoising. Other sources to grab coefficients from:

And one day, I shall rewrite my own codes to make them much cleaner.