Description Usage Arguments Details Value Author References See Also Examples
Compute Frechet distance between two trajectories.
1 2 3 | distFrechet(Px,Py,Qx, Qy, timeScale=0.1, FrechetSumOrMax = "sum")
distFrechetR(Px,Py,Qx, Qy, timeScale=0.1, FrechetSumOrMax = "sum")
distFrechetRec(Px,Py,Qx, Qy, timeScale=0.1, FrechetSumOrMax = "sum")
|
Px |
[vector(numeric)] Times (abscisse) of the first trajectories. |
Py |
[vector(numeric)] Values of the first trajectories. |
Qx |
[vector(numeric)] Times of the second trajectories. |
Qy |
[vector(numeric)] Values of the second trajectories. |
timeScale |
[ |
FrechetSumOrMax |
[ |
Given two curve P and Q, Frechet distance between P and Q is define as
inf_{a,b} max_{t} d(P(a(t)),Q(b(t)))
. It's computation is a
NP-complex problem. When P and Q are trajectories (discrete curve), the
problem is polynomial.
The Frechet distance can also be define using a sum instead of a max:
inf_{a,b} sum_{t} d(P(a(t)),Q(b(t)))
The function distFrechet
is C compiled,
the function distFrechetR
is in R,
the function distFrechetRec
is in recursive (the slowest) in R.
A numeric value.
Christophe Genolini
1. UMR U1027, INSERM, Universit<e9> Paul Sabatier / Toulouse III / France
2. CeRSM, EA 2931, UFR STAPS, Universit<e9> de Paris Ouest-Nanterre-La D<e9>fense / Nanterre / France
[1] Thomas Eiter & Heikki Mannila:
"Computing Discrete Fr<b4>echet Distance"
[2] C. Genolini and B. Falissard
"KmL: k-means for longitudinal data"
Computational Statistics, vol 25(2), pp 317-328, 2010
[3] C. Genolini and B. Falissard
"KmL: A package to cluster longitudinal data"
Computer Methods and Programs in Biomedicine, 104, pp e112-121, 2011
distTraj
1 2 3 4 5 6 7 8 9 10 11 12 13 | Px <- 1:20
Py <- dnorm(1:20,12,2)
Qx <- 1:20
Qy <- dnorm(1:20,8,2)
### Function from Eiter and Mannila compiled in C
system.time(cat("\n",distFrechet(Px,Py,Qx,Qy)))
### Same thing in R
system.time(cat("\n",distFrechetR(Px,Py,Qx,Qy)))
### Frechet using sum instead of max.
distFrechet(Px,Py,Qx,Qy,FrechetSumOrMax="sum")
|
Loading required package: class
Loading required package: longitudinalData
Loading required package: clv
Loading required package: cluster
Loading required package: rgl
Loading required package: misc3d
Loading required package: kml
Loading required package: lattice
Attaching package: 'kmlShape'
The following object is masked from 'package:longitudinalData':
distFrechet
Warning messages:
1: In rgl.init(initValue, onlyNULL) : RGL: unable to open X11 display
2: 'rgl_init' failed, running with rgl.useNULL = TRUE
3: .onUnload failed in unloadNamespace() for 'rgl', details:
call: fun(...)
error: object 'rgl_quit' not found
1.344959 user system elapsed
0.001 0.000 0.000
1.344959 user system elapsed
0.016 0.000 0.016
[1] 1.344959
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.