Rank: 942 based on 73 downloads (last 30 days) and 4 files submitted
photo

Stephen Becker

E-mail
Company/University
University of Paris 6

Personal Profile:
Professional Interests:
optimization, signal processing

 

Watch this Author's files

 

Files Posted by Stephen View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
07 Oct 2011 Screenshot CoSaMP and OMP for sparse recovery Orthogonal Matching Pursuit (OMP) and Compressive Sampling Matched Pursuit (CoSaMP). Author: Stephen Becker compressed sensing, sparse, omp, compressive sampling, cosamp, sparse recovery 63 0
29 Feb 2008 idctt type II Inverse DCT (i.e. type III DCT) Author: Stephen Becker spectral analysis, idct dct fft persiste... 4 0
26 Feb 2008 dctt type II DCT, improvement to matlab's dct Author: Stephen Becker spectral analysis, dct fft persistent sa... 3 0
25 Feb 2008 persistent fft fft via a radix2 algorithm Author: Stephen Becker spectral analysis, radix2 recursive fft ... 3 2
Comments and Ratings by Stephen View all
Updated File Comments Rating
18 Jul 2011 Superresolution Demo A simple superresolution demo based on POCS. Author: Samuel Cheng

Using R2010a, it doesn't work for me. Clicking most of the buttons (such as the 1x, 2x ...) result in error messages, such as:

??? Reference to non-existent field 'start_pos'.

and

??? Reference to non-existent field 'images'.

To be more concrete, I can generate the latter error message by:
(1) running "sr_gui"
(2) clicking the "register images" button

I'm not sure if this is because another button needs to be clicked first; if that is the case, then maybe a useful warning message can be generated.

17 Oct 2009 Non Convex Compressed Sensing for Non Gaussian Noise optimization of the form min ||x||_p subject to ||y-Ax||_q<e Author: Angshul Majumdar

Matlab updated their LSQR function around 2008. The old version was buggy, as you probably know (since you recommended a different version of LSQR), but anyone with a newer release of Matlab (e.g. 2009 and more recent) can use their existing LSQR function.
-Stephen

11 Aug 2009 Fast Walsh-Hadamard Transform The function implement the sequency(Walsh) ordered fast Walsh-Hadamard transform. Author: Gylson Thomas

As of R2008b, Matlab's Signal Processing toolbox has the functions "fwht" and "ifwht" for the Fast Walsh-Hadamard (aka Hadamard) Transform, and you can choose among three different orderings. This builtin code doesn't work on very large vectors though, whereas I know it is possible to operate on these large vectors because a friend gave me some mex code that does just that. I haven't compared with the file posted here.

13 Mar 2009 Fast sparse matrix vector product sparse matrix vector product Author: Darren Engwirda

There's actually a very important point here. Because of how Matlab stores a sparse matrix (see Tim Davis' book, or read the help on, say, mxGetIc), and because a major bottleneck for these computations is loading data into the CPU's cache, it is MUCH faster to store a matrix by row, instead of column, when doing matrix-vector multiples.

In Matlab, this is easy to remedy: simply take the transpose.

So, this cool trick can save you time. If you want to do this repeatedly:
>> y = A*b
instead, do this:
>> At = A.'; % a one-time cost
>> y = At.'b

But, this trick only works on newer versions of Matlab. On, say, R2006b, a call like
>> y = At.'b
will actually calculate the transpose of At, so this is very slow!

On older versions of Matlab, it's likely that this SMVP code will really help, but it might not be as helpful on R2008, for example.

On linux, non-multithreaded R2006a, I found that SMVP took about 60% the time of Matlab's own multiply. So, good work!

Comments and Ratings on Stephen's Files View all
Updated File Comment by Comments Rating
25 Feb 2008 persistent fft fft via a radix2 algorithm Author: Stephen Becker Becker, Stephen

Duane -- good question. I saw a lot of poorly written fft code that also is MUCH slower than matlab's fft; so this is an improvement over those codes. It also demonstrates two ideas: the radix2 FFT algorithm, and why persistent variables are useful.

For example, using persistent variables in this fashion on the discrete cosine transform can yield code much faster than matlab's dct() function. I hope to post such a code once I get it into polished form.

25 Feb 2008 persistent fft fft via a radix2 algorithm Author: Stephen Becker Hanselman, Duane

If as you say "There is no advantage to using this code over the builtin fft." then why post this code? Is it simply an example of code not worth posting?

Top Tags Applied by Stephen
spectral analysis, compressed sensing, compressive sampling, cosamp, dct fft persistent sampling
Files Tagged by Stephen View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
07 Oct 2011 Screenshot CoSaMP and OMP for sparse recovery Orthogonal Matching Pursuit (OMP) and Compressive Sampling Matched Pursuit (CoSaMP). Author: Stephen Becker compressed sensing, sparse, omp, compressive sampling, cosamp, sparse recovery 63 0
29 Feb 2008 idctt type II Inverse DCT (i.e. type III DCT) Author: Stephen Becker spectral analysis, idct dct fft persiste... 4 0
26 Feb 2008 dctt type II DCT, improvement to matlab's dct Author: Stephen Becker spectral analysis, dct fft persistent sa... 3 0
25 Feb 2008 persistent fft fft via a radix2 algorithm Author: Stephen Becker spectral analysis, radix2 recursive fft ... 3 2

Contact us at files@mathworks.com