Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

measure smoothness of curve

Posted on 2007-11-25
12
Medium Priority
?
4,236 Views
Last Modified: 2012-06-21
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.
0
Comment
Question by:allelopath
  • 5
  • 3
  • 3
  • +1
12 Comments
 
LVL 27

Expert Comment

by:aburr
ID: 20348101
How do you define "smoothness"?
0
 
LVL 27

Expert Comment

by:aburr
ID: 20348110
One definition is that there be no discontinuities, but that definition will not apply to your curve of discrete points
0
 
LVL 27

Assisted Solution

by:aburr
aburr earned 600 total points
ID: 20348151
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
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 5

Accepted Solution

by:
mandelia earned 800 total points
ID: 20348267
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
 
LVL 85

Expert Comment

by:ozo
ID: 20348836
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
 
LVL 1

Author Comment

by:allelopath
ID: 20354193
How about this?
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
 
LVL 85

Assisted Solution

by:ozo
ozo earned 600 total points
ID: 20354658
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
 
LVL 27

Expert Comment

by:aburr
ID: 20356096
“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
 
LVL 27

Expert Comment

by:aburr
ID: 20356101
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
 
LVL 5

Expert Comment

by:mandelia
ID: 20356667
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
 
LVL 5

Expert Comment

by:mandelia
ID: 20356673
Well there is another way to measure smoothness.
Touch the curves feel them and you will know the smoothest of them all.
0
 
LVL 85

Expert Comment

by:ozo
ID: 20357428
> Discrete Points are not lines.
Yes, but the question stated
> I have a curve defined by (x,y) points
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article seeks to propel the full implementation of geothermal power plants in Mexico as a renewable energy source.
Aerodynamic noise is the cause of the majority of the noise produced by helicopters. The inordinate amount of noise helicopters produce is a major problem in the both a military and civilian setting. To remedy this problem the use of an aerogel coat…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
Suggested Courses

916 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question