How can I apply lifting scheme to my own wavelet?
5 views (last 30 days)
Show older comments
I have implemented and added a bi-orthogonal wavelet function to the wavelet toolbox using wavemngr function. Now I want to apply lifting scheme to that wavelet. When I apply liftwave(wname) function it is showing "Error using liftwave (line 45)Invalid wavelet name".
In the wavenames also I am not getting my wavelet name. Please provide a solution to add my wavelet in the lifting wave.
0 Comments
Accepted Answer
Wayne King
on 13 May 2016
Hi Shaik,
filt2ls is your friend. You use filt2ls with the filters (include both the analysis and synthesis filters) and that will return the lifting scheme. Then, you use that lifting scheme with lwt.
For example:
[LoD,HiD,LoR,HiR] = wfilters('bior3.1');
ls = filt2ls(LoD,HiD,LoR,HiR);
load wecg;
[CA,CD] = lwt(wecg,ls);
2 Comments
More Answers (1)
Wayne King
on 15 May 2016
Edited: Wayne King
on 15 May 2016
Where did you get this biorthogonal filter pair? It does not satisfy the criteria for a biorthogonal (wavelet) filter pair. For one example, the product of the Fourier transforms of the lowpass filters at 0 frequency (DC) should be equal to 2.
In your case, it is equal to -2. The sum of elements in your rlp filter is -2.
A couple things you need to ensure are the following, let G_0() and G_1() denote the Fourier transforms of your lowpass filters and H_0() and H_1() denote your highpass filters
G_0(\omega)G_1^*(\omega)+H_0(\omega)H_1^*(\omega) = 2
G_0(\omega)G_1^*(\omega+\pi)+H_0(\omega)H_1^*(\omega+\pi) = 0
where the * denotes the complex conjugate.
0 Comments
See Also
Categories
Find more on Filter Banks in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!