Learn R Programming

fda.usc (version 2.1.0)

metric.hausdorff: Compute the Hausdorff distances between two curves.

Description

Hausdorff distance is the greatest of all the distances from a point in one curve to the closest point in the other curve (been closest the euclidean distance).

Usage

metric.hausdorff(fdata1, fdata2 = fdata1)

Arguments

fdata1

Curves 1 of fdata class. The dimension of fdata1 object is (n1 x m), where n1 is the number of points observed in t coordinates with lenght m.

fdata2

Curves 2 of fdata class. The dimension of fdata2 object is (n2 x m), where n2 is the number of points observed in t coordinates with lenght m.

Author

Manuel Febrero-Bande, Manuel Oviedo de la Fuente manuel.oviedo@udc.es

Details

Let \(G(X)=\left\{ (t,X(t))\in R^2 \right\}\) and \(G(Y)=\left\{(t,Y(t))\in R^2\right\}\) be two graphs of the considered curves \(X\) and \(Y\) respectively, the Hausdorff distance \(d_H(X, Y)\) is defined as,

$$ d_H(X,Y)=max\left\{ sup_{x\in G(X)} inf_{y\in G(Y)} d_2(x,y), sup_{y\in G(Y)} inf_{x\in G(X)}d_2(x,y)\right\},$$ where \(d_2(x,y)\) is the euclidean distance, see metric.lp.

Examples

Run this code
if (FALSE) {   
data(poblenou)
nox<-poblenou$nox[1:6]
# Hausdorff vs maximum distance
out1<-metric.hausdorff(nox)       
out2<-metric.lp(nox,lp=0) 
out1
out2
par(mfrow=c(1,3))
plot(nox)
plot(hclust(as.dist(out1)))
plot(hclust(as.dist(out2)))
}   

Run the code above in your browser using DataLab