This function works for either raw BOLD time-series data, ASL-based BOLD time-series data or ASL-based CBF time series data. In all 3 cases, this function performs motion-correction, factoring out motion and compcor nuisance paramters, frequency filtering and masking. The output contains the filtered time series (matrix form), the mask and a vector of temporal signal variance. Some ASL MR sequences allow network analysis of either BOLD or ASL signal. See "Implementation of Quantitative Perfusion Imaging Techniques for Functional Brain Mapping using Pulsed Arterial Spin Labeling" by Wong et al, 1997 for an overview. This function employs "surround" techniques for deriving either CBF or BOLD signal from the input ASL. This is a WIP.

filterfMRIforNetworkAnalysis(
  aslmat,
  tr,
  freqLo = 0.01,
  freqHi = 0.1,
  cbfnetwork = "ASLCBF",
  mask = NULL,
  labels = NULL,
  graphdensity = 0.5,
  seg = NULL,
  useglasso = NA,
  nuisancein = NA,
  usesvd = FALSE,
  robustcorr = FALSE
)

Arguments

aslmat

The filename to an antsr image or pointer to an antsr image

tr

The sequence's TR value , typically 3 or 4.

freqLo

The lower frequency limit, e.g. 0.01 in band-pass filter

freqHi

The higher frequency limit, e.g. 0.1 in band-pass filter

cbfnetwork

"ASLCBF" A string dictating whether to do nothing special (standard BOLD) or get CBF (ASLCBF) or BOLD (ASLBOLD) signal from ASL

mask

the mask image

labels

the label image

graphdensity

desired density

seg

a segmentation image

useglasso

use sparse inverse covariance for network estimation

nuisancein

nuisance variable data frame

usesvd

bool, to reduce nuisance variables

robustcorr

bool

Value

output is a list containing "filteredTimeSeries" "mask" "temporalvar"

or

1 – Failure

Author

Avants BB

Examples

if (FALSE) { # \dontrun{
if (!exists("fn")) fn <- getANTsRData("pcasl")
img <- antsImageRead(fn)
mask <- getMask(getAverageOfTimeSeries(img))
fmat <- timeseries2matrix(img, mask)
myres <- filterfMRIforNetworkAnalysis(fmat, tr = 4, 0.01, 0.1, cbfnetwork = "BOLD", mask = mask)
} # }