ComputerLab: compressive sensing and application to MRI

Similar documents
EE369C: Assignment 6

G Practical Magnetic Resonance Imaging II Sackler Institute of Biomedical Sciences New York University School of Medicine. Compressed Sensing

Introduction to Topics in Machine Learning

Collaborative Sparsity and Compressive MRI

Sparse Reconstruction / Compressive Sensing

EE123 Digital Signal Processing

Compressed Sensing Reconstructions for Dynamic Contrast Enhanced MRI

Sparse sampling in MRI: From basic theory to clinical application. R. Marc Lebel, PhD Department of Electrical Engineering Department of Radiology

IMAGE DE-NOISING IN WAVELET DOMAIN

Signal Reconstruction from Sparse Representations: An Introdu. Sensing

6 credits. BMSC-GA Practical Magnetic Resonance Imaging II

Main Menu. Summary. sampled) f has a sparse representation transform domain S with. in certain. f S x, the relation becomes

ELEG Compressive Sensing and Sparse Signal Representations

Weighted-CS for reconstruction of highly under-sampled dynamic MRI sequences

Incoherent noise suppression with curvelet-domain sparsity Vishal Kumar, EOS-UBC and Felix J. Herrmann, EOS-UBC

Randomized sampling strategies

Deconvolution with curvelet-domain sparsity Vishal Kumar, EOS-UBC and Felix J. Herrmann, EOS-UBC

Blind Compressed Sensing Using Sparsifying Transforms

Iterative CT Reconstruction Using Curvelet-Based Regularization

The Benefit of Tree Sparsity in Accelerated MRI

l1 ls: A Matlab Solver for Large-Scale l 1 -Regularized Least Squares Problems

CoE4TN3 Image Processing. Wavelet and Multiresolution Processing. Image Pyramids. Image pyramids. Introduction. Multiresolution.

Measurements and Bits: Compressed Sensing meets Information Theory. Dror Baron ECE Department Rice University dsp.rice.edu/cs

Efficient MR Image Reconstruction for Compressed MR Imaging

Image Reconstruction from Multiple Sparse Representations

Compressive Sensing Applications and Demonstrations: Synthetic Aperture Radar

arxiv: v2 [physics.med-ph] 22 Jul 2014

Optimal Sampling Geometries for TV-Norm Reconstruction of fmri Data

Separate CT-Reconstruction for Orientation and Position Adaptive Wavelet Denoising

Sparse MRI: The Application of Compressed Sensing for Rapid MR Imaging

Sparse wavelet expansions for seismic tomography: Methods and algorithms

ECE 8201: Low-dimensional Signal Models for High-dimensional Data Analysis

Compressed Sensing Algorithm for Real-Time Doppler Ultrasound Image Reconstruction

29 th NATIONAL RADIO SCIENCE CONFERENCE (NRSC 2012) April 10 12, 2012, Faculty of Engineering/Cairo University, Egypt

Compressed Sensing for Rapid MR Imaging

A Relationship between the Robust Statistics Theory and Sparse Compressive Sensed Signals Reconstruction

Super-Resolution from Image Sequences A Review

FMA901F: Machine Learning Lecture 3: Linear Models for Regression. Cristian Sminchisescu

MODEL-based recovery of images from noisy and sparse. MoDL: Model Based Deep Learning Architecture for Inverse Problems

SUMMARY. These two projections are illustrated in the equation

Recovery of Piecewise Smooth Images from Few Fourier Samples

Lecture 19: November 5

Supplemental Material for Efficient MR Image Reconstruction for Compressed MR Imaging

A Novel Iterative Thresholding Algorithm for Compressed Sensing Reconstruction of Quantitative MRI Parameters from Insufficient Data

A Nuclear Norm Minimization Algorithm with Application to Five Dimensional (5D) Seismic Data Recovery

MRI reconstruction from partial k-space data by iterative stationary wavelet transform thresholding

SUMMARY. In combination with compressive sensing, a successful reconstruction

Image Denoising Based on Hybrid Fourier and Neighborhood Wavelet Coefficients Jun Cheng, Songli Lei

Sparsity and image processing

Image Denoising Using Sparse Representations

Adaptive Wavelet Image Denoising Based on the Entropy of Homogenus Regions

TERM PAPER ON The Compressive Sensing Based on Biorthogonal Wavelet Basis

Compressive Sensing Based Image Reconstruction using Wavelet Transform

APPM 2360 Project 2 Due Nov. 3 at 5:00 PM in D2L

Bilevel Sparse Coding

WAVELET BASED THRESHOLDING FOR IMAGE DENOISING IN MRI IMAGE

P-LORAKS: Low-Rank Modeling of Local k-space Neighborhoods with Parallel Imaging Data

Clustered Compressive Sensing: Application on Medical Imaging

Sparse & Redundant Representations and Their Applications in Signal and Image Processing

WAVELET USE FOR IMAGE RESTORATION

Robust image recovery via total-variation minimization

Compressive Sensing for Multimedia. Communications in Wireless Sensor Networks

Two-Parameter Selection Techniques for Projection-based Regularization Methods: Application to Partial-Fourier pmri

Applications of Image Filters

Learning Splines for Sparse Tomographic Reconstruction. Elham Sakhaee and Alireza Entezari University of Florida

Computational Aspects of MRI

High dynamic range magnetic resonance flow imaging in the abdomen

Face Recognition via Sparse Representation

Classification of Subject Motion for Improved Reconstruction of Dynamic Magnetic Resonance Imaging

Compressive Sensing MRI with Wavelet Tree Sparsity

ADAPTIVE LOW RANK AND SPARSE DECOMPOSITION OF VIDEO USING COMPRESSIVE SENSING

Compressive Sensing based image processing in TrapView pest monitoring system

Outline Introduction Problem Formulation Proposed Solution Applications Conclusion. Compressed Sensing. David L Donoho Presented by: Nitesh Shroff

Learning-Based Compressive MRI

Blind compressive sensing dynamic MRI

G009 Scale and Direction-guided Interpolation of Aliased Seismic Data in the Curvelet Domain

Fast and Efficient Sparse 2D Discrete Fourier Transform using Sparse-Graph Codes

Detection Performance of Radar Compressive Sensing in Noisy Environments

Image Deconvolution.

Signal and Image Recovery from Random Linear Measurements in Compressive Sampling

P257 Transform-domain Sparsity Regularization in Reconstruction of Channelized Facies

A Practical Study of Longitudinal Reference Based Compressed Sensing for MRI

Parametric Texture Model based on Joint Statistics

Lasso. November 14, 2017

Bayesian Nonparametric Dictionary Learning for Compressed Sensing MRI

Image Processing. Filtering. Slide 1

CS1114 Section 8: The Fourier Transform March 13th, 2013

I How does the formulation (5) serve the purpose of the composite parameterization

A fast algorithm for sparse reconstruction based on shrinkage, subspace optimization and continuation [Wen,Yin,Goldfarb,Zhang 2009]

Tomographic reconstruction: the challenge of dark information. S. Roux

Nuts & Bolts of Advanced Imaging. Image Reconstruction Parallel Imaging

Denoising of Fingerprint Images

Compressed Sensing for Electron Tomography

Robust l p -norm Singular Value Decomposition

Compressed Sensing from Several Sets of Downsampled Fourier Values using Only FFTs

arxiv: v1 [cs.cv] 12 Feb 2013

A parallel patch based algorithm for CT image denoising on the Cell Broadband Engine

Structurally Random Matrices

A fast iterative thresholding algorithm for wavelet-regularized deconvolution

An Iterative Approach for Reconstruction of Arbitrary Sparsely Sampled Magnetic Resonance Images

Transcription:

Compressive Sensing, 207-8 ComputerLab: compressive sensing and application to MRI Aline Roumy This computer lab addresses the implementation and analysis of reconstruction algorithms for compressive sensing. In particular, an application to Medical resonance imaging (MRI) is addressed. The goal is to show the connection between compressive sensing and denoising. To get an intuition, this Lab first explores synthetic D sparse signals. This computer lab employs Matlab. However you can use any other language. You will need a Fourier transform (Part 2,3 and 4)) and a Wavelet Transform (Part 4). Write a short summary on the lab activities: containing what you have learned from the ComputerLab. For instance, you can answer the questions (bold). Send the pdf file + code files via email to aline.roumy@inria.fr with subject: CS ComputerLab First download the package File4CL from the professor s webpage. workdirectory. Part Denoising sparse D signals Create a script file called tp.m that contains all instructions described below. Unzip the file in your matlab (a) Generate a ROW VECTOR (important in the following, if you use MaLab) n vector, x, with k non-zero ([:k]/k) coefficients where n = 28, k = 5, and permute them randomly. (b) Create a graph reporting the signal as a function of the position in the vector. Hint: Use the Matlab function stem. For instance, you can type: figure(); stem(x); grid on; xlabel( position ); ylabel( x ); title( original vector x ); axis([0 n -0.25.25]); (c) Add random Gaussian noise with standard deviation σ = 0.05 to the signal, y = x + N. (d) Create a graph showing the noisy signal. Hint: Use the Matlab function stem. (e) One approach for denoising consists in using regularization with Tichonov penalty to estimate the signal from noisy data. More precisely, it solves for λ 0: z 2 z y 2 2 + λ 2 z 2 2 () This optimization trades the norm of the solution with data consistency. This approach has two advantages: (i) it has a closed form solution, (ii) the estimate is a linear function of the noisy data. Show that the solution for this problem is: ˆx = + λ y (2) (f) Compute the estimate (2). Observe what happens when we plot the result for λ {0.0, 0.05, 0., 0.2}, and include the plot for λ = 0. in your report. Is the solution ˆx sparse? To get a nice looking label write: title( l_2 norm denoising ) Note that latex writing can be used in the labels of a figure!

(g) Instead of Tychonov regularization, which penalizes the l 2 norm, we will use the l norm penalized solution. More precisely, we will solve for λ 0: z 2 z y 2 2 + λ z (3) This again admits a closed form solution. Indeed, because the cost function is separable in the variables z i, we can minimize each z i separately by solving arg min zi 2 (z i y i ) 2 + λ z i. Show that the solution is y + λ if y λ ˆx = SoftT hresh(y, λ) = 0 if y < λ (4) y λ if y λ This function is often referred to as Soft-Thresholding or Shrinkage. Write a Matlab function xhat = SoftThresh(y,lambda), and called SoftThresh.m, that implements (4). Plot SoftThresh(u, λ) for u [ 0, 0] and λ = 2. Hint: use the Matlab function plot. To get nice looking labels on your curve, use: title([ SoftThresh function, \lambda= num2str(lambda)]) What is the advantage of the above command with respect to title( SoftThresh function \lambda=lambda )? Describe what happens when y is small compared to λ, and when y is large. (h) Apply SoftThresh to the noisy signal y for λ {0.0, 0.05, 0., 0.2} and include the plot of ˆx for λ = 0. in your report. Is the solution ˆx sparse? Part 2 Random Frequency Domain Sampling and Aliasing We ll now explore the connection between compressive sensing and denoising and the importance of incoherent sampling. To do so, we ll observe the effect of regular and then random sampling of the signal in the frequency domain. Create a script file called tp2.m that contains all instructions described below. (a) (same as Part ) Generate a n vector, x, with k non-zero ([:k]/k) coefficients where n = 28, k = 5, and permute them randomly. (b) (same as Part ) Create a graph reporting the signal as a function of the position in the vector. (c) compute the centered Fourier transform of the sparse signal, X = F x where F is a Fourier transform operator, dim=2; X = fftc(x,dim); (d) We measure a subset of the Fourier transform, X u = F u x where F u is a Fourier transform evaluated only at a subset of frequency domain samples. This is an underdetermined data set for which there is an infinite number of possible signals. However, we do know that the original signal is sparse, so there is hope we will be able to reconstruct it. This technique of subsampling the Fourier transform coefficients can be seen as a compressive sensing technique. Indeed, in compressive sensing, we take less measurements than dictated by the Nyquist criterion and take linear combinations of the signal. More formally, 2

we compute y = Ax, where A is a matrix with more columns than rows. F u is an example of such a compressive sensing measurement matrix. The theory of compressive sensing suggests random undersampling (seen later in the course). To see why, we will look at (non random) equispaced undersampling and compare it to random undersampling. Undersample the Fourier transform coefficients by taking 32 equispaced samples. Compute the inverse Fourier transform, filling the missing data (in the frequency domain) with zeroes, and multiply by 4 to correct for the fact that we have only /4 the samples, dim = 2; X = fftc(x,dim); Xu = zeros(,n); Xu(:4:n) = X(:4:n); xu = ifftc(xu,dim)*4; (e) Plot the real and imaginary parts of xu: real(xu) imag(xu). (Use the Matlab functions stem, hold on/off). This is the minimum l 2 norm solution. Why? Describe what you see. Will we be able to reconstruct the original signal from the result? (f) Now, undersample X by taking 32 samples at random. Fourier transform and multiply by 4 again, Xr = zeros(,n); prm = randperm(n); Xr(prm(:32)) = X(prm(:32)); xr = ifftc(xr,dim)*4; Compute the zero-filled inverse (g) Plot the real and imaginary parts of xr: real(xr) imag(xr). (Use the Matlab functions stem, hold on/off). Describe the result. Will we be able to reconstruct the signal from the result? How does this resemble the denoising problem? This is the important part of the ComputerLab: By random undersampling, we ve turned the ill-conditioned problem into a sparse signal denoising problem. However, the noise is not really noise, but incoherent aliasing that is contributed by the signal itself. Therefore, we might be able to EXACTLY recover the sparse signal. Part 3. Reconstruction from Randomly Sampled Frequency Domain Data Create a script file called tp3.m that contains all instructions described below. (a) (same as Part ) Generate a n vector, x, with k non-zero ([:k]/k) coefficients where n = 28, k = 5, and permute them randomly. Plot x. (b) (same as Part ) Create a graph reporting the signal as a function of the position in the vector. (c) (same as Part 2) Compute the Fourier transform X and undersample X by taking 32 samples at random. This leads to Y. Compute the inverse Fourier transform to get y and plot real and imaginary part of y. (d) Inspired by the denoising example (Part ), we will add an l norm penalty and solve, for λ 0 z 2 F uz y 2 2 + λ z (5) 3

In this case, z is the estimated signal, F u z is the randomly undersampled Fourier transform of the estimate, and y is the Fourier transform of the samples that we have acquired (in the Fourier domain). Now the variables are coupled through the Fourier transform, and there is no closed-form solution as in Part (g). Therefore we will solve it iteratively applying soft-thresholding and constraining data consistency. If ˆX = F ˆx, we initially set ˆX0 = y, and implement the following iteration i. Compute the inverse Fourier transform to get an estimate of the signal ˆx i = F ˆXi = F ˆXi (F is unitary). ii. Apply SoftThresh ˆx i = SoftT hresh(ˆx i, λ) in the signal domain (where the signal is sparse) iii. Compute the Fourier transform ˆX i = F ˆx i iv. Enforce data consistency in the frequency domain { ˆXi [j] if y[j] = 0 ˆX i+ [j] = y[j] otherwise (6) v. Stop after a fixed number of iteration. Another stopping criterion can be used: repeat until ˆx i+ ˆx i < ɛ (little changes of the estimate). This is a Projection Over Convex Sets (POCS) type algorithm. If you prefer, you can use any other sparse approximation algorithm, OMP etc... To implement this in matlab, start with the randomly sampled Fourier data Y, with zeros for the non-acquired data. First initialize the estimate of the Fourier transform of the signal to be X = Y. The core of the iteration can then be written as x = ifftc(x); xst = SofthThresh(x,lambda); X = fftc(xst); X = X.*(Y==0) + Y; Note that you will need to modify SoftThresh to handle complex signals { 0 if y < λ ˆx = SoftT hresh(y, λ) = y y ( y λ) if y λ (7) (e) Apply the algorithm (at least 00 iterations) to the undersampled signal with λ {0.0, 0.05, 0.} and plot the results. You can see the evolution of the intermediate result. To plot the signal at each iteration use drawnow after the plot command. (f) Make a plot of error between the true x and the estimate at each iteration x i as a function of the iteration number i, plotting the result for each of the λ s. Comment. (g) Now, repeat the iterative reconstruction for the equispaced undersampled signal. What s wrong? Part 4. Reconstruction of MR images acquired through compressive sensing Create a script file called tp4.m that contains all instructions described below. We will now evaluate the sparse approximation of an axial T2 weighted FSE image. (a) Display the MR image brain.mat. 4

load brain.mat figure(), imshow(abs(im),[]) The temporal MRI signal (i.e. the raw data) directly samples the spatial frequency domain of the MR image. In other words, the measurements are the 2D-Fourier transform of the MR image i.e. a linear combination of the MR signal. These raw data are usually referred to as k-space. Compressive sensing MRI consists in sampling the k-space at a rate lower than the Nyquist criterion. In other words, it consists in subsampling in the spatial-frequency domain. This is similar to what we studied in Part 2 and 3. The difference is that we studied D pure sparse signal and now we will study 2D not perfectly sparse signals. (b) Random subsampling in the spatial frequency domain. Two subsampling patterns are proposed: mask unif, mask vardens. The first one subsamples according to a uniform pattern whereas the second one mostly keeps low frequencies. Apply both filters to get M us, M vs with the code: M = fft2c(im); M_us = (M.*mask_vardens)./pdf_vardens; (c) Compute a linear estimate m us that does not use the fact that x is sparse. %M = fft2c(im); %M_us = (M.*mask_vardens)./pdf_vardens; im_us = ifft2c(m_us); %figure(3), imshow(abs(cat(2,im,im_us, (im_us-im)*0)),[0,]) (d) Display the images (MR image / frequency domain / reconstruction error) with the code figure(3), imshow(abs(cat(2,im,im_us, (im_us-im)*0)),[0,]) This requires the Image processing Toolbox. an alternative is: figure(3), colormap(gray), imagesc(abs(cat(2,im,im_vs, (im_vs-im)*0)),[0 ]) Analyze the error. This is the aliasing error. Does it look like white noise? For which filter? Which filter do you recommend to use to reconstruct the signal? (e) The MR image is quite sparse but is even sparser in the wavelet domain. Verify this by displaying the Wavelet transform of the brain image. To do so, we will use the WaveLab toolbox by David Donoho: W = Wavelet; im_w = W*im; figure(6), imshowwav(im_w); (f) To reconstruct the MR image, we will now perform the reconstruction of the wavelet transform of the MR image, and then compute the MR image. Write the l problem that needs to be solved (taking into account the fact that the signal is sparse in the Wavelet domain. In practice and for the POCS algorithm, this means you need to perform the SoftThresholding in the Wavelet domain, and then apply the inverse Wavelet transform. Determine the value of λ by visualizing the coefficients that are kept after thresholding. This can be done with the code: lambda=.25; imuw = W*im_u; figure(7),imshow(abs(imuw)>lambda,[]); (g) Implement POCS for the brain image and for both filters. display the reconstructed image at each iteration. Plot the error as a function of the iteration number. 5