Wavelet Packet Decomposition filter specification

3 次查看(过去 30 天)
Hi, I am looking to perform Wavelet Packet Decomposition on a 2 dimensional image using my own filter coefficients.
I have noticed that when performing standard 2-D Wavelet Decomposition there is a function 'dwt2' which takes high and low pass filters as parameters, however when performing Wavelet Packet Decomposition only a wavelet name can be specified and not the actual filters.
Just wondering is anyone aware of a function which will enable me to specify my own high and low pass filters for use with Wavelet Packet Decomposition? Or, if anyone has any ideas these would also be greatly appreciated.
thanks, John

采纳的回答

Wayne King
Wayne King 2011-12-14
Hi John, yes the filter I gave you above matches exactly. What you have to realize is that Wavelet Toolbox multiplies the orthogonal lowpass filter by sqrt(2) so that it satisfies the properties of a conjugate quadrature filter. This is built into the way Daubechies describes her filters. She describes them divided by sqrt(2).
If you do this:
[LoD,HiD] = wfilters('db10');
h = fliplr(LoD/sqrt(2))
You will see exactly the filter you are looking for. So you can just use wpdec2() with 'db10'.
Hope that helps

更多回答(2 个)

Wayne King
Wayne King 2011-12-14
Hi, John, you have your own orthogonal or biorthogonal filters? Then, yes, you can add them to the toolbox with wavemngr() and then use them in wpdec2
You should ensure that these are orthogonal or biorthogonal filters, or you will not have a wavelet packet transform.
  1 个评论
John
John 2011-12-14
Hi Wayne thanks for your response, I am implementing a paper which uses the Wavelet Packet Transform for texture classification.
The authors specify "20-Tap Daubechies Wavelet Transform Filter Coefficients" for a low-pass filter, H which is then used to create the high-pass filter, G.
The output of the wfilters function for various Daubechies filters (db1..db20) is different than those specified by the authors of the paper which is what motivated my question.
I might try using a standard Matlab Daubechies filter first and then look at the wavemngr option if this doesn't yield intuitive results.

请先登录,再进行评论。


Wayne King
Wayne King 2011-12-14
In what sense do you say they're different? You may be confusing the way the Wavelet Toolbox refers to db#. The Wavelet Toolbox uses the number of vanishing moments and not the length of the filter. The length is twice the number of vanishing moments.
[LoD,HiD] = wfilters('db10');
length(LoD)
Does the above filter give you what you need?
Is this paper somewhere I can see?
  1 个评论
John
John 2011-12-14
I don't have access to Matlab at just this moment but I will check as soon as I do.
The paper is at www.sftw.umac.mo/~fstpcm/pub/PAMI03.pdf it is called "Log-Polar Wavelet Energy Signatures for Rotation and Scale Invariant Texture Classification" by Pun and Lee (2003. The definition of the filters are in Section 2 and the Filter Coefficients for H are in Section 4.2.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Filter Banks 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by