Learn R Programming

fdasrvf (version 2.3.6)

curve_srvf_align: Align Curves

Description

Aligns a collection of curves using the elastic square-root velocity (srvf) framework. If the curves are describing multidimensional functional data, then rotated == FALSE and mode == 'O'

Usage

curve_srvf_align(
  beta,
  mode = "O",
  rotated = TRUE,
  scale = TRUE,
  lambda = 0,
  maxit = 20,
  ms = "mean",
  parallel = TRUE
)

Value

An object of class fdacurve which is a list with the following components:

  • mu: mean srvf

  • beta: centered curves

  • betamean: mean or median curve

  • betan: aligned curves

  • qn: aligned srvfs

  • type: string indicating whether mean or median is returned

  • v: shooting vectors

  • q: array of srvfs

  • gam: array of warping functions

  • cent: centers of original curves

  • len: length of curves

  • len_q: length of srvfs

  • mean_scale: mean length

  • mean_scale_q: mean length srvf

  • E: energy

  • qun: cost function

Arguments

beta

Array of sizes \(n \times T \times N\) for \(N\) curves of dimension \(n\) evaluated on a grid of \(T\) points

mode

Open ("O") or Closed ("C") curves

rotated

Optimize over rotation (default = TRUE)

scale

scale curves to unit length (default = TRUE)

lambda

A numeric value specifying the elasticity. Defaults to 0.0.

maxit

maximum number of iterations

ms

string defining whether the Karcher mean ("mean") or Karcher median ("median") is returned (default = "mean")

parallel

A boolean specifying whether to run calculations in parallel. Defaults to TRUE.

References

Srivastava, A., Klassen, E., Joshi, S., Jermyn, I., (2011). Shape analysis of elastic curves in euclidean spaces. Pattern Analysis and Machine Intelligence, IEEE Transactions on 33 (7), 1415-1428.

Examples

Run this code
data("mpeg7")
# note: use more shapes and iterations, small for speed
out = curve_srvf_align(beta[,,1,1:2],maxit=2,parallel=FALSE)

Run the code above in your browser using DataLab