# measure smoothness of curve

How does one measure the smoothness of a curve?

I have a curve defined by (x,y) points on a Cartesian grid.
I have applied a couple different algorithms to smooth the curve.
(code written in Java fwiw)
Now I want to measure the smoothness of the curves.
LVL 1
###### Who is Participating?

Commented:
A curve is said to be smooth if it has a lesser degree of differential.

ie smoothest curve is a straight line : x = my + c
it is more smooth than a curve where dx/dy = c
which is more smooth than d2x/dy2 = c
0

Commented:
How do you define "smoothness"?
0

Commented:
One definition is that there be no discontinuities, but that definition will not apply to your curve of discrete points
0

Commented:
Presumably you have used your smoothing algorithm to produce a continuous curve. One way to check smoothness would be to create a matrix with x values being the original x values and Y values of the smoothed curve at the x value. Now sum the differences between each adjacent pair of Y values. In some sense the smoothest curve will have the smallest sum.
Of course is you could take an average of all your y values and declare your smoothed curve to be Y(x) = average. You would have a very smooth curve, which in addition has zero slope.
I doubt very much that that is what you are looking for. Hence the importance of answering my first post.
0

Commented:
If you have algorithms to smooth the curve, you might take the closeness between the original curve and the smoothed curve as a measure of smoothness.
0

Author Commented:
For each point (xi,yi), calculate the tangent line and get the slope of that line.
If the difference between the greatest and least slopes is > some value, then its not very smooth.
This involves derivates, and it may be saying what mandelia is saying in a different way.
0

Commented:
would you condider
(1,1)
(2,2)
(12,13)
(11,11)
(30,30)
(31,31)
to be just as smooth as or the same curve as
(1,1)
(6,6)
(11,11)
(16,16)
(21,21)
?
Would
(1,1)(2,2)(3,1)(4,2)
have the same smoothness as
(1,1)(2,2)(1,3)(2,4)
0

Commented:
â€œFor each point (xi,yi), calculate the tangent line and get the slope of that lineâ€

If you have a collection of discrete points, a unique tangent line to a single point does NOT exist. You can calculate a tangent line IF you use the points on either side of the point of interest.
Again define what you mean by smoothness.
0

Commented:
You must tell us what you are looking for because your points can be represented by a streight line and it is hard to imagine anything smoother.
0

Commented:
ozo:
Discrete Points are not lines.  So there is no concept of smoothness there. Lines/curves are represented by exations.

There are infinite number of ways i can draw lines connecting your points. And of varying smoothness
0

Commented:
Well there is another way to measure smoothness.
Touch the curves feel them and you will know the smoothest of them all.
0

Commented:
> Discrete Points are not lines.
Yes, but the question stated
> I have a curve defined by (x,y) points
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.