I need to take the wavelet transform of an image (for reference, I will be using Debauchies wavelets, and the test image will either be Lenna or matlabs default woman image),and plot the coefficients in order of their magnitude. This is as an example for a document on compressive sensing I'm writing.

I'm a little unsure of of which wavelet function to use, and then what to plot to best show that many of the coefficients are zero. So far I've got:

load woman
[c,s] = wavedec2(X,2,'db1');
a = sort(c)

Which does have a nice power law distribution:

Sorted coefficients

However, I'm still a little confused and unsure if this image shows what I think it shows.

Could someone suggest an alternative?


You are on the right track but need perhaps to quantify your goal in mathematical terms.

The sorted coefficients is incidently also the inverse of the cumulative function (see for instance the eq 6 of this paper).

Then to quantify the sparsity of your signal you could

  1. compute some measure using the cumulative distribution function, such as the ratio of coefficients above a threshold (the 5% max quantile),
  2. and compare with a control condition, like doing the same process with a random signal

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.