Friday, April 22, 2011

CS: Robust 1-Bit Compressive Sensing Demo

Woohoo!  Jason LaskaLaurent JacquesPetros Boufounos and Richard Baraniuk have just released a demo for the decoding of 1-bit compressed sensing measurements featured in Robust 1-Bit Compressive Sensing via Binary Stable Embeddings of Sparse Vectors. For those of you interested in 1-bit compressed sensing, most entries on the subject are here. These entries include Buzz's punch. The demo is here:

Binary Iterative Hard Thresholding (BIHT) Demo
% This small matlab demo tests the Binary Iterative Hard Thresholding algorithm
% developed in:
% "Robust 1-bit CS via binary stable embeddings"
% L. Jacques, J. Laska, P. Boufounos, and R. Baraniuk
% More precisely, using paper notations, two versions of BIHT are tested
% here on sparse signal reconstruction:
% * the standard BIHT associated to the (LASSO like) minimization of
% min || [ y o A(u) ]_- ||_1 s.t. ||u||_0 \leq K (1)
% * the (less efficient) BIHT-L2 related to
% min || [ y o A(u) ]_- ||^2_2 s.t. ||u||_0 \leq K (2)
% where y = A(x) := sign(Phi*x) are the 1-bit CS measurements of a initial
% K-sparse signal x in R^N; Phi is a MxN Gaussian Random matrix of entries
% iid drawn as N(0,1); [s]_-, equals to s if s < 0 and 0 otherwise, is applied
% component wise on vectors; "o" is the Hadamard product such that
% (u o v)_i = u_i*v_i for two vectors u and v.
% Considering the (sub) gradient of the minimized energy in (1) and (2),
% BIHT is solved through the iteration:
% x^(n+1) = H_K( x^(n) - (1/M)*Phi'*(A(x^(n)) - y) )
% while BIHT-L2 is solved through:
% x^(n+1) = H_K( x^(n) - (Y*Phi)' * [(Y*Phi*x^(n))]_-) )
% with Y = diag(y), H_K(u) the K-term thresholding keeping the K
% highest amplitude of u and zeroing the others.
% Authors: J. Laska, L. Jacques, P. Boufounos, R. Baraniuk
% April, 2011

Credit photo: @Ryan_Hoke, Funnel over Starkville near the Mississippi State University campus.

No comments: