Compressive Sensing
Total Page:16
File Type:pdf, Size:1020Kb
Compressive Sensing Mike Wakin 1 Introduction: Filling in the blanks 2 3 4 5 6 7 Two Key Ingredients 1. Model: “How is the signal supposed to behave?” 2. Algorithm: “How can I fill in the blanks so that the signal obeys the model?” 8 Data‐Rich Environments • The Big Data Era – Social networks – Scientific instrumentation – Hyperspectral imaging – Video 9 Challenges • Storage, transmission, processing • Conventional solution: collect all of the data then compress it • New solution: collect less data 10 Data‐Poor Environments • Limitations: – size, power, weight • embedded systems – cost • sensing hardware • seismic surveys – time • magnetic resonance imaging – communications bandwidth • wireless sensor networks • Make the most of the data we can collect 11 Compressive Sensing (CS) in a Nutshell Using signal models to fill in the blanks Topics: 1. What are signal models? 2. What do we mean by “blanks”? 3. How can we fill in the blanks? 4. How can we understand this process? 5. What (else) can we do with these ideas? 12 1. What are signal models? 13 Sinusoids • Sinusoids are fundamental to signal processing. • Many real‐world phenomena travel in waves or are generated by harmonic motion. – electromagnetic waves – acoustic waves – seismic waves • Many real‐world systems propagate sinusoids in a natural way: a sinusoidal input produces a sinusoidal output of exactly the same frequency. 14 Fourier Transform (1807) = + + + … + 15 Example Audio Signal 16 Frequency Spectrum 17 Bandlimited Signal Model bandwidth: highest effective frequency 18 Features of the Model • Expressed in terms of a transform: Fourier transform • Variable complexity: higher bandwidths allow for broader classes of signals but at the expense of greater complexity 19 Shannon/Nyquist Sampling Theorem (1920s‐1940s) • Theorem: Any bandlimited signal can be perfectly reconstructed from its samples, provided that the sampling frequency is at least twice the signal’s bandwidth. • Sampling at the information level: – sampling frequency is proportional to bandwidth – as model complexity increases, must take more samples (per second) 20 Example Signal 21 Spectrum bandwidth: 100Hz 22 “Nyquist‐Rate” Samples 1/200 sec 23 Filling in the Blanks 24 Smooth Interpolation 25 Implications • For bandlimited signals it is possible to perfectly fill in the blanks between adjacent samples. • There are many potential ways to “connect the dots” but only one of these will have the correct bandwidth. • All of the others are known as aliases –they will all have higher bandwidths. 26 An Alias 27 Alias Spectrum 28 Digital Signal Processing (DSP) Revolution • Sampling theorem – sample signals without loss of information and process them on a computer • Advances in computing – Moore’s law • Algorithms such as the Fast Fourier Transform – first discovered by Gauss (1805) – rediscovered by Cooley and Tukey (1965) 29 From Bandlimitedness to Sparsity • Time‐frequency analysis frequency content may change over time • Sinusoids go on forever …… • Short‐time Fourier transform • Wigner–Ville distribution (1932) • Gabor transform (1946) 30 Recall: Audio Signal 31 Frequency Spectrum 32 Spectrogram 33 Wavelet Analysis (1980s‐1990s) [Morlet, Grossman, Meyer, Daubechies, Mallat, …] Wavelet analysis –multiscale –local –computationally efficient 34 Wavelet Coefficients • Which parts of a signal have high frequency behavior? N‐pixel image N wavelet coefficients 35 Wavelets as Edge Detectors 36 Wavelets as Building Blocks = ++ ‐ ‐ + + … + + + + + … 37 Sparsity in Wavelet Coefficients few large coefficients (just “K”) = ++ ‐ ‐ + + … + + + + + … many small coefficients (N coefficients in total) 38 Wavelet Advantage • Wavelets capture the energy of many natural signals more economically than sinusoids • Example signal: 39 Compression: Wavelet vs. Fourier 40 Sparsity in General • Sparsity can exist in many domains – time (spike trains) – frequency (sparse spectrum) – wavelets (piecewise smooth signals) – curvelets (piecewise smooth images) • The 1990s and 2000s witnessed many new Xlets – shearlets, bandelets, vaguelettes, contourlets, chirplets, ridgelets, beamlets, brushlets, wedgelets, platelets, surflets, seislets, … 41 The Curvelet Transform (1999) [Candès and Donoho] •Sparse representation for piecewise smooth images with smooth discontinuities 42 Curvelets and the Wave Equation [Candès and Demanet] propagation of a curvelet sparse sum of curvelets at nearby scales, orientations, locations 43 Dictionary Learning • Sparse transforms can also be learned from collections of training data • Example algorithm: K‐SVD (2006) [Aharon et al.] • Demonstration: image patches 44 Learned Dictionary 45 Compression Performance 46 Compression Performance 47 Implications of Sparsity • When we sample a signal (say to obtain N samples or pixels), there may be some residual structure in those samples. • This could permit us to further compress the samples. • Or… we could reduce the number of samples we collect, and just fill in the blanks later. 48 2. What do we mean by “blanks”? 49 New Ways of Sampling • Recall the two ingredients: 1. Model: “How is the signal supposed to behave?” 2. Algorithm: “How can I fill in the blanks so that the signal obeys the model?” • Now, we will suppose that our signal is sparse in some particular transform. • We must be careful about how we “measure” the signal so that we don’t miss anything important. 50 Don’t • Don’t just take uniform samples more slowly. • Aliasing becomes a risk –there will be more than one way to fill in the blanks using a sparse signal. 51 Example Signal with Sparse Spectrum Nyquist‐rate samples 52 Sparse Spectrum 53 Uniform Samples (5x Sub‐Nyquist) uniform sub‐Nyquist samples 54 Uniform Samples (5x Sub‐Nyquist) uniform sub‐Nyquist samples 55 Alias with Sparse Spectrum 56 Original Sparse Spectrum 57 Sparse Spectrum of the Alias 58 Do • Do take measurements that are “incoherent” with the sparse structure (we will explain). • This ensures that there is only one way to fill in the blanks using a signal that is sparse. • Incoherence is often achieved using: (1) non‐uniform samples or (2) generic linear measurements along with some amount of randomness. 59 Non‐uniform Sampling Nyquist‐rate samples non‐uniform samples 60 Common Approach: Sub‐sample Nyquist Grid Sample/retain only a random subset of the Nyquist samples 61 Example: Non‐uniform Sampler [with Northrop Grumman, Caltech, Georgia Tech] • Underclock a standard ADC to capture spectrally sparse signals • Prototype system: ‐ captures 1.2GHz+ bandwidth (800MHz to 2GHz) with 400MHz ADC underclocked to 236MHz (10x sub‐Nyquist) ‐ up to 100MHz total occupied spectrum 62 Generic Linear Measurements Nyquist‐rate samples (don’t record these directly) Generic linear measurements 63 Generic Linear Measurements Nyquist‐rate samples (don’t record these directly) y(1) = 3.2 (pixel 1) 2.7 (pixel 2) + ∗ − ∗ ··· y(2) = 8.1 (pixel 1) + 0.3 (pixel 2) + Generic linear − ∗ ∗ ··· . measurements . y(M)=4.2 (pixel 1) + 1.7 (pixel 2) + ∗ ∗ ··· 64 Then What? • Filling in the blanks means reconstructing the original N Nyquist‐rate samples from the measurements. y(1) = 3.2 (pixel 1) 2.7 (pixel 2) + ∗ − ∗ ··· y(2) = 8.1 (pixel 1) + 0.3 (pixel 2) + − ∗ ∗ ··· . y(M)=4.2 (pixel 1) + 1.7 (pixel 2) + ∗ ∗ ··· 65 How Many Measurements? • N: number of conventional Nyquist‐rate samples • K: sparsity level in a particular transform domain • Sufficient number of incoherent measurements M ≈ K log N • Sampling at the information level: – sampling frequency is proportional to sparsity – as model complexity increases, must take more measurements 66 Random Modulation Pre‐Integrator (RMPI) [with Northrop Grumman, Caltech, Georgia Tech] • RMPI receiver ‐ four parallel “random demodulator” channels ‐ effective instantaneous bandwidth spanning 100MHz—2.5GHz ‐ 385 MHz measurement rate (13x sub‐Nyquist) • Goal: identify radar pulse descriptor words (PDWs) RMPI receiver discrete, low‐rate, radar pulses (analog) information‐carrying measurements 67 RMPI Architecture 68 Single‐Pixel Camera [Baraniuk and Kelly, et al.] single photon detector random pattern on DMD array 69 Single‐Pixel Camera –Results N = 4096 pixels M = 1600 measurements (40%) true color low‐light imaging 256 x 256 image with 10:1 compression 70 Data‐Poor Situations in the Wild • Incomplete measurements arise naturally – missing/corrupted sample streams – missing seismic traces – medical imaging • Can try to use sparse models to fill in the blanks, even if there was nothing random about the sampling/measurement process. 71 Medical Imaging Space domain Fourier coefficients Sampling pattern 256x256 256x256 71% undersampled Min. TV, 34.23dB Backproj., 29.00dB [Candès, Romberg] 72 Contrast‐enhanced 3D angiography [Lustig, Donoho, Pauly] 73 3. How can we fill in the blanks? 74 New Ways of Processing Samples • Recall the two ingredients: 1. Model: “How is the signal supposed to behave?” 2. Algorithm: “How can I fill in the blanks so that the signal obeys the model?” • We suppose that our signal is sparse in some particular transform (e.g., Fourier or wavelets). • We must fill in the blanks so that the signal obeys this sparse model. 75 Don’t • Don’t use smooth interpolation to fill in the blanks between samples. • This will fail to recover high‐frequency features. 76 Recall: Signal with Sparse Spectrum Nyquist‐rate samples 77 Sparse Spectrum 78 Non‐Uniform Samples (5x Sub‐Nyquist) non‐uniform samples 79 Non‐Uniform Samples (5x Sub‐Nyquist) non‐uniform samples 80 Smooth Interpolation 81 Spectrum of Smooth Interpolation