Bayesian Compressive SensingIntroductionBayesian Compressive Sensing (BCS) is a Bayesian framework for solving the inverse problem of compressive sensing (CS). The basic BCS algorithm adopts the relevance vector machine (RVM) [Tipping & Faul, 2003], and later it is extended by marginalizing the noise variance (see the multi-task CS paper below) with improved robustness. Besides providing a Bayesian solution, the Bayesian analysis of CS, more importantly, provides a new framework that allows one to address a variety of issues that previously have not been addressed. These issues include: (i) a stopping criterion for determining when a sufficient number of CS measurements have been performed, (ii) adaptive design of the projection matrix, and (iii) simultaneous inverse of multiple related CS measurements (i.e., multi-task CS or simultaneous sparse approximation). In our most recent work, rather than assuming independence between coefficients as in the basic BCS, the tree-structured Bayesian compressive sensing (TS-BCS) exploits the statistical structure of the coefficients to reduce the number of CS measurements. Specifically, under the wavelet basis, if a parent node in a wavelet tree is zero or close to zero, with a very large probability its children nodes are also zero or close to zero. This tree structure can be readily extended to the block-DCT coefficients, so that the inferred coefficients are directly compatible with JPEG compression. The TS-BCS algorithms for wavelet and for block-DCT are implemented via a hierarchical Bayesian framework, with the tree structure incorporated naturally in the prior setting. Both MCMC-based inference and VB-based inference are implemented. The MCMC approach achieves a good reconstruction accuracy, while the VB approach requires much less computation time with a relatively small cost of reconstruction quality. Manifold based CS theory has shown that if a signal lives in a low-dimensional manifold, then the signal can be reconstructed using only a few compressed measurements. However, till now there is no practical algorithm to implement CS on manifolds. Our recent work fills the gap by employing a nonparametric mixture of factor analyzers (MFA) to learn the manifold using training data, and then analytically reconstructing testing signals with compressed measurements. We also give bounds of the required number of measurements based on the concept of block-sparsity. The proposed methodology is validated on several synthetic and real datasets. This page contains information about BCS, TS-BCS, MFA, research papers, and a code distribution that can be used for academic and/or research purposes. PapersBayesian Compressive Sensing Multi-Task Compressive Sensing Multi-Task Compressive Sensing with Dirichlet Process Priors Exploiting Structure in Wavelet-Based Bayesian Compressive Sensing Related WorkBayesian Inference and Optimal Design in the Sparse Linear Model Duke Hosted CS WorkshopCode DistributionThis is a MatLab 7.0 implementation of BCS, VB-BCS (BCS implemented via a variational Bayesian (VB) approach), TS-BCS for wavelet and for block-DCT implemented via both MCMC approach and VB approach. These codes have been designed on a Windows machine, but they should run on any Unix or Linux architecture with MatLab installed without any problems. Distribution and use of this code is subject to the following agreement: This Program is provided by Duke University and the authors as a service to the research community. It is provided without cost or restrictions, except for the User's acknowledgement that the Program is provided on an "As Is" basis and User understands that Duke University and the authors make no express or implied warranty of any kind. Duke University and the authors specifically disclaim any implied warranty or merchantability or fitness for a particular purpose, and make no representations or warranties that the Program will not infringe the intellectual property rights of others. The User agrees to indemnify and hold harmless Duke University and the authors from and against any and all liability arising out of User's use of the Program.
Many other CS code can be found at Compressive Sensing Resources. FeedbackPlease contact the corresponding authors for questions/suggestions. |