This function aligns a collection of functions using the elastic square-root velocity (srvf) framework.
multiple_align_multivariate(
beta,
mu,
mode = "O",
alignment = TRUE,
rotation = FALSE,
scale = FALSE,
lambda = 0,
ncores = 1L,
verbose = TRUE
)
Returns a fdacurve object containing:
beta
: A numeric array of shape \(L \times M \times N\) storing the
original input data.
q
: A numeric array of shape \(L \times M \times N\) storing the SRVFs
of the input data.
betan
: A numeric array of shape \(L \times M \times N\) storing the
aligned, possibly optimally rotated and optimally scaled, input data.
qn
: A numeric array of shape \(L \times M \times N\) storing the SRVFs
of the aligned, possibly optimally rotated and optimally scaled, input data.
gamma
: A numeric array of shape \(L \times M \times N\) storing the warping
functions of the aligned, possibly optimally rotated and optimally scaled, input data.
R
: A numeric array of shape \(L \times L \times N\) storing the rotation
matrices of the aligned, possibly optimally rotated and optimally scaled, input data.
betamean
: A numeric array of shape \(L \times M\) storing the Karcher
mean or median of the input data.
qmean
: A numeric array of shape \(L \times M\) storing the Karcher mean
or median of the SRVFs of the input data.
type
: A character string indicating whether the Karcher mean or median
has been returned.
E
: A numeric vector storing the energy of the Karcher mean or median at
each iteration.
qun
: A numeric vector storing the cost function of the Karcher mean or
median at each iteration.
A numeric array of shape \(L \times M \times N\) specifying an \(N\)-sample of \(L\)-dimensional functional data evaluated on a same grid of size \(M\).
array of size \(L \times M\) that f is aligned to
A character string specifying whether the input curves should be
considered open (mode == "O"
) or closed (mode == "C"
). Defaults to
"O"
.
A boolean value specifying whether the curves should be
aligned before computing the distance matrix. Defaults to TRUE
.
A boolean specifying whether the distance should be made
invariant by rotation. Defaults to TRUE
.
A boolean specifying whether the distance should be made
invariant by scaling. This is effectively achieved by making SRVFs having
unit length and switching to an appropriate metric on the sphere between
normalized SRVFs. Defaults to TRUE
.
A numeric value specifying the weight of a penalty term that
constraints the warping function to be not too far from the identity.
Defaults to 0.0
.
An integer value specifying the number of cores to use for
parallel computation. Defaults to 1L
. The maximum number of available
cores is determined by the parallel package. One core is always left
out to avoid overloading the system.
verbose printing (default TRUE)
Srivastava, A., Klassen, E., Joshi, S., Jermyn, I., (2011). Shape analysis of elastic curves in euclidean spaces. IEEE Transactions on Pattern Analysis and Machine Intelligence, 33 (7), 1415-1428.