extract-methods: Methods to extract information from objects of class...

extract-methodsR Documentation

Methods to extract information from objects of class "MPMData", "ESTATICSModel", "sESTATICSModel", "qMaps", "IRdata", "IRfluid" and "IRmixed".

Description

The extract-methods extract and/or compute specified statistics from object of class "MPMData", "ESTATICSModel", "sESTATICSModel", "qMaps", "IRdata", "IRfluid" and "IRmixed". The [-methods can be used to reduce objects of class "MPMData", "ESTATICSModel", "sESTATICSModel", "qMaps", "IRdata", "IRfluid" and "IRmixed" such that they contain a subcube of data and results.

Usage

## S3 method for class 'MPMData'
extract(x, what, ...)
## S3 method for class 'ESTATICSModel'
extract(x, what, ...)
## S3 method for class 'sESTATICSModel'
extract(x, what, ...)
## S3 method for class 'qMaps'
extract(x, what, ...)
## S3 method for class 'IRdata'
extract(x, what, ...)
## S3 method for class 'IRfluid'
extract(x, what, ...)
## S3 method for class 'IRmixed'
extract(x, what, ...)
## S3 method for class 'MPMData'
x[i, j, k, ...]
## S3 method for class 'ESTATICSModel'
x[i, j, k, ...]
## S3 method for class 'sESTATICSModel'
x[i, j, k, ...]
## S3 method for class 'qMaps'
x[i, j, k, ...]
## S3 method for class 'IRdata'
x[i, j, k, tind, ...]
## S3 method for class 'IRfluid'
x[i, j, k, ...]
## S3 method for class 'IRmixed'
x[i, j, k, ...]

Arguments

x

object of class "MPMData", "ESTATICSModel", "sESTATICSModel" or "qMaps".

what

Character vector of of names of statistics to extract. See Methods Section for details.

i

index vector for first spatial dimension

j

index vector for second spatial dimension

k

index vector for third spatial dimension

tind

index vector for inversion times

...

additional parameters, currently unused.

Value

A list with components carrying the names of the options specified in argument what.

Methods

class(x) = "ANY"

Returns a warning for extract

class(x) = "MPMData"

Depending the occurence of names in what a list with the specified components is returned

  • ddata: mpm data

  • sdim: dimension of image cube

  • nFiles: number of images / image files

  • t1Files: character - filenames of t1Files

  • pdFiles: character - filenames of pdFiles

  • mtFiles: character - filenames of mtFiles

  • model: Number of the ESTATICS model that can be used

  • maskFile: character - filenames of maskFile

  • mask: mask

  • TR: vector of TR values

  • TE: vector of TE values

  • FA: vector of FA values

class(x) = "ESTATICSModel"

Depending the occurence of names in what a list with the specified components is returned

  • modelCoeff: Estimated parameter maps

  • invCov: map of inverse covariance matrices

  • rsigma: map of residual standard deviations

  • isConv: convergence indicator map

  • isThresh: logical map indicating where R2star==maxR2star

  • sdim: image dimension

  • nFiles: number of images

  • t1Files: vector of T1 filenames

  • pdFiles: vector of PD filenames

  • mtFiles: vector of MT filenames

  • model: model used (depends on specification of MT files)

  • maskFile: filename of brain mask

  • mask: brain mask

  • sigma: standard deviation sigma

  • L: effective number of receiver coils L

  • TR: TR values

  • TE: TE values

  • FA: Flip angles (FA)

  • TEScale: TEScale

  • dataScale: dataScale

class(x) = "sESTATICSModel"

Depending the occurence of names in what a list with the specified components is returned

  • modelCoeff: Estimated parameter maps

  • invCov: map of inverse covariance matrices

  • rsigma: map of residual standard deviations

  • isConv: convergence indicator map

  • bi: Sum of weights map from AWS/PAWS

  • smoothPar: smooting parameters used in AWS/PAWS

  • smoothedData: smoothed mpmData

  • isThresh: logical map indicating where R2star==maxR2star

  • sdim: image dimension

  • nFiles: number of images

  • t1Files: vector of T1 filenames

  • pdFiles: vector of PD filenames

  • mtFiles: vector of MT filenames

  • model: model used (depends on specification of MT files)

  • maskFile: filename of brain mask

  • mask: brain mask

  • sigma: sigma

  • L: effective number of receiver coils L

  • TR: TR values

  • TE: TE values

  • FA: Flip angles (FA)

  • TEScale: TEScale

  • dataScale: dataScale

class(x) = "qMaps"

Depending the occurence of names in what a list with the specified components is returned

  • b1Map: b1Map

  • R1: Estimated map of R1

  • R2star: Estimated map of R2star

  • PD: Estimated map of PD

  • MT: Estimated map of delta (if MT-series was used)

  • model: Type of ESTATICS model used

  • t1Files: filenames T1

  • mtFiles: filenames MT

  • pdFiles: filenames PD

  • mask: brainmask

Author(s)

Karsten Tabelow tabelow@wias-berlin.de
J\"org Polzehl polzehl@wias-berlin.de

Examples

dataDir <- system.file("extdata",package="qMRI")
#
#  set file names for T1w, MTw and PDw images
#
t1Names <- paste0("t1w_",1:8,".nii.gz")
mtNames <- paste0("mtw_",1:6,".nii.gz")
pdNames <- paste0("pdw_",1:8,".nii.gz")
t1Files <- file.path(dataDir, t1Names)
mtFiles <- file.path(dataDir, mtNames)
pdFiles <- file.path(dataDir, pdNames)
#
#  file names of mask and B1 field map
#
B1File <- file.path(dataDir, "B1map.nii.gz")
maskFile <- file.path(dataDir, "mask0.nii.gz")
#
#  Acquisition parameters (TE, TR, Flip Angle) for T1w, MTw and PDw images
#
TE <- c(2.3, 4.6, 6.9, 9.2, 11.5, 13.8, 16.1, 18.4,
        2.3, 4.6, 6.9, 9.2, 11.5, 13.8,
        2.3, 4.6, 6.9, 9.2, 11.5, 13.8, 16.1, 18.4)
TR <- rep(25, 22)
FA <- c(rep(21, 8), rep(6, 6), rep(6, 8))
#
#   read MPM example data
#
library(qMRI)
mpm <- readMPMData(t1Files, pdFiles, mtFiles,
                   maskFile, TR = TR, TE = TE,
                   FA = FA, verbose = FALSE)
#
#  display some data
#
data <- extract(mpm,"ddata")
if(require(adimpro)){
rimage.options(ylab = "z")
oldpar <- par(mfrow=c(1,3),mar=c(3,3,3,1),mgp=c(2,1,0))
on.exit(par(oldpar))
rimage(data[1,,11,], main="first T1w image")
rimage(data[9,,11,], main="first MTw image")
rimage(data[15,,11,], main="first PDw image")
}
#
#  Estimate Parameters in the ESTATICS model
#
modelMPM <- estimateESTATICS(mpm, method = "NLR")
#
#  Parameter maps and residual standard deviation
#
z <- extract(modelMPM,c("rsigma","modelCoeff"))
if(require(adimpro)){
rimage.options(ylab = "z")
par(mfrow=c(1,5),mar=c(3,3,3,1),mgp=c(2,1,0))
rimage(z$modelCoeff[1,,11,], main="S_T1")
rimage(z$modelCoeff[2,,11,], main="S_MT")
rimage(z$modelCoeff[3,,11,], main="S_PD")
rimage(z$modelCoeff[4,,11,], main="R2star")
rimage(z$rsigma[,11,], main="Residual sd")
}
#
#  Compute quantitative maps (R1, R2star, PD, MT)
#
qMRIMaps <- calculateQI(modelMPM,
                        b1File = B1File,
                        TR2 = 3.4)
#
#  resulting quantitative maps for central coronal slice
#
if(require(adimpro)){
rimage.options(zquantiles=c(.01,.99), ylab="z")
par(mfrow=c(2,4),mar=c(3,3,3,1),mgp=c(2,1,0))
nmaps <- c("R1","R2star","PD","MT")
qmap <- extract(qMRIMaps,nmaps)
for (i in 1:4) rimage(qmap[[i]][,11,],main=nmaps[i])
}
par(oldpar)

WIAS-BERLIN/qMRI documentation built on March 28, 2024, 5:33 a.m.