L1-magic : Recovery of Sparse Signals via Convex programming by Emmanuel Candès and Justin Romberg Caltech October 2005 Compressive Sensing Tutorial PART 2 Svetlana Avramov-Zamurovic January 22, 2009. Definitions X desired vector (N elements), K sparse Y measurements (M elements), K<M<N Ψ orthonormal basis (NxN), X= Ψs Φ measurement matrix (MxN) L1 norm= sum(abs(all vector X elements)) Linear programming Find sparse solution that satisfies measurements, Y= ΦX and minimizes the L1 norm of X MATLAB programs http://sparselab.stanford.edu/ Gabriel Peyré CNRS, CEREMADE, Université Paris Dauphine. http://www.ceremade.dauphine.fr/~peyre/ Justin Romberg School of Electrical and Computer Engineering Georgia Tech http://users.ece.gatech.edu/~justin/Justin_R omberg.html Min-L1 with equality constraints The program P1 min x 1 subject to Ax b also known as basis persuit , finds the vector with smallest l1 norm x 1 : xi i that explaines the observations b. When x, A, b have real-valued entries, (P1) can be recast as an LP. % load random states for repeatable experiments rand_state=1;randn_state=1;rand('state', rand_state);randn('state', randn_state); N = 512;% signal length T = 20;% number of spikes in the signal K = 120;% number of observations to make x = zeros(N,1);q = randperm(N);x(q(1:T)) = sign(randn(T,1)); % random +/- 1 signal% %SAZ original signal to be recovered disp('Creating measurment matrix...');A = randn(K,N);A = orth(A')';disp('Done.'); y = A*x;% observations SAZ measurements x0 = A'*y;% initial guess = min energy xp = l1eq_pd(x0, A, [], y, 1e-3); % solve the LP http://www.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf Original vector size 512 points but only 20 non zero elements, 120 measurements taken Recovered signal 1 N=512 K=20 M=120 0.5 0 -0.5 -1 0 100 200 300 400 500 600 0 100 200 300 400 500 600 1 original signal 0.5 0 -0.5 -1 Original vector size 512 points but only 20 non zero elements, 80 measurements taken 1.5 N=512 K=20 M=80 Recovered signal 1 0.5 0 -0.5 -1 0 100 200 300 400 500 600 0 100 200 300 400 500 600 1 original signal 0.5 0 -0.5 -1