Correct 4D time-series data for motion.

antsMotionCalculation(
  img,
  mask = NULL,
  fixed = NULL,
  moreaccurate = 1,
  txtype = "Affine",
  framewise = 1,
  verbose = FALSE,
  num_threads = 1,
  seed = NULL,
  ...
)

Arguments

img

antsImage, usually 4D.

mask

mask for image (3D). If not provided, estimated from data.

fixed

Fixed image to register all timepoints to. If not provided, mean image is used.

moreaccurate

strategy desired for motion correction. One of 0 (test) 1 (high-res only), 2 (multi-level inter-subject), 3 (FIXME), or a special method for intraSubjectBOLD.

txtype

Type of transform. One of "Affine", "Rigid", or "SyN".

framewise

Calculate framewise displacement?

verbose

enables verbose output.

num_threads

will execute Sys.setenv(ITK_GLOBAL_DEFAULT_NUMBER_OF_THREADS = num_threads) before running to attempt a more reproducible result. See https://github.com/ANTsX/ANTs/wiki/antsRegistration-reproducibility-issues for discussion. If NULL, will not set anything.

seed

will execute Sys.setenv(ANTS_RANDOM_SEED = seed) before running to attempt a more reproducible result. See https://github.com/ANTsX/ANTs/wiki/antsRegistration-reproducibility-issues for discussion. If NULL, will not set anything.

...

additional argument to .motion_correction

Value

List containing:

  • moco_img Motion corrected time-series image.

  • moco_params Data frame of translation parameters.

  • moco_avg_img Average motion-corrected image.

  • moco_mask Mask used to calculate framewise displacement.

  • tsDisplacement Time-series displacement image.

  • fd Time-series mean and max displacements.

  • dvars DVARS, derivative of frame-wise intensity changes.

Examples

if (FALSE) { set.seed(120) simimg<-makeImage(rep(5,4), rnorm(5^4)) # for real data, use simimg <- antsImageRead(getANTsRData('pcasl'), 4) antsMotionCalculation(simimg,moreaccurate=0) }