This site contains GPU codes for compressed sensing and image denoising/deblurring:
-
In compressed sensing, we implemented a simple version of the SpaRSA algorithm described by Wright, Nowak, and Figueiredo [1], using randomly chosen rows of discrete cosine transform (DCT) matrix as the sensing matrix.
-
In image denoising/deblurring, we implemented the PDHG algorithm of Zhu and Chen [2], which solves the Rudin-Osher-Fatemi formulation with total variation regularization.
All GPU codes compile into Matlab mex binaries, so users can process data and pass them to our GPU routines in Matlab.
Our GPU codes require CUDA-enabled GPUs from NVIDIA. See CUDA installation guide for details.
Authors
Paper and Software
Note: some files have to be copied from CUDA packages to build our software. Please see README file in our software for details. We will include the necessary CUDA files in future distributions.
Support
This research was supported by National Science Foundation Grants CCF-0430504 and CNS-0540147. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.
The GPUs used in this research are provided by NVIDIA under the Professor Partnership Program.
References
[1] S. J. Wright, R. D. Nowak, and M. A. T. Figueiredo, "Sparse reconstruction by separable approximation", in Proceedings of the International Conference on Acoustics, Speech, and Signal Processing, October 2008.
[2] M. Zhu and T. F. Chan, "An efficient primal-dual hybrid gradient algorithm for total variation image restoration", CAM Report 08-34, Mathematics Department, UCLA, May 2008.