Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
Wavelet package decomposition

Subject: Wavelet package decomposition

From: Françoise

Date: 30 Mar, 2012 17:03:18

Message: 1 of 6

Hey there. I have this small confusion regarding wavelet package decomposition. I have an electrophysiological signal, 10kHz samplig frequency, and I want to decompose it in the following bands: Delta: 1-4Hz, Theta: 4-9Hz, Alfa: 9-12Hz, Beta: 12-25Hz, Gamma: 25-100Hz, Ultra: 100-700Hz, PA: 700+.

As the entire signal has too many data for Matlab (Out of memory error), I downsampled it at 2500Hz. Following that, I tried decomposing it using a discrete wavelet transform. However, due the range of the bands, with the dwt I'm getting overlapped bands (something like 9-20Hz an alfa-beta band, 20-40Hz beta-gamma etc, etc).

I've been reading, and it seems I can fix that using wavelet package decomposition. So, I take my signal and decompose it in a full tree. Manually, I check which frequencies correspond to each node, assuming that each node holds half the frequency spectrum of its father node. I then merge the nodes that correspond to the terminal range of frequencies I want.

My questions are:
-Is there a way to check which range of frequency a node holds? I'm not sure it is so simple as just to divide the frequency range in two of a given node to produce its subsequent nodes.
-Is the method correct? Or is my assumption wrong?
-How can I reconstruct a band of the original signal from various nodes? I see there's a command to get the coefficients of a single node. Can I use those coefficients and idwt them? How do I merge the different coefficients?
-How does the natural and frequency orders of the nodes affect all of this? I'm still not sure how those two work.

Thanks, and forgive me for the long post.

Subject: Wavelet package decomposition

From: Frank

Date: 30 Mar, 2012 18:23:14

Message: 2 of 6

I'm not the most qualified to answer this (hopefully TideMan or Wayne
King will respond), but the frequency width of each node can be
approximated by [n*Fs/2^(J+1), (n+1)*Fs/2^(J+1)] where J is the level
of your decomposition, and n = 0, 1, 2, ... J^2-1. If you use wpdec
to do the wavelet packet decomposition, you can use wprcoef to
reconstruct the coefficients for a particular node.

Frank

Subject: Wavelet package decomposition

From: Françoise

Date: 9 Apr, 2012 15:53:11

Message: 3 of 6

Frank <fbleahy@yahoo.com> wrote in message <3aaf5d7b-2634-4d9b-8670-51e91e5074ba@m16g2000yqc.googlegroups.com>...
> I'm not the most qualified to answer this (hopefully TideMan or Wayne
> King will respond), but the frequency width of each node can be
> approximated by [n*Fs/2^(J+1), (n+1)*Fs/2^(J+1)] where J is the level
> of your decomposition, and n = 0, 1, 2, ... J^2-1. If you use wpdec
> to do the wavelet packet decomposition, you can use wprcoef to
> reconstruct the coefficients for a particular node.
>
> Frank

Ok, I managed to figure out the frequency disctribution for each node. Now, I want to reconstruct the nodes into different signals, each with a specific band. However, some bands are distributed among more than one node. How do I reconstruct a signal from more than one node? For example, let's say my signal for a high-frequency band corresponds to the nodes N19 N8 N16 N66 and N132 (frequency order.) How do I do to reconstruct a signal from that band?

Subject: Wavelet package decomposition

From: Françoise

Date: 9 Apr, 2012 16:40:18

Message: 4 of 6

Ok, I tried to reconstruct the signal from several nodes by adding the different reconstructed signals for each node. I'm not sure if that is correct, so please correct me if I'm wrong.

I reconstructed seven different signals, each limited in a specific frequency band. So far, nothing out of the ordinary. However, when I plot the power spectrum of each band, I find that some of the high frequency signals are not limited as they are supposed to be. The low-frequency signals are, though.

Why is this happening? And more importantly, how can I fix it? I'm running out of ideas.

Thanks in advance.

Subject: Wavelet package decomposition

From: Frank

Date: 9 Apr, 2012 17:39:26

Message: 5 of 6

On Apr 9, 11:40 am, "Françoise " <Akaban...@gmail.com> wrote:
> Ok, I tried to reconstruct the signal from several nodes by adding the different reconstructed signals for each node. I'm not sure if that is correct, so please correct me if I'm wrong.
>
> I reconstructed seven different signals, each limited in a specific frequency band. So far, nothing out of the ordinary. However, when I plot the power spectrum of each band, I find that some of the high frequency signals are not limited as they are supposed to be. The low-frequency signals are, though.
>
> Why is this happening? And more importantly, how can I fix it? I'm running out of ideas.
>
> Thanks in advance.

I believe that adding the reconstructed signals from the different
nodes is correct. However, I'm not totally sure about that.
Unfortunately you are getting beyond my knowledge of wavelets. Sorry I
couldn't provide any help.

Frank

Subject: Wavelet package decomposition

From: Françoise

Date: 10 Apr, 2012 14:51:11

Message: 6 of 6

Frank <fbleahy@yahoo.com> wrote in message <3bded6b6-8828-4174-9bac-f5d43dbf1809@x5g2000pbl.googlegroups.com>...
> On Apr 9, 11:40 am, "Françoise " <Akaban...@gmail.com> wrote:
> > Ok, I tried to reconstruct the signal from several nodes by adding the different reconstructed signals for each node. I'm not sure if that is correct, so please correct me if I'm wrong.
> >
> > I reconstructed seven different signals, each limited in a specific frequency band. So far, nothing out of the ordinary. However, when I plot the power spectrum of each band, I find that some of the high frequency signals are not limited as they are supposed to be. The low-frequency signals are, though.
> >
> > Why is this happening? And more importantly, how can I fix it? I'm running out of ideas.
> >
> > Thanks in advance.
>
> I believe that adding the reconstructed signals from the different
> nodes is correct. However, I'm not totally sure about that.
> Unfortunately you are getting beyond my knowledge of wavelets. Sorry I
> couldn't provide any help.
>
> Frank

Thanks for your help, Frank.

Anyone else can help me with this?

Tags for this Thread

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us