Clear Filters
Clear Filters

waht does the command "cfs = read(wpt,'data') " return?

1 view (last 30 days)
wpt is the wavelet packet tree. does "cfs = read(wpt,'data') " return the sum of the coefficients of the tree nodes at the bottom level?
But the result is in fact different from the original signal?
Why?
thanks

Accepted Answer

Wayne King
Wayne King on 27 Oct 2011
Hi,
cfs = read(wpt,'data');
returns the coefficients in the terminal nodes of the wavelet packet tree. These are not equal to the data.
For example:
dwtmode('per');
x = randn(16,1);
T = wpdec(x,3,'db2');
plot(T)
Now, click on (3,0) (3,1), (3,2) and so on.
You see in each one of these nodes, there are 4 coefficients. Since there are 8 such nodes, there are a total of 32 coefficients.
cfs = read(T,'data');
returns these 32 coefficients.
  2 Comments
Dingguo Lu
Dingguo Lu on 28 Oct 2011
Wayne,
I have further questions.
1. With your example, the size of "cfs" is 1x16. Why? I am little confused.
2. Are the coefficients in "cfs" ordered by the order of (3,0) (3,1), (3,2) and so on?
3. Is there any way that I can reconstruct original signal from the terminal nodes?
4. Do the terminal nodes carry same frequency and magnitude information as the original signal?
Might two many questions. Still, these are really important for me.
Thanks,

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!