curve_srvf_align {fdasrvf} | R Documentation |
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
)
Arguments
beta |
Array of sizes |
mode |
Open ( |
rotated |
Optimize over rotation (default = |
scale |
scale curves to unit length (default = |
lambda |
A numeric value specifying the elasticity. Defaults to |
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 |
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
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
data("mpeg7")
# note: use more shapes and iterations, small for speed
out = curve_srvf_align(beta[,,1,1:2],maxit=2,parallel=FALSE)