|
|
About ::
TODO ::
Blog ::
RSS ::
Old blog ::
Projects ::
GIT ::
Gallery ::
Notes
Sat, 19 May 2007
Bezier curves.
For those, who wonders (like me) about vector transformations,
I can recommend to start learning Bezier curves math. It is pretty simple,
but too powerful to believe. For example I always wondered how to approximate
a circle or ellipse, using Bezier curves and derivatives it becomes quite usual task
of approximation.
This is only because of two things, first one is that Bezier curves are parametrized
curves and not functions in usual presentation (but superposition
of basis set of usual functions called Bernstein polynomials), so it can have several results
for the same argument (with different parameter value). Second feature
of this curves is that they are fully defined via its control points,
so scaling and other affine transformations become trivial.
Building a result for given inputs is a bit more complex than with usual functions,
but using de Casteljau's algorithm it is not a big problem too.
I will use b-splines to approximate database letters and then transform
them to match requested image to solve captcha
problems. Probably I will create a math ground for such comparison,
but maybe I will just limit myself with simple 'brute force'.
Even if it will fail, I will create a eye-candy library to create vectorized
images (pretty simple, but that is enough for now).
Stay tuned, maybe tomorrow I will have something to play with, since I devoted the whole
day reading various math theories behind Bezier curves and b-spline approximation,
so I have some (quite small of course, but yet powerful) ground to start with.
/devel/math/bezier :: Link / Comments (0)
Please solve this captcha to be allowed to post (need to reload in a minute): 11 - 8
|