Английская Википедия:Fréchet distance

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Short description In mathematics, the Fréchet distance is a measure of similarity between curves that takes into account the location and ordering of the points along the curves. It is named after Maurice Fréchet.

Intuitive definition

Imagine a person traversing a finite curved path while walking their dog on a leash, with the dog traversing a separate finite curved path. Each can vary their speed to keep slack in the leash, but neither can move backwards. The Fréchet distance between the two curves is the length of the shortest leash sufficient for both to traverse their separate paths from start to finish. Note that the definition is symmetric with respect to the two curves—the Fréchet distance would be the same if the dog were walking its owner.

Formal definition

Let <math>S</math> be a metric space. A curve <math>A</math> in <math>S</math> is a continuous map from the unit interval into <math>S</math>, i.e., <math>A : [0,1] \rightarrow S</math>. A reparameterization <math>\alpha</math> of <math>[0,1]</math> is a continuous, non-decreasing, surjection <math>\alpha: [0,1] \rightarrow [0,1]</math>.

Let <math>A</math> and <math>B</math> be two given curves in <math>S</math>. Then, the Fréchet distance between <math>A</math> and <math>B</math> is defined as the infimum over all reparameterizations <math>\alpha</math> and <math>\beta</math> of <math>[0,1]</math> of the maximum over all <math>t \in [0,1]</math> of the distance in <math>S</math> between <math>A(\alpha(t))</math> and <math>B(\beta(t))</math>. In mathematical notation, the Fréchet distance <math>F(A,B)</math> is

<math>F(A,B) = \inf_{\alpha, \beta}\,\,\max_{t \in [0,1]} \,\, \biggl\{d \Bigl( A\bigl(\alpha(t)\bigr), \, B\bigl(\beta(t)\bigr) \Bigr) \biggr\}</math>

where <math>d</math> is the distance function of <math>S</math>.

Informally, we can think of the parameter <math>t</math> as "time". Then, <math>A(\alpha(t))</math> is the position of the dog and <math>B(\beta(t))</math> is the position of the dog's owner at time <math>t</math> (or vice versa). The length of the leash between them at time <math>t</math> is the distance between <math>A(\alpha(t))</math> and <math>B(\beta(t))</math>. Taking the infimum over all possible reparametrizations of <math>[0,1]</math> corresponds to choosing the walk along the given paths where the maximum leash length is minimized. The restriction that <math>\alpha</math> and <math>\beta</math> be non-decreasing means that neither the dog nor its owner can backtrack.

The Fréchet metric takes into account the flow of the two curves because the pairs of points whose distance contributes to the Fréchet distance sweep continuously along their respective curves. This makes the Fréchet distance a better measure of similarity for curves than alternatives, such as the Hausdorff distance, for arbitrary point sets. It is possible for two curves to have small Hausdorff distance but large Fréchet distance.

The Fréchet distance and its variants find application in several problems, from morphing[1] and handwriting recognition[2] to protein structure alignment.[3] Alt and Godau[4] were the first to describe a polynomial-time algorithm to compute the Fréchet distance between two polygonal curves in Euclidean space, based on the principle of parametric search. The running time of their algorithm is <math>O(mn \cdot \log(mn))</math> for two polygonal curves with m and n segments.

The free-space diagram

example of a free-space diagram
Free-space diagram of the red and the blue curve. In contrast to the definition in the text, which uses the parameter interval [0,1] for both curves, the curves are parameterized by arc length in this example.

An important tool for calculating the Fréchet distance of two curves is the free-space diagram, which was introduced by Alt and Godau.[4] The free-space diagram between two curves for a given distance threshold ε is a two-dimensional region in the parameter space that consist of all point pairs on the two curves at distance at most ε:

<math>D_\varepsilon(A,B) := \bigl\{ (\alpha,\beta)\in[0,1]^2 \mathbin{\big|} d( A(\alpha), B(\beta))\le\varepsilon \bigr\} </math>

The Fréchet distance <math>F(A,B)</math> is at most ε if and only if the free-space diagram <math>D_\varepsilon(A,B)</math> contains a path from the lower left corner to the upper right corner, which is monotone both in the horizontal and in the vertical direction.

As a distance between probability distributions (the FID score)

Шаблон:MainШаблон:See also In addition to measuring the distances between curves, the Fréchet distance can also be used to measure the difference between probability distributions.

For two multivariate Gaussian distributions with means <math>\mu_X</math> and <math>\mu_Y</math> and covariance matrices <math>\Sigma_X</math> and <math>\Sigma_Y</math>, the Fréchet distance between these distributions is[5]

<math>d^2 =|\mu_X-\mu_Y|^2+\operatorname{tr}(\Sigma_X+\Sigma_Y-2(\Sigma_X\Sigma_Y)^{1/2})</math>.

This distance is the basis for the Fréchet inception distance (FID) that is used to compare images produced by a generative adversarial network with the real images that were used for training.

Variants

The weak Fréchet distance is a variant of the classical Fréchet distance without the requirement that the endpoints move monotonically along their respective curves — the dog and its owner are allowed to backtrack to keep the leash between them short. Alt and Godau[4] describe a simpler algorithm to compute the weak Fréchet distance between polygonal curves, based on computing minimax paths in an associated grid graph.

The discrete Fréchet distance, also called the coupling distance, is an approximation of the Fréchet metric for polygonal curves, defined by Eiter and Mannila.[6] The discrete Fréchet distance considers only positions of the leash where its endpoints are located at vertices of the two polygonal curves and never in the interior of an edge. This special structure allows the discrete Fréchet distance to be computed in polynomial time by an easy dynamic programming algorithm.

When the two curves are embedded in a metric space other than Euclidean space, such as a polyhedral terrain or some Euclidean space with obstacles, the distance between two points on the curves is most naturally defined as the length of the shortest path between them. The leash is required to be a geodesic joining its endpoints. The resulting metric between curves is called the geodesic Fréchet distance.[1][7][8] Cook and Wenk[7] describe a polynomial-time algorithm to compute the geodesic Fréchet distance between two polygonal curves in a simple polygon.

If we further require that the leash must move continuously in the ambient metric space, then we obtain the notion of the homotopic Fréchet distance[9] between two curves. The leash cannot switch discontinuously from one position to another — in particular, the leash cannot jump over obstacles, and can sweep over a mountain on a terrain only if it is long enough. The motion of the leash describes a homotopy between the two curves. Chambers et al.[9] describe a polynomial-time algorithm to compute the homotopic Fréchet distance between polygonal curves in the Euclidean plane with obstacles.

Examples

The Fréchet distance between two concentric circles of radius <math>r_1</math> and <math>r_2</math> respectively is <math>|r_1 - r_2|.</math> The longest leash is required when the owner stands still and the dog travels to the opposite side of the circle (<math>r_1 + 2*r_2</math>), and the shortest leash when both owner and dog walk at a constant angular velocity around the circle (<math>|r_1 - r_2|</math>).

Applications

Fréchet distance has been used to study visual hierarchy, a graphic design principle.[10]

See also

References

Шаблон:Reflist

Further reading