QuantitativeMRI
Documentation for QuantitativeMRI.
QuantitativeMRI.MESE_EPG
QuantitativeMRI.T1maps_mp2rage
QuantitativeMRI.T1maps_mp2rage
QuantitativeMRI.T2Fit_EpgNoise
QuantitativeMRI.T2Fit_Exp
QuantitativeMRI.T2Fit_ExpNoise
QuantitativeMRI.mp2rage_T1maps
QuantitativeMRI.mp2rage_comb
QuantitativeMRI.mp2rage_lookuptable_cartesian
QuantitativeMRI.mp2rage_lookuptable_radial
QuantitativeMRI.residual_EpgNoise
QuantitativeMRI.MESE_EPG
— MethodMESE_EPG(T2,T1,delta,TE,ETL)
Calculate EPG amplitudes of echos for a standard Multi-echo Spin-echo sequence (same TE / refoc pulse along the echo train):
- T2
- T1
- delta : delta B1 [0-1]
- TE
- ETL : Echo train length
QuantitativeMRI.T1maps_mp2rage
— MethodT1maps_mp2rage(T1map::Array{T},lookUpTable::AbstractVector, T1Range::AbstractVector) where T<:Real
Generates the MP2RAGE / UNI images from the T1 maps. Compute Lookup table from MP2RAGE parameters.
keywords radial = false means that only the central echo is used to compute the signal (standard method for cartesian acquisition) If radial = true, all the echoes are sum.
Arguments
T1map::Array{T}
- lookUpTable::AbstractVector
- T1Range::AbstractVector
Returns
- MP2
- T1Range
- lookUpTable
QuantitativeMRI.T1maps_mp2rage
— MethodT1maps_MP2RAGE(T1map::Array{T},p::ParamsMP2RAGE;T1Range=1:10000,effInv = 0.96,radial=false) where T<:Real
Generates the MP2RAGE / UNI images from the T1 maps. Compute Lookup table from MP2RAGE parameters.
keywords radial = false means that only the central echo is used to compute the signal (standard method for cartesian acquisition) If radial = true, all the echoes are sum.
Arguments
T1map::Array{T}
p::ParamsMP2RAGE
Keywords
- T1Range = 1:10000
- effInv = 0.96
- radial = false
Returns
- MP2
- T1Range
- lookUpTable
QuantitativeMRI.T2Fit_EpgNoise
— MethodT2Fit_EpgNoise(ima::Array{T,4}, T1,TE,ETL,x0::Vector{Float64}) where T<:Real
Fit the relaxation parameters T2 of a Multi-Spin Multi-Echo sequence with constant $\Delta TE$ and refocusing pulse. EPG is computed with MRIReco functions. In order to compute the gaussian noise standard deviation you need to know the number of coils l
and apply the following equation :
$\sigma_g = \frac{\sigma}{\sqrt{2L}}$
Arguments
ima::Array{T,N}
: image where the echoes are in the last dimensiont::Union{Vector{<:Real},StepRange{<:Real,<:Real}}
: times vector in msT1
: T1 relaxation timeTE
: Echo TimeETL
: Echo Train Length
Keywords
Returns fitted maps with format (x,y,z, M0,T2,delta (b1), Noise)
Bibliography
Noise
- Cárdenas-Blanco A, Tejos C, Irarrazaval P, Cameron I. Noise in magnitude magnetic resonance images. Concepts Magn Reson Part A [Internet]. 2008 Nov;32A(6):409–16. Available from: http://doi.wiley.com/10.1002/cmr.a.20124
- Feng Y, He T, Gatehouse PD, Li X, Harith Alam M, Pennell DJ, et al. Improved MRI R 2 * relaxometry of iron-loaded liver with noise correction. Magn Reson Med [Internet]. 2013 Dec;70(6):1765–74. Available from: http://doi.wiley.com/10.1002/mrm.24607
EPG
- MRIReco.jl implementation
QuantitativeMRI.T2Fit_Exp
— MethodT2Fit_Exp(ima::Array{T,N},t::AbstractVector{T},p0=nothing) where {T<:Real,N}
Fit the relaxation parameters T2 with the equation : $S(t) = M_0 \exp(-\frac{t}{T2})$.
Arguments
ima::Array{T,N}
: image with dimension [x,...,t]. Last dimensions -> temporal dimensiont::AbstractVector{<:Real}
: times vector in msp0=nothing
: starting values for fit, if empty p0=[maximum(ima),30]
Keywords
removePoint::Bool=true
: remove the first point before fitting
Returns
- fit_params : parameter maps
- M₀ maps (no unit)
- T₂ maps (ms)
QuantitativeMRI.T2Fit_ExpNoise
— MethodT2Fit_ExpNoise(ima::Array{T,N},t::AbstractVector{<:Real},p0=nothing; kwargs...) where {T<:Real,N}
Fit the relaxation parameters T2 with the equation : $S(t) = \sqrt{(M_0 \exp(-\frac{t}{T2}))^2 + 2 L \sigma_g^2}$ where L est le nombre de canaux, et $\sigma_g$ le bruit gaussien sur les image
Arguments
ima::Array{T,N}
: image with dimension [x,...,t]. Last dimensions -> temporal dimensiont::AbstractVector{<:Real}
: times vector in msp0=nothing
: starting values for fit, if empty p0=[maximum(ima),30,maximum(ima)*0.1]
Keywords
removePoint::Bool=true
: remove the first point before fittingL::Int=1
: Number of coil elements
Returns
- fit_params : parameter maps
- M₀ maps (no unit)
- T₂ maps (ms)
- Noise maps (no unit)
- fit_vec : fit objects for each pixels
Bibliography
- Cárdenas-Blanco A, Tejos C, Irarrazaval P, Cameron I. Noise in magnitude magnetic resonance images. Concepts Magn Reson Part A [Internet]. 2008 Nov;32A(6):409–16. Available from: http://doi.wiley.com/10.1002/cmr.a.20124
- Feng Y, He T, Gatehouse PD, Li X, Harith Alam M, Pennell DJ, et al. Improved MRI R 2 * relaxometry of iron-loaded liver with noise correction. Magn Reson Med [Internet]. 2013 Dec;70(6):1765–74. Available from: http://doi.wiley.com/10.1002/mrm.24607
QuantitativeMRI.mp2rage_T1maps
— Methodmp2rageT1maps(imMP2::Array{T},p::ParamsMP2RAGE;T1Range=1:10000,effInv = 0.96) where T <: Real
Compute Lookup table from MP2RAGE parameters. keywords radial = false means that only the central echo is used to compute the signal (standard method for cartesian acquisition) If radial = true, all the echoes are sum.
Arguments
im_MP2::Array{T}
p::ParamsMP2RAGE
Keywords
- T1Range = 1:10000
- effInv = 0.96
- radial = false
Returns
- T1map
- T1Range
- lookUpTable
Bibliography
- Marques JP, Kober T, Krueger G, van der Zwaag W, Van de Moortele P-F, Gruetter R. MP2RAGE, a self bias-field corrected sequence for improved segmentation and T1-mapping at high field. NeuroImage 2010;49:1271–1281 doi: 10.1016/j.neuroimage.2009.10.002.
QuantitativeMRI.mp2rage_comb
— Methodmp2rage_comb(ima::Array{Complex{<:Real}})
mp2rage_comb(ima_magn::Array{<:Real},ima_phase::Array{<:Real})
Combine the image acquired at 2 differents inversion time (TI) in order to create a MP2RAGE image with the following equation. ima could be of any size but the last dimension needs to be the 2 TI.
If magnitude and phase image are passed to the function. It will combine them to create a complex image.
$\text{MP2RAGE} = Re(\frac{ima_{TI_1} \times conj(ima_{TI_2})}{|ima_{TI_1}|^2+|ima_{TI_2}|^2})$
Arguments
ima::Array{Complex{<:Real}}
: image of any dimension with TI = 2ima_magn::Array{<:Real},
: magnitude image of any dimension with TI = 2ima_phase::Array{<:Real},
: magnitude image of any dimension with TI = 2
Keywords
Returns
- MP2RAGE images
Bibliography
- Marques JP, Kober T, Krueger G, van der Zwaag W, Van de Moortele P-F, Gruetter R. MP2RAGE, a self bias-field corrected sequence for improved segmentation and T1-mapping at high field. NeuroImage 2010;49:1271–1281 doi: 10.1016/j.neuroimage.2009.10.002.
QuantitativeMRI.mp2rage_lookuptable_cartesian
— Methodmp2rage_lookuptable(p::ParamsMP2RAGE;T1Range=1:0.5:10000,effInv = 0.96)
Compute lookup table according to the MP2RAGE parameters
Arguments
p::ParamsMP2RAGE
: MP2RAGE parameters structure
Keywords
T1Range
: T1 range computedeffInv
: Inversion efficiency of the pulse
Returns
- lookUpTable (NaN .= 0)
Bibliography
- Marques JP, Kober T, Krueger G, van der Zwaag W, Van de Moortele P-F, Gruetter R. MP2RAGE, a self bias-field corrected sequence for improved segmentation and T1-mapping at high field. NeuroImage 2010;49:1271–1281 doi: 10.1016/j.neuroimage.2009.10.002.
QuantitativeMRI.mp2rage_lookuptable_radial
— Methodmp2rage_lookuptable_radial(p::ParamsMP2RAGE;T1Range=1:0.5:10000,effInv = 0.96)
Compute lookup table according to the MP2RAGE parameters summing all the echoesl (mandatory for radial acquisition)
Arguments
p::ParamsMP2RAGE
: MP2RAGE parameters structure
Keywords
T1Range
: T1 range computedeffInv
: Inversion efficiency of the pulse
Returns
- lookUpTable (NaN .= 0)
Bibliography
- Marques JP, Kober T, Krueger G, van der Zwaag W, Van de Moortele P-F, Gruetter R. MP2RAGE, a self bias-field corrected sequence for improved segmentation and T1-mapping at high field. NeuroImage 2010;49:1271–1281 doi: 10.1016/j.neuroimage.2009.10.002.
- Faller TL, Trotier AJ, Miraux S, Ribot EJ. Radial MP2RAGE sequence for rapid 3D T1 mapping of mouse abdomen: application to hepatic metastases. Eur Radiol. 2019 Nov;29(11):5844-5851. doi: 10.1007/s00330-019-06081-3. Epub 2019 Mar 19. PMID: 30888483.
QuantitativeMRI.residual_EpgNoise
— Methodresidual(x::Vector{<:Real}, ydata::Vector{<:Real},T1,TE,ETL)
x -> Vector of parameter to fit : - x[1] : M0 - x[2] : T2 - x[3] : delta - x[4] : $\sigma$