code  /  papers  /  links


The central idea in compressive sampling is that the number of samples
we need to capture a signal depends primarily on its structural content,
rather than its bandwidth.

As a concrete example, suppose that f is a discrete signal (of length
256) composed of 16 complex sinusoids of whose frequencies, phases,
and amplitudes are unknown.  As such, the discrete Fourier transform
(DFT) of f has 16 nonzero components (illustrated below).

Fourier transform of f

How many time-domain samples do we need
to capture f?  As there are no restriction on the frequencies in
f, it is not at all bandlimited; any of the 256 components of the DFT
can be nonzero.  The Shannon/Nyquist theory then says that to recover
this signal (via linear "sinc” interpolation), we will need to
have all 256 samples in the time domain.

Now suppose that we are given only 80 samples.  Below is a plot
of f in the time domain, the observed samples are in red.

f in the time domain

Of course, we will not be able to “fill
in” the missing samples using sinc interpolation (or any other kind
of linear method). 
But since we know that the signal we wish to recover is “sparse”, we
can take a different approach to the problem.  Given these 80 observed
samples, the set of length-256 signals that have samples that match
our observations is an affine subspace of dimension 256-80=176. 
From the candidate signals in this set, we choose the one whose DFT
has minimum L1 norm; that is, the sum of the magnitudes of the Fourier
transform is the smallest.  In doing this, we are able to recover
the signal exactly!

Recovered signal, time domain

Recovered signal, frequency domain

In general, if there are B sinusoids in
the signal, we will be able to recover using L1 minimization from on the
order of B log N samples (see the “Robust
Uncertainty Principles…” paper
 for a full exposition).

The framework is easily extended to more general types of measurements
(in place of time-domain samples), and more general types of sparsity
(rather than sparisty in the frequency domain).   Suppose that
instead of taking K samples in the time domain, we project the signal
onto a randomly chosen K dimensional subspace.  Then if f is B sparse
is a known orthobasis,  and K is on the order of B log N, f can be
recovered without error by solving an l1 minimization problem.

Here is an example.  The 1 megapixel image below has a perfectly
sparse wavelet exapansion; it is a superposition of 25,000 Daubechies-8

Instead of observing this image directly, say we took 100,000 “random
measurements”, i.e. we are given the projection onto a 96,000 subspace. 
Then we look for the image whose wavelet transform has the smallest L1
norm that has the same projection onto this subspace (the measurements
agree with what we have observed).  The result is below; as we can
see the image has been reconstructed perfectly. 

The lesson here is that the number of measurements needed to acquire this
image is not dictated by the resolution (1 million pixels), but rather
by its inherent complexity (25k non-zero wavelets).

In the “real world”, signals and images are not perfectly sparse, and
there is always some degree of uncertainty in the measurements.  
Fortunately, the recovery procedure can be made robust to these types
of perturbations (see the stability
and statistical
papers for details).

Another example in imaging is given below: we observe 25,000 random measurements
of the 65,536 pixel image below, and quantize them to 1 digit (that is,
one of 10 predefined levels).  The recovery (which is performed by
solving a relaxed recovery problem, see stability for details)
has an error that is on the same order as the quantization error. 
Despite being very nonlinear, the recovery procedure is exceptionally

65k pixel image
25k random measurements
quantized measurements
recovered image

The L1-MAGIC  package includes MATLAB code that solves these (and
other) recovery problems.