Regresar   Foro de marcianitos.org > Marcianeando > Cajón de sastre

 
 
Old 09-may-2007, 21:52   #1
kursh_Allegory
Editor Marciano
Matematicas

Muchos las odiais, pero son tan útiles.

Bien a mi me gustan aunque no se me dan muy bien.

Este mensaje es un reclamo para el Sr. Macarro que parece ser que controla de estas cosas (yo pensaba que se dedicaba a traficar monedas).

La historia es que tengo varios pares de puntos (sacados de unas posiciones en una fotografía).

por ejemplo.
x = 10 y = 20
x = 15 y = 30
etcetc...

En principio creo que por interpolación podría hallar la función que me permita pasarle un valor X y me de como respuesta Y.

La historia es que no se cual usar (lineal, cuadrática, logarítmica...)

El objetivo es pasar unas coordenadas de una fotografía (pixeles) a distancias reales (centimetros), por otra parte decir que la fotografía esta tomada con un cierto angulo, con lo que la distancia no es lineal (no es lo mismo tomar una foto perpendicular a un plano, donde si ves que un punto esta en mitad de la foto, en la realidad tambien estará en mitad del plano, que si la foto está tomada con un angulo (por necesidad) que si ves un punto en la foto en un punto x, en la realidad no tiene por que coincidir )


Seguro que me habeis entendido...

Alguna sugerencia? la verdad es que me gustan los numeros aunque se me den como el cUleteteeeee
   
Old 09-may-2007, 21:56   #2
Fuents
Administrador
 
Avatar de Fuents
jooooderrr... tu que te tomas por las tardes tio???

Siento no poder ayudarte... la verdad es que no me enterado de mucha cosa... solo de la relacion de numeros....
   
Old 09-may-2007, 22:00   #3
kursh_Allegory
Editor Marciano
el estrés... xdd

el proyecto final de carrerón (esta siendo largo)

estoy haciendo un robot (programandolo) y tiene qeu reconocer formas y figuras.. entonces tengo que poner 2 camaras (de momento estoy probando con una imagen en mi casa con la de fotos y una pelota verde)

tengo que pasar las coordenadas de la imagen a coordenadas reales y luego a coordenadas de robot, pero esto no lo puedo hacer si no consigo lo de arriba jajajaja
   
Old 09-may-2007, 22:01   #4
Macarro
Administrador
 
Avatar de Macarro
Son dos cosas diferentes.

Si quieres una función que pase por todos los puntos, tendrás que construir un polinomio de orden n-1 donde n es el número de puntos que tienes.

Resuelves las ecuacicones y ya tienes los coeficientes de cada término.

Sin embargo, si deseas la recta que mejor se aproxime, si debes usar aproximación lineal, logaritmica o como te salga de las pelotas. El método para calcular los coeficientes (2 en el caso de la lineal)? pues no me acuerdo, pero era sencillo. Lo más fácil es que busques en internet que debe haber programas chorra que te lo hagan. De hecho, el excel te lo hace a partir de los pares de valores.

Lo que no se cómo se hacía era decidir cuál de las aproximaciones era mejor. Me imagino que el método será sumar las distancias al cuadrado de todos los puntos a dicha línea aproximada.

...y después de todo el chorizo: creo que esto no te sirve para calcular distancias con perspectiva . Más bien se trata de un probrema de trigonometría .
   
Old 09-may-2007, 22:04   #5
kursh_Allegory
Editor Marciano
Nada, si era por hablar de algo

pues otra cosa que se me da como el culo es buscar en internete", nada, sabiendo que lo mas probable es que sea interpolacion logarítmica voy a ello.

Gracias buen hombre.
   
Old 09-may-2007, 22:08   #6
Macarro
Administrador
 
Avatar de Macarro
Hazlo con el excel, hombre

De todos modos, insisto, esto es un problema de trigonometría. Como tienes dos ojos separados en horizontal, puedes calcular la distancia a la que está el punto.

De hecho, este sistema cutre-chapucero lo usaban los alemanes en la II Guerra Mundial. Tenían una especie de periscopis dobles que se usaban como prismáticos. Vamos, que eran unos prisáticos que te separaban la visión de cada ojo como un metro. Y al tener más separados los puntos de visión, se podían medir las distancias hasta más lejos.
   
Old 09-may-2007, 22:08   #7
Tofux
Marciano
 
Avatar de Tofux
Jooooder paisano, no te ha sentado muy bien la merienda ¿no?:b
Yo es que es ver números y me aturullo, me lio hasta con las fechas en Historia
Si tuve que hacer 3 veces las matemáticas de 3º de BUP, 3 veces que me las tuve que estudiar, de un dia para otro se me olvida todo, creo que ya no sé ni dividir con decimales.
Suerte con tus equis e ies.
   
Old 09-may-2007, 22:13   #8
kursh_Allegory
Editor Marciano
excel para probar.. he visto que es la funcion CERCHA (interpola).. pero luego tengo que programar en c, que sobre la marcha con los puntos que lea.. aplique alguna formula chachi piruli que haga todo funcionar XDDD

meriendo kellos esmas"xdddd
   
Old 09-may-2007, 22:23   #9
Macarro
Administrador
 
Avatar de Macarro
La fórmula era tonta, pero no la recuerdo, lo siento

Aquí lo tienes:

http://www.eumed.net/cursecon/medir/estima.htm


   
Old 09-may-2007, 22:37   #10
kursh_Allegory
Editor Marciano
Por si a alguien le va bien a la hora de hacerse el mueble o vete tu saber...

En principio esta formula funciona bien (y algo de recuerdos me trae)

Teniendo valores x1,y1 x2,y2 X <- coordenada x que conozco y ahora quiero calcular Y en base a las anteriores x minusculas que ya conozco.


Y = y2 - ( y2 - y1 ) * [ ( Log( x2 ) - Log ( X ) ) / ( Log( x2 ) - Log( x1 ) ) ]

edito: juraria que el mensaje de arriba no tenía la formula esa.... bueno estoy haciendo pruebas ya con la imagen y aunque parece que quiere ir no va muy fino..

Editado por kursh_Allegory en 10-may-2007 a las 01:35.