2D Wavelet Transform (IPPI)

2D Wavelet Transform (IPPI)

Hello,

I tried to use ippi 2d wavelet transform. Following the example it works generally very good for different wavelets (Db2, Db4, Db6, etc.).
However, my problem is, when I change the values for anchorLow and anchorHigh in forward and inverse wavelet transformation then I cannot reconstruct the image correctly.

To explain the problem, first the original values from the example for Db4 (Pseudocode):
fwd_lenLow = 4, anchorLow = 2
fwd_lenHigh = 4, anchorHigh = 2
inv_lenLow = 4, anchorLow = 1
inv_lenHigh = 4, achorHigh = 1
I used the db4 wavelet values from the example!

In contrast to the example, often wavelet transform is performed with the following values:
fwd_lenLow = 4, anchorLow = 1
fwd_lenHigh = 4, anchorHigh = 1
inv_lenLow = 4, anchorLow = 0
inv_lenHigh = 4, achorHigh = 0
using the same db4 wavelet. In my opinion correct wavelet reconstruction should be still possible in this case. However, it fails in my implementation. What is the reason for this?
(Border pixel were calculated using BorderWraping and size of image border were calculated according to the ippi manual)

Thanx in advance
Thomas

3 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Okay I found the solution.

AnchorLow/anchorHigh for forward and inverse wavelet transformation are related, which seems generally to be clear, however in my case inv_anchorLow has to be fwd_lenLow - 1 - fwd_anchorLow. (Same for inv_anchorHigh).

Maybe somebody find this helpful.

Kind regards,
Thomas

Hi Thomas,

thanks for sharing your findings here

Regards,
Vladimir

Leave a Comment

Please sign in to add a comment. Not a member? Join today