SENSE: sensitivity-encoding MRI Matlab tools |
|||
| These Matlab routines include demonstration and individual Matlab functions to simulate and reconstruction SENSE imaging. | |||
| Codes | |||
| Inside Martinos Center: | |||
| If you are inside Martinos Center in MGH, you can add the following path to your starup.m file to access all the routines. | |||
addpath('~fhlin/matlab/toolbox/fhlin_toolbox'); |
|||
| If you are outside Martinos Center in MGH, please download the codes to your local computer. | |||
| pmri_gfactor.m | calculate the g-factor map | ||
| pmri_reg.m | estimate the regularization parameter in SENSE reconstruction. | ||
| pmri_prep.m | preparation for 1D SENSE reconstruction | ||
| pmri_core.m | implement 1D SENSE reconstruction | ||
| implement 1D/2D SENSE reconstruction using conjugated graident method | |||
| pmri_poly_sensitivity.m | estimate coil sensitivy profile using polynomial fitting | ||
| pmri_sample_vector.m | create sampling vector in 1D SENSE data acquisition | ||
| pmri_grappa_prep.m | preparation for 1D GRAPPA reconstruction | ||
| pmri_grappa_core.m | implement 1D GRAPPA reconstruction | ||
| pmri_alias_matrix.m | create Fourier aliasing matrix based on a k-space sampling pattern. | ||
| Examples | |||
| 1D GRAPPA reconstruction : | |||
| Date: | Mar-22-2005 | ||
Purpose: |
1D GRAPPA imaging reconstruction example |
||
| Description:: | 1D GRAPPA reconstruction from an 8-channel head array coil using least-square matrix inversion. The data were simulated from the combination of B1 fields by Biot-Savart's law and anatomical features from MPRAGE sequences. This example simulated 3-fold acceleration in A/P phase-encoding direction. 4 auto-calibration scan (ACS) lines are used to estimate the GRAPPA reconstruction coefficient using 4-by-3 block, which means 4 (+/-2) phase encoding data and 3 (-1, 0, +1) frequency encoding data were used to fit ACS lines. |
||
| Code: | code: grappa_8ch_example.m data: sim_8ch_data.mat |
||
| 1D SENSE reconstruction : | |||
| Date: | Mar-14-2005 | ||
Purpose: |
1D SENSE imaging reconstruction example |
||
| Description:: | 1D SENSE reconstruction from an 8-channel head array coil using least-square matrix inversion. The data were simulated from the combination of B1 fields by Biot-Savart's law and anatomical features from MPRAGE sequences. Both SENSE reconstructed image as well as the g-factor maps are calculated. |
||
| Code: | code: sense_8ch_example.m data: sim_8ch_data.mat |
||
2X aliased images from 8 channels (left); the full-FOV SENSE reconstructed image (middle); the magnitude of coil sensitiivty profiles estimated from the 8-channel array (right) |
|||
| 2D SENSE reconstruction using conjugated gradient: | |||
| Date: | Mar-14-2005 | ||
Purpose: |
2D SENSE imaging reconstruction example |
||
| Description:: | 2D SENSE reconstruction (2X in L-R and 2X in A-P) from an 8-channel head array coil conjugated gradient iterative solver. The data were from MPRAGE sequences on a 3T scanner. |
||
| Code: | code: sense2_8ch_cg.m data: mprage_8ch_slice1.mat |
||
The aliased image from 8 channels (left); the k-space sampling points (right) |
|||
The combined aliased image from all channels (2X in L-R and 2X in A-P) (left); the SENSE reconstructed image using conjugated graident method after 10 iterations (right). |
|||
| Simple SENSE reconstruction : | |||
| Date: | Jan-20-2005 | ||
Purpose: |
Simple demonstration of SENSE imaging reconstruction. |
||
| Original author: | Dr. Nan-Kuei Chen | ||
| Description:: | The data was acquired from 4-channel array coil using EPI sequence (2-shot, matrix: 64X64, TE: 50 ms) at a 1.5T scanner. The code estimates the coil sensitivity profiles directly from the image with anatomical contrast by low-pass smoothing. Subsequently, k-space data were decimated to simulate 2.0-fold acceleration (R=2.0). Finally, using least-squares estimate, the reconstructed full-FOV spin density image is obtained. | ||
| Code: | code: sense_recon_easy.m data: sense_recon_easy.mat |
||
| Example: | sense_recon_easy; |
||
| SENSE aliasing matrix: | |||
| Date: | Jan-20-2005 | ||
Purpose: |
Generate the aliasing matrix to relate full-FOV image and accelerated image. |
||
| Description:: | Using specfied sampling vector to generate a 2D aliasing matrix. The sampling vector is a vector of n-entries of either 0 or 1, where 0 indicates no k-space line acquisition and 1 indicates k-space line is acquired in the accelerated scan. For example, a sampling vector of [0 1 0 1 0 1 0 1 0 1] indicate the 2-fold acceleration with 8 phase encoding lines. The aliasing matrix is calculated based on Fourier imaging. *Note* The center of k-space is at the center of the sampling vector, similar to traditional k-space MRI convention, but different from Matlab defaults. |
||
| Code: | Matlab code: sense_alias_matrix.m |
||
| Example: | s=zeros(1,64); %simulate 64 phase-encoding lines |
||
| SENSE g-factor calculation: | |||
| Date: | Jan-21-2005 | ||
Purpose: |
Calculate the g-factor maps of the SENSE acceleration |
||
| Description:: | G-factor is the metric to quantify the amplificaiton of noise power in reconstructing SENSE accelerated image. The detail was presented in Pruessmann's 1999 Magn. Reson. Med. paper. In theory, g-factor is the pixel-by-pixel ratio of the image variance between the SENSE reconstructed image and un-accelerated image. And g-factor depends on: (1) the k-space data trajectory (2) coil sensitivit profiles (3) noise covariance matrix of the array coil. |
||
| Code: | Matlab code: sense_gfactor.m |
||
| Example: | This example file (calc_gfactor_8ch.m) demonstrates how to use sense_gfactor.m to calculate g-factor maps for 8-channel head array data at acceleration rate (R) of 2.0, 3.0, and 4.0. | ||
|
|||
| G-factor maps calculated from 8-channel array with imaging mask to illustrate the spatial distribution of g-factors within a spherical saline phantom. | |||
| Data | |||
| epi_8ch_time1.mat (0.5 MB) | 3T (SIEMENS Trio) saline phantom EPI data from 8-channel head array coil. Imaging parameters: TE = 40 ms, TR = 1000 ms, slice = 1, matrix = 64 x 64, slice thickness = 5 mm, FOV = 200 mm, measurement = 1). | ||
| epi_8ch_time100.mat (5.2 MB) | 3T (SIEMENS Trio) saline phantom EPI data from 8-channel head array coil. Imaging parameters: TE = 40 ms, TR = 1000 ms, slice = 1, matrix = 64 x 64, slice thickness = 5 mm, FOV = 200 mm, measurement = 100). | ||
| mprage_8ch_slice1.mat (8.4 MB) | 3T (SIEMENS Trio) human MPRAGE (3D Flash with IR prep.) data from 8-channel head array coil. Imaging parameters: TE = 3.45 ms, TR = 2530 ms, TI = 1100 ms, Flip angle = 7 deg., slice = 1, matrix = 256 x 256, slice thickness = 1. 33 mm, FOV = 256 mm, measurement = 1). | ||
| mprage_8ch_slice20.mat (167.8 MB) | 3T (SIEMENS Trio) human MPRAGE (3D Flash with IR prep.) data from 8-channel head array coil. Imaging parameters: TE = 3.45 ms, TR = 2530 ms, TI = 1100 ms, Flip angle = 7 deg., slice = 20, matrix = 256 x 256, slice thickness = 1. 33 mm, FOV = 256 mm, measurement = 1). | ||
| sim_8ch_data.mat (4,2 MB) | Simulated B1 coil maps and anatomical feature from a 3T (SIEMENS Trio) human using an 8-channel head array coil. The B1 coil maps were calculated using Biot-Savart's law. The imaging sequence was MPRAGE (3D Flash with IR prep.) Imaging parameters: TE = 3.45 ms, TR = 2530 ms, TI = 1100 ms, Flip angle = 7 deg., slice = 20, matrix = 256 x 256, slice thickness = 1. 33 mm, FOV = 256 mm, measurement = 1). | ||