Usando geometría proyectva para corregr una cámara. Parte II No hay nada partcularmente profundo en este problema o en su solucón, pero espero que muestre el placer que se puede encontrar cuando usamos nuestra ntucón matemátca. Coordenadas Barcéntrcas. Davd Austn 1 Blnn tambén descrbe un segundo método para resolver este problema. Este nuevo método fue propuesto por Krk Olynyk, uno de sus colegas en Mcrosoft Research, y usa coordenadas barcéntrcas para smplfcar las cuentas. Prmero descrbremos brevemente las coordenadas barcéntrcas y luego presentaremos el método de Olynyk. S tenemos tres puntos no colneales en el plano, dgamos p 0, p1, y p, podemos representar de manera únca cualquer punto p en el plano de la sguente forma p, 0 p0 1 p1 p con la condcón adconal de que 1. Esto se puede ver fáclmente s 0 1 uno de los puntos p es el orgen. El caso más general se obtene aplcando una traslacón unforme a los cuatro puntos. 1 Impreso con autorzacón del autor. 1
S pudésemos aplcar esto a un punto en nuestro espaco de llegada, tendríamos que 0t0 1t1 t1 t y de manera smlar para un punto en el espaco de salda: 0S0 1S1 S S. Consderemos el efecto de nuestra transformacón Mst sobre las coordenadas barcéntrcas. t SMst
lo que nos muestra que 0w 1w 0 0 w 1 1. Luego el efecto de la transformacón Mst en las coordenadas barcéntrcas es smplemente una multplcacón: 0. Una vez que logremos determnar las constantes, y 0 1, podremos encontrar usando la condcón 0 1 1. La pregunta es ahora como determnar, y 0 1. Recordemos que tenemos cuatro pares de puntos S y t y que S Mst= t. S escrbmos las coordenadas barcéntrcas para S como [ ~ ~ ~ ] y las de t como 0 1 [ ~ ~ ~ ], tenemos, salvo por un reescalamento, 0 1 ~ / ~ Dcho de otro modo, en las coordenadas barcéntrcas, la Mst es smplemente una matrz dagonal
donde ~ y ~ son las coordenadas barcéntrcas de S y t, respectvamente. Esta es una expresón muy senclla para Mst. Sn embargo es necesaro un trabajo adconal para encontrar las coordenadas barcéntrcas S usando y después recuperando el punto del conjunto de llegada t de sus coordenadas barcéntrcas. Resumendo, la transformacón S. t se construye de la sguente manera: 1. Buscando las coordenadas barcéntrcas de S.. calculando =( ), 4
. normalzando las coordenadas de tal forma que 1, 0 1 4. y recuperando t de sus coordenadas barcéntrcas. El método de Olynyk es smlar en espírtu al de Heckbert, ya que ambos hacen un paso ntermedo en el camno de encontrar la transformacón Mst. Heckbert descompone Mst en dos transformacones pasando por un conjunto estándar de puntos, los vértces del cuadrado undad. El de Olynyk descompone Mst pero antes pasa a las coordenadas barcéntrcas, las cuales son ndvdualmente escaladas. La mejora fnal de Blnn Blnn encontró un tercer método basado en el trabajo de Heckbert y en el de Olynyk, que se caracterza por una smplcdad asombrosa. Seguremos la dea de Heckbert de factorzar Mst a través de puntos ntermedos b. En lugar de usar el cuadrado undad, elegremos números en el plano proyectvo que tengan como coordenadas la mayor cantdad posble de ceros: b 0 = 1 0 0 b 1 = 0 1 0 b = 0 0 1 b = 1 1 Observemos que dos de estos puntos están en nfnto, pero no es algo objetable. Para descrbr la transformacón Mbt, notemos que 1 b Mbt, = t = [ U b, b b 0 1, y tenemos que V ]. Consderando los tres prmeros puntos 5
Mbt: =. Luego la transformacon Mbt : Mbt :=. Todo lo que necestamos ahora es encontrar, y 0 1, y lo podemos hacer usando el cuarto punto: bmbt t = Vemos aquí una clara relacón con el método de Olynyk: 0, 1, no son nada más que las coordenadas barcéntrcas de t multplcadas por, 6
= [ ]. Como Mbt está defnda salvo por una constante multplcatva, podemos elegr de modo arbtraro. S lo tomamos = det, entonces =. Usando los datos del espaco de llegada, defnmos la matrz T = de tal modo que =. Por supuesto, todavía nos falta encontrar Msb de manera análoga: 7
Mbs = S, donde = y S es la matrz formada por los datos del espaco de llegada: S =. Ponendo todo junto, tenemos que Mst MsbMbt = Mbs Mbt S S 8
Para coronar esto, Blnn nos da una nterpretacón geométrca smple para los Z. Recordemos que y = =, por lo cual )( )( )( )( )( )(. Estas expresones demuestran que puede ser nterpretada como el doble del área sgnada de uno de los trángulos formados por los puntos t. En la magen de abajo se representa con verde un área postva y con rojo una negatva 9
0
Resumen Es dfícl magnar una expresón más smple para Mst : Mst = S T. Recordando que S está formado a partr de los datos del espaco de partda y T de los datos t del espaco de llegada, solo necestamos calcular los y Z, pero vmos más arrba que esto no es complcado. Como mostramos podemos encontrar Mst resolvendo un sstema homogéneo de 8 9 ecuacones. Sn embargo, no perdendo de vsta la naturaleza geométrca del problema, tanto Heckbert, Olynyk, y Blnn encontraron formas cada vez más smples para Mst. 1
Referencas Jm Blnn, Inferrng Transforms n Jm Blnn's Corner: Notaton, Notaton, Notaton. Morgan Kaufmann. 00. (Como todas las columnas de Blnns, esta esta escrta claramente y ademas es muy entretenda.) Paul Heckbert, Fundamentals of Texture Mappng and Image arpng. Master's Thess, Unversty of Calforna, Berkeley, 1989. Colaboracón de la Dra. Carna Boyallán. Facultad de Matemátca, Astronomía y Físca. Unversdad Naconal de Córdoba.