Home |
Index of Lectures |
<< Prev |
Next >> |
PDF Version of this Page |

## Curvature of curveswww.kovalevsky.de, last update: October 26, 2011 |
Let me know what you think | |

The definition of the curvature of a curveWhy are the most methods of estimating the curvature imprecise ?Numerical calculation of the derivativesOptimal numerical estimates of derivatives: The first derivativeThe second derivativeLimits of the accuracy of the curvature |

The curvature radius *R*: The limit of the radius of a circle running through three points of the curve, when the distance between
the points tends to zero. The curvature *C* = 1/*R*.

The curvature of a curve in a 2D space is defined in analytical geometry by means of derivatives of the function describing the
curve. In digital images curves are defined in a grid. The function describing a curve takes discrete values, e.g. integer values.
How can one compute derivatives of such functions ?

| Consider the definition of the first derivative of a function of a single variable: |

| What will happen, if we try to compute the value by the computer while taking dx equal to the smallest number representable in the computer ? |

An attempt to estimate the derivative of y=x^{2} as dy/dx with the smallest
possible value of Δx. | |||

Looks well | Small distortions | ||

Large distortions | Crasy values |

The reason of the errors is the limited precision of calculating the values of the function. As soon as the value Δ

The estimate of the first derivative
*E*_{1} = (*f*(*x*+Δ*x*)−*f*(*x*−Δ*x*)/
(2*Δ*x*);

The values of *f*(*x*) cannot be computed exactly; they contain a computation error of ε. We consider the values of
*f*(*x*+Δ*x*)+ε, f(*x*−Δ*x*)+ε and represent
*f*(*x*+Δ*x*) and *f*(*x*−Δ*x* by the Taylor formula.

*E*_{1}= [*f*(*x*)+*f* '(*x*)*Δ*x* +
0.5**f* "(*x*)·Δ*x*^{2}+(1/6)·*f* ^{(3)}
(*x*+*k**Δ*x*)*Δ*x*^{3}−

*f*(*x*)−*f* '(*x*)*Δ*x* +
0.5**f* "(*x*)·Δ*x*^{2}−(1/6)·*f* ^{(3)}
(*x*+*k**Δ*x*)*Δ*x*^{3}−

where *k*,*m*∈[0, 1], *F*3 is the average value of the third derivative of *f*(*x*) in the interval
(*x*−Δ*x*, *x*+Δ*x*) and *ε* is the estimate of the possible error of computing
the values of *f*(*x*).

The error *Er* of the estimation *E*_{1}:

*Er* = (1/6)**F*3*Δ*x*^{2} + ε/Δ*x*;
(1)

We find the optimal value of Δ*x* while setting the partial derivative of (1) with respect to Δ*x* equal
to 0 and receive:

optim Δ*x* = (3*ε/*F*3)^{1/3};

minimum Error = ((1/6)*3^{2/3}+3^{-1/3})*
ε^{2/3}**F*3^{1/3} ~=
1.04*ε^{2/3}**F*3^{1/3}.

We obtain in a similar way the error in estimating the second derivative of *f*(*x*), the optimal value of
Δ*x*:

optim Δ*x* = (48**ε*/*F*4)^{1/4}

and the minimum error:

minimum Error = ((1/12)*48^{1/2}+4*48^{−1/2})**ε*^{1/2}*
*F*4^{1/2} ~= 1.15*(*ε***F*4)^{1/2}.
(2)

Estimates *F*3 and *F*4< of the third and fourth derivatives are respectively:

*F*3 ≈ (*f*(*x*+2*Δ*x*)−2·*f*(*x*+Δ*x*)+2**f*(x−Δ*x*)−
*f*(*x*−2*Δ*x*) )/(2*Δ*x*^{3});

*F*4 ≈ (*f*(*x*+2*Δ*x*)−4·*f*(*x*+Δ*x*)+6**f*(*x*)−
4**f*(*x*−Δ*x*)+*f*(*x*−2*Δ*x*) )/Δ*x*^{4}.
(3)

A modest demand: the curvature error ≤10%; coordinate error ε= 0.7 pixel |

Consider a coordinate system, whose

This value corresponds to optimal Δ

For curves with smaller radii the error is >> 10%.

For instance, for

Optimal

This means that to estimate the curvature with a precision of 10% we should investigate pieces of the curve of a length of 125 pixels corresponding to an arc of 53 degrees which is too coarse.

Download:

top of page: |