Compressed Sensing and GPUs: Two Complimentary Revolutions ? Igor Carron http://nuit-blanche.blogspot.com GPUCamp Dec. 6th, 2008 Intro • • • • Compressed Sensing: What is it ? Why is it revolutionary ? Why use.
Download ReportTranscript Compressed Sensing and GPUs: Two Complimentary Revolutions ? Igor Carron http://nuit-blanche.blogspot.com GPUCamp Dec. 6th, 2008 Intro • • • • Compressed Sensing: What is it ? Why is it revolutionary ? Why use.
Compressed Sensing and GPUs: Two Complimentary Revolutions ? Igor Carron http://nuit-blanche.blogspot.com GPUCamp Dec. 6th, 2008 Intro • • • • Compressed Sensing: What is it ? Why is it revolutionary ? Why use GPUs ? The Future • Appendices • References Compressed Sensing: What is it ? • The George Costanza “do the opposite” sampling scheme ! • First Publications: 2004, David Donoho, Emmanuel Candes, Justin Romberg, Terence Tao (Fields Medal 2006) Compressed Sensing (CS): What is it ? • Un signal can be: – – – – A voice recording (1D) An image (2-D) An image with 100,000 colors / spectral bands (3D) A movie with 100,000 colors (5D)….. • CS = A New Sampling method where signal acquisition and compression are performed at the same time. An example Other examples [2] An example: How does it work ? Superposition of several views on one Focal Plane Array [9] An example: How does it work ? Disambiguation is the result of a technique based on CS [9] An example of CS measurement [8] Usual Photography Approach: pinhole Camera, Lens… CS An example of CS measurement (cont.) • One notices three elements: – CS, as implemented here, is an indirect image acquisition technique. – One needs a reconstruction step in order to transform CS data into understandable images. – The size of the CS data (before reconstruction is smaller than the initial size of the image. A Second Example CS Camera at Rice University [1] A Second Example (cont.) • http://www.youtube.com/watch?v=xvIHHK _X3B8 • Check an acquisition and reconstruction at 3 min and 30 seconds into the video. Why is it Revolutionary ? • Today: One takes 5 MP images. Power is expanded on acquiring this image and then is further expanded on compressing it into a 300 KB JPEG image. Most information is thrown out. • CS: 1.5MB of information are acquired. That’s it! Why is it Revolutionary ? • Compression and Acquisition are performed simultaneously. – Power required is reduced. Less need for memory. – Useful for data of large dimension where no compressionm scheme is know to exist. – Sub-sampling compared to traditional sampling methods. • Data are naturally encrypted. • Allow for new hardware development (with new trade-offs). • Data are “eternal”. The Big Picture Why use GPUs ? CS Acquisition • Acquisition is generally performed in some analog fashion. – Low cost in power and – near optimal compression – See examples of hardware being developed in the appendix. • There may be case where GPUs can be indispensable: Adaptive CS. CS Reconstruction • Principal bottleneck! • Different types of reconstruction algorithms are being developed. The methods improve every months. • Reconstruction of large images is still too slow. • CS reconstruction of signals larger than dimension 2 will probably required specific processor in the near term. CS Reconstruction • UCLA GPU/Multicore [5] • “…This algorithm has been especially designed to take benefit of current parallel many-core architectures and achieves noticeable speedups. Besides, it is easy to implement on these architecture. To validate our approach, we proposed implementations on various current high-end platforms, such as vectorized multicore CPU, GPU and Cell. Pros and cons of both platforms and implementations have been discussed…” CS Reconstruction • University of Calgary GPU solver [6] “….fast GPU implementation of the MP algorithm, based on the recently released NVIDIA CUDA API and CUBLAS library. The results show that the GPU version is substantially faster (up to 31 times) than the highly optimized CPU version based on CBLAS (GNU Scientific Library)…” CS Reconstruction • Graz University of Technology GPU solver [7] “…The drawback of these algorithms is their long reconstruction time which makes it impossible to use them in clinical practice. This study demonstrates that these optimization problems can be solved on modern graphic processing units (GPUs), with computation times that allow real time imaging…” The Future • Utilization of GPUs in CS acquisition maybe of interest in specific domains ? Adaptive Acquisition ? • GPUs should be used for CS reconstruction problems in a variety of domains. • Possibility of performing object recognition directly from CS measurements (no need for CS reconstructions). GPU will need to perform comparison between sets of CS measurements and libraries and dictionaries... The Future • It unravels under our own eyes! • For more information: – Rice University Repository http://www.dsp.ece.rice.edu/cs/cscamera/ – CS: The Big Picture http://igorcarron.googlepages.com/cs – Nuit Blanche Blog http://nuit-blanche.blogspot.com Appendices CS Acquisition: Examples • CS acquisition can be embodied in different technologies • Several examples are featured at: http://igorcarron.googlepages.com/compress edsensinghardware Different Technology Readiness Levels (TRL) 1D A2I converters (Rice/Caltech/U Michigan) [22] 2D CS Camera at Rice University [1] Single Pixel Illumination camera (Rice, U of Arizona) [3] Georgia Tech Transform Imager [10] Georgia Tech Random Convolution Imager [11] EPFL CMOS Imager [12] 3D CS Hyperspectral Imager at Duke University [14] Columbia CS light for 3D participating media [15] MIT Random Lens Imager [16] HyperGeoCam – Texas A&M [17] • Some times, the measurement hardware are the same but their operations is more exotic. IRM (Stanford) [18] Seismic (University of British Columbia, CA) [19] Traditional way Compressive Sensing Way Ground Penetrating Radar (ITB, Indonesia) [20] • There are also many existing systems that are implementing CS without knowing it. – Coded Aperture – Computational Photography – …. References • [1] Compressive Imaging: A New Single Pixel Camera • [2] Camera Culture MIT. • [3] Pawan K. Baheti and Mark A. Neifeld, Feature-specific structured imaging • [5] Alexandre Borghi, Jerome Darbon, Sylvain Peyronnet, Tony F. Chan and Stanley Osher , A Simple Compressive Sensing Algorithm for Parallel Many-Core Architectures • [6] Fast GPU Implementation of Sparse Signal Recovery from Random Projections, M. Andrecut • [7] Real Time Elimination of Undersampling Artifacts in CE MRA using Variational Denoising on Graphics Hardware, Florian Knoll, Markus Unger, Franz Ebner, Rudolf Stollberger • [8] Compressive coded aperture superresolution image reconstruction, Roummel F. Marcia and Rebecca M. Willett • [9] Fast disambiguation of superimposed images for increased field of view, Roummel F. Marcia, Changsoon Kim, Jungsang Kim, David Brady, and Rebecca M. Willett References • • • • • • • • • • • [10] Transform Imager [11] Justin Romberg, Architectures for Compressive Sampling [12] CMOS Compressed Imaging by Random Convolution, Laurent Jacques, Pierre Vandergheynst, Alexandre Bibet, Vahid Majidzadeh, Alexandre Schmid, Yusuf Leblebici. [14] Coded Aperture Snapshot Spectral Imaging (CASSI) [15] Compressive Structured Light for Recovering Inhomogeneous Participating Media [16] Random Lens Imaging Rob Fergus, Antonio Torralba, and William T. Freeman [17] HyperGeocam [18] Michael Lustig [19] SLIM/UBC, Felix Herrmann, Yogi Erlangga and Tim Lin : Compressive sampling meets seismic imaging [20] : A Compressive SFCW-GPR System, Andriyan Suksmono, Endon Bharata, A. Andaya Lestari, A. Yarovoy, and L.P. Ligthart. [22] A2I website