Alex
unread,Nov 3, 2011, 3:40:14 PM11/3/11You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
Hi 2 all, sorry for my English)
I started to use wavelets for image denoising. Matlab has a great function dwt2, which gives the output approximation coefficients matrix cA and details coefficients matrices cH, cV, and cD.
I want to manually repeat the process of calculation dwt2, but I was confused a couple of points.
1) The base of transformation is a convolution. Since the dimension of the wavelet-functions, or scale-functions (Haar and Daubechies) greater than 1, then the convolution "inflates" the dimension of the output signal.
For example, if we have vector x = [1 2 3 4 5 6], after its convolution with the Haar wavelet-function h = [1 1] we obtain the vector dimension of 6 + 2 - 1 = 7.
When I use dwt2 for an image 512 * 512 I get four matrices 256 * 256. So the convolution does not affect the dimension. The main reason why i get 256 * 256 is downsampling.
2) I was trying to understand the source code of dwt2, as the developers have implemented it, but do not quite understand the principle. Confuse such things as the function wextend, convdown and variables dwtEXTM, sizeEXT.
Please explain in some words the convolution algorithm without changing the dimension of output signal / image. Code examples are not excess =))
Thx!