Foros - Stratos

Programadores => Programación gráfica => Mensaje iniciado por: josette en 23 de Marzo de 2006, 11:02:33 AM

Título: Bspline Curve Fitting
Publicado por: josette en 23 de Marzo de 2006, 11:02:33 AM
    Busco informacion de como aproximar un contorno de pixeles mediante una BSpline. Tengo un pdf titulado "Aproximacion de contornos mediante b-splines cubicos", pero no se exactamente como plantear el sistema de ecuaciones. Alguien me echa una mano?
Título: Bspline Curve Fitting
Publicado por: Pogacha en 23 de Marzo de 2006, 12:04:30 PM
 Lo que quieres es teniendo una fijura en un mapa de bits encontrar su silueta representada por una curva?
Busca "Metodo de los cuadrados minimos".
En ingles no se como se llama, pero es el metodo optimo y es un ene-cubo si mal no lo recuerdo.
Lo que hace el metodo es que metes todos los puntos del contorno en una matriz y haciendo un jueguito te da los coeficientes de una curva parametrizada de grado ene donde los cuadrados de las distancias entre cada punto y la curva son los minimos, donde puedes reducir quitando puntos o bajando el grado.
Por bezier o simplemente por curvas de interpolación cubica es facil, la clave es parametrizar.
Tomas 4 puntos y dices x = F(t) y y = G(t),  armas el sistema de ecuaciones haciendo cada ecuación un polinomio de grado 2 que pasa por 3 puntos, encuentras los coeficientes para los 3 primeros y luego para los 3 ultimos y asignas a cada segmento ( conexion entre dos puntos ) la interpolación lineal entre estas dos curvas. Descartas  puntos cuando el coeficiente cuadratico es < a tu Epsilon.

Saludos.
Título: Bspline Curve Fitting
Publicado por: josette en 24 de Marzo de 2006, 03:31:08 PM
 He encontrado una pagina que trata sobre este tema y demás hay mucho codigo fuente (uoh) !!!

http://autotrace.sourceforge.net/index.html

Aunque no lo he destripado, espero tener suerte.

Espero que sirva de ayuda para quien le interese este tema.