Parametrizaciones de Movimientos Rígidos en 3D

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Parametrizaciones de Movimientos Rígidos en 3D para Visión Artificial

María Lorena Bergamini, Jorge Alejandro Kamlofsky


CAETI – Facultad de Tecnología Informática
Universidad Abierta Interamericana
{maria.bergamini, jorge.kamlofsky}@uai.edu.ar

Resumen conjunto de movimientos de rotaciones constituye el


grupo especial ortogonal de tres dimensiones, SO(3).
La visión estereoscópica se basa en captar dos Este grupo algebraico es isomorfo a las matrices de orden
imágenes de una misma escena mediante un par de 3, ortogonales y con determinante positivo.
sensores. Esta habilidad permite a muchos seres vivos Cualquier configuración de un objeto rígido que es
realizar representaciones tridimensionales de su entorno. libre de rotar en relación a un sistema de referencia fijo
Una de las técnicas usuales de visión robótica puede ser identificada con una matriz ortogonal con
implementa esta habilidad analizando pares de imágenes determinante positivo, llamada matriz de rotación. Por
obtenidas de un mismo objeto, y determinando un eso, el grupo SO(3) se lo conoce como espacio de
conjunto de puntos homólogos. La posición relativa de configuración (Murray et al., 1994).
las cámaras se modela con una transformación rígida en Existen diversas parametrizaciones para determinar
el espacio: rotación y traslación. Por otra parte, estas orientaciones o configuraciones de un objeto (Diebel,
transformaciones también son fundamentales al 2006, Kuipers, 2002). Las coordenadas más naturales son
implementar sistemas automáticos de localización, el eje de rotación y el ángulo.
orientación y seguimiento de objetos moviéndose en el Una alternativa es el uso de los llamados ángulos de
espacio. Frente a las diversas alternativas de modelado y Euler para determinar la configuración rotacional de
parametrización de las transformaciones rígidas, se objetos, principalmente en posicionamiento relativo de
pretende analizarlas desde un enfoque unificado, vehículos aeroespaciales. Son tres ángulos que definen
proponer variantes mejoradoras y medir y comparar su rotaciones con respecto a los tres ejes coordenados.
desempeño computacional. Existen múltiples convenciones para el orden en que se
consideran los ejes, y por lo tanto, múltiples conjuntos de
ángulos que representan la misma configuración.
1. Introducción Otras herramientas matemáticas para el mismo fin son
las matrices de rotación, y los cuaterniones.
La estimación automática de la posición de un objeto Las relaciones entre ángulos de Euler, matrices de
rígido moviéndose en el espacio tridimendional, a partir rotación y cuaterniones son clásicas, y existe una amplia
de imágenes bidimensionales del objeto, o a partir de bibliografía referente al tema. En particular, Serrano et al.
datos proporcionados por sensores ubicados en el mismo, (2014) realizan un profundo estudio de la justificación
constituye un problema de fundamental importancia en la geométrica y algebraica de cada una de las
tecnología actual. Y junto con la tarea de determinar la representaciones.
posición, surge la necesidad de gobernar y controlar el Varios problemas en visión computacional y robótica
movimiento automáticamente (Murray et al., 1994). involucran la tarea de encontrar los parámetros de la
El desarrollo de herramientas matemáticas para configuración óptima, lo que implica un problema de
cumplir esta tarea ha sido foco de investigaciones de optimización en SO(3). Por ejemplo, tal problema surge
matemáticos e informáticos dedicados a visión en la determinación de la posición de una cámara,
computacional, videojuegos y robótica. Estas conociendo un conjunto de puntos en imágenes tomadas
aplicaciones requieren formas eficientes de representar por ésta.
transformaciones de coordenadas en el espacio; sobre Dados puntos homólogos, puestos en correspondencia
todo en operación y control online de cámaras o por medio de algoritmos de detección de características
dispositivos robóticos. en un par de imágenes, se plantea el problema de estimar
Un movimiento rígido o desplazamiento en el espacio la posición relativa de los puntos de toma. Dicha posición
está compuesto por una traslación y una rotación. El puede establecerse como un elemento en SO(3), y se
calcula de forma tal de minimizar el error de predicción a un movimiento de un cuerpo rígido). Esta matriz M
en los puntos homólogos. Sarkis y Diepold estudian este tiene un autovalor 1 y el autovector asociado es el eje de
problema, y proponen un algoritmo numérico para la rotación.
optimizar en SO(3) (Sarkis Diepold, 2012). En R3, una rotación de un ángulo  alrededor de un eje
Es fundamental, a la hora de diseñar algoritmos de w = (x,y,z)t (de módulo 1) se puede modelar con la matriz
localización, seguimiento y/o control de objetos, utilizar
la mejor formulación, desde el punto de vista de
minimizar el costo computacional, y la propagación de C + (1 − C) (1 − C) − S (1 − C) +
errores de punto flotante. = (1 − C) + S C + (1 − C) (1 − C) −
Existe una extensa literatura sobre las distintas
(1 − C) − S (1 − C) + S C + (1 − C)
parametrizaciones, pero muy pocas que muestren un
(3)
tratamiento unificado (Diebel, 2006; Serrano et al.,
2014). Más aún, casi no hay trabajos que hagan una
donde C = cos(), S = sen().
comparación computacional desde el punto de vista
En esta representación ocurren singularidades, cuando
práctico.
El objetivo del presente trabajo es en primer lugar,  = 0; no está bien definido el eje de rotación en tal caso.
exponer unificadamente las distintas alternativas de Nótese que la condición de módulo 1 para el vector w
representación de transformaciones rígidas en el espacio, puede evitarse si se escribe el eje en coordenadas
la mayoría de ellas son las usuales, y para algunas se esféricas  y ,
sugieren modificaciones. Además, se pretende evaluar el
desempeño computacional de las diferentes w = (cos()sen(),sen()sen(),cos())t (4)
parametrizaciones del grupo especial ortogonal, usando
funciones de cálculo numérico y algoritmos de Así, la matriz M depende de los tres parámetros, ,  y .
optimización genéricos en librerías de software de Esta formulación será denotada 3’. Esta representación
computación numérica. también tiene singularidades, por ejemplo, el vector w =
En la siguiente sección se presentan las distintas (0,0,1)t no tiene parametrización única.
formulaciones que se analizarán; luego se expone el Por otro lado, es sabido que una rotación puede
problema de la determinación de parámetros óptimos de descomponerse en tres rotaciones básicas, alrededor de
la transformación que relaciona dos conjuntos de puntos. los ejes coordenados. Así,
Seguidamente se muestran los resultados experimentales;
y el trabajo finaliza con la discusión de resultados y M = Rx(a) Ry(b) Rz(g) (5)
conclusiones.
representa la composición de una rotación de un ángulo g
2. Formulación de rotaciones en el espacio alrededor del eje z, seguida de una rotación de un ángulo
b alrededor del eje y, y finalmente una rotación con un
La posición de un objeto rígido en el mundo ángulo a alrededor del eje x, donde
tridimensional, con respecto a un sistema de referencia
fijo, puede descomponerse en una traslación y una 1 0 0
rotación. Matemáticamente, una traslación es (a) = 0 cos(a) sen(a)
0 −sen(a) cos(a)
= + (1)
cos(b) 0 −sen(b)
donde p es la posición actual del objeto (del punto de (b ) = 0 1 0 (6)
referencia del mismo), r es la posición luego de la sen(b) 0 cos(b)
traslación y t es el vector de desplazamiento.
Más desafiante es la formulación matemática de una cos (g) sen (g) 0
rotación. En cualquier dimensión, la rotación de un punto (g) = −sen (g) cos (g) 0
p se modeliza como 0 0 1
r=Mp (2) son las matrices básicas de rotación alrededor de los ejes
de la referencia. Los ángulos (a,b,g) son los ángulos de
donde M es una matriz ortogonal, es decir, que verifica Euler de la secuencia ZYX. Como se mencionó
= , y con determinante positivo (las matrices anteriormente, existen otras convenciones para el orden
ortogonales con determinante negativo representan en que se componen los giros alrededor de los ejes,
rotaciones seguidas de una inversión, que no corresponde dando otras ternas de ángulos para la misma rotación.
La matriz dada en (5) es una matriz ortogonal, y se orientaciones y rotaciones de objetos en tres
corresponde con una rotación de un ángulo = dimensiones. En Torres del Castillo (1999), puede
2 1+ + + /2 alrededor de un eje encontrarse una justificación geométrica de la relación
w en la dirección ( − , − , − ), entre cuaterniones y rotaciones.
donde mij es el elemento ij de M. Siendo p un cuaternión puro, y q un cuaternión
Dada una matriz de rotación M, la descomposición en unitario, q = (cos(/2), w.sen(/2)) , la transformación
ángulos de Euler no es única, por lo que surgen

singularidades al tratar de resolver ese problema. No r= . . (10)
existe una relación biunívoca entre una transformación de
rotación y una terna de ángulos (a,b,g); por lo que esta da el punto r que es la imagen de p por la rotación con
parametrización no es isomorfa a SO(3). eje w un ángulo .
Escribiendo el eje de rotación en coordenadas Ese producto doble puede calcularse mediante la
esféricas, se puede escribir w = Rz()Ry()z, siendo z = aplicación sucesiva de las expresiones (8), a partir de las
(0,0,1)t. Luego, es fácil deducir que la rotación de un cuatro componentes de q, a la que llamaremos
ángulo  alrededor de w se representa con la matriz formulación 10.8; o la expresión (9), a partir de la parte
real y la parte vectorial de q, que llamaremos
M = Rz()Ry()Rz()Rty()Rtz() (7) formulación 10.9.
Escribiendo el cuaternión q = (a, x, y, z), y usando el
Esta matriz, también ortogonal, depende de los tres hecho que es unitario, a2+x2+y2+z2=1, la ecuación (10) se
puede reescribir como r = M p, siendo M la matriz
ángulos ,  y , y por consiguiente, es la misma matriz
que la obtenida en (3’).
2 +2 −1 2( − ) 2( + )
Existe otra forma de parametrizar de SO(3) que no
utiliza matrices de rotación, y no presenta singularidades. 2( + ) 2 +2 −1 2( − ) (11)
Se basa en los cuaterniones y las operaciones definidas 2( − ) 2( + ) 2 +2 −1
en este conjunto de números hipercomplejos (Sahu et al.,
2008; Pham et al., 2010; Chao et al., 2006). donde, p ahora se toma como un punto en R3.
Un cuaternión puede pensarse como un elemento de Nótese que las formulaciones 10.8, 109 y 11 son
R4. Se lo denota q = (a, x, y, z), o también q = (a,v), polinómicas, es decir, involucran sólo operaciones de
donde aR se denomina parte real y vR3 parte vectorial suma y producto.
del cuaternión. Escribiendo el cuaternión q = (cos(/2), w.sen(/2)),
El producto de dos cuaterniones q1 = (a1, x1, y1, z1) y siendo w unitario, la ecuación (10) con (9) resulta
q2 = (a2, x2, y2, z2), es el cuaternión q3 = q1.q2 = (a3, x3, y3,
z3) con r = cos()p+ sen() wp+(1-cos())(w p) w (12)

a3 = a1.a2 - x1.x2 - y1.y2 - z1.z2 que es la conocida fórmula de Rodrigues.


x3 = a1.x2 + x1.a2 + y1.z2 - z1.y2 En este caso, si el vector unitario w se escribe en
(8) coordenadas esféricas, se obtiene una nueva formulación,
y3 = a1.y2 - x1.z2 + y1.a2 + z1.x2
z3 = - a1.z2 + x1.y2 - y1.x2 + z1.a2 que será denotada 12’.
Existe también una parametrización que resulta ser
Si se representan los cuaterniones con q1 = (a1, v1) y una variante de las formulaciones 3 y 12. Se obtiene
q2 = (a2, v2), el producto también se puede escribir parametrizando cada rotación con el llamado vector de
rotación u = (X,Y,Z)t, de forma tal que  = |u|, y el eje de
q3 = (a1a2 – v1v2, a1v2+a2v1+v1v2) (9) rotación es paralelo a u. Así, u =  w. Tomando estas
variables, (X,Y,Z)t, como variables libres, la rotación se
El conjugado del cuaternión q = (a, v) es q* = (a, -v). puede calcular a partir de la ecuación 3 o la ecuación 12.
La norma se define como |q| = (q.q*)1/2 = (a2+ x2 + y2 + En este último caso, se obtiene
z2)1/2, y un cuaternión unitario es aquel que tiene norma 1.
Todo cuaternión unitario se puede escribir en la forma r= | | + | | × +
| |
q = (cos(/2), w.sen(/2)) con w vector unitario en R3. (13)
(1 − | |)( ∙ )|
Las posiciones de objetos en el espacio pueden | | |
representarse como cuaterniones con parte real nula,
llamados cuaterniones puros. Esta parametrización tampoco es isomorfa a SO(3),
Los cuaterniones unitarios constituyen una ya que distintos parámetros u pueden representar la
formulación matemática para representar las misma rotación.
3. Determinación de los parámetros de una 4. Resultados experimentales
transformación Se han realizado distintos tests para comparar
experimentalmente las ventajas y desventajas de las
Se plantea el problema de determinar los parámetros
distintas formulaciones de transformaciones rígidas.
de una transformación rígida que relaciona dos conjuntos
Fueron implementados en el software de cálculo
de puntos. Específicamente, sean los puntos pi y ri, con i
numérico Scilab v.5.5.2 (Scilab, 2015), en una PC con
= 1,…,N, de los cuales se espera que verifiquen
procesador Intel(R) Core (TM) i5 CPU de 3.20GHz con
3.17Gb de memoria RAM.
= ( , Ω) (14)
El primer experimento pretende medir el uso de CPU
necesario para efectuar una determinada cantidad de
para cada i, donde (∙, Ω) es una transformación rígida
rotaciones sobre una nube de puntos. Para ello, se han
con parámetros . Este problema surge, por ejemplo, tomado aleatoriamente un conjunto de rotaciones, dadas
cuando se tienen dos imágenes de la misma escena, por los parámetros ángulo-eje. Además, se han tomado
tomadas desde dos posiciones distintas. Los pares (pi,ri) aleatoriamente una nube de puntos en el espacio.
son puntos homólogos, y la transformación f determina la Se realizaron 5000 rotaciones sobre una cantidad
posición relativa de los puntos de toma. variable de puntos. La figura 1 muestra el uso de CPU
Siendo que el cálculo de puntos homólogos conlleva para las distintas formulaciones. En la leyenda de la
errores de precisión e incertidumbre, el problema de figura se identifica el número de ecuación
hallar los parámetros  de f se plantea como un problema correspondiente a cada serie de datos. No se incluyen
de optimización resultados de la formulación (13), ya que con ella se
realizan los mismos cálculos que la formulación (12).
min ( − ( , Ω)) (15)

Las distintas formulaciones para la transformación f,


implicará distinto costo computacional, y distinta
precisión en el cálculo de los parámetros. En los tests
expuestos en la sección de resultados experimentales,
consideramos que f es sólo una rotación.
La tabla 1 enumera los parámetros necesarios para
cada una de las formulaciones descritas en la sección
anterior; así como el espacio de factibilidad .

Tabla 1: Parámetros usados en cada formulación


Figura 1: Tiempos de CPU para computar rotaciones
Ec. Parámetros 
3 (,x,y,z) {(,x,y,z): |(x,y,z)|=1} De esta figura se puede concluir que la alternativa
3’ (,,) R3 notablemente más costosa computacionalmente es
5 (a,b,g) R3 calcular las rotaciones usando cuaterniones, de acuerdo a
7 (,,) R3 la fórmula (10), con el producto de cuaterniones
10.8 q=(a,x,y,z) {q=(a,x,y,z): |q|=1} definidos en (9). También merece ser remarcado que la
10.9 q=(a,v) {q=(a,v): aR, vR3, |q|=1} formulación que ejecuta la tarea en menor tiempo es la
11 q=(a,x,y,z) {q=(a,x,y,z): |q|=1} dada en la ecuación (11), que supone el uso de
12 (,w) {(,w): R, wR3, |w|=1} cuaterniones, con el producto en forma matricial. Todas
12’ (,,) R3 las demás formulaciones son prácticamente equiparables
13 (X,Y,Z) R3 en cuanto al tiempo de computación, ya que muestran la
misma tendencia.
Todas las formulaciones tienen 3 o 4 parámetros. Otro análisis que se realizó fue enfocado a determinar
Cuando la cantidad de parámetros es 4, el espacio de la pérdida de precisión numérica sufrida al usar las
factibilidad está descrito por alguna restricción distintas formulaciones.
(normalización de vectores) que reduce en uno los grados Para ello, se realizaron S rotaciones sucesivas sobre un
de libertad. Entonces, el grado de libertad es siempre 3. conjunto de N puntos. Se aplica iterativamente la
transformación p = f(p), a partir de un conjunto inicial p0
de N puntos, donde f se representa por las formulaciones
mencionadas anteriormente. Las S rotaciones son tales parámetros de convergencia por defecto de la función
que, con precisión infinita, p0 = f S(p0). El error optim de Scilab, excepto el número de evaluaciones de
acumulado se calcula como función objetivo -nap-, que fue elevado a 2000).
En la tabla 3 se reportan los tiempos promedios
| − ( )| = max − ( ) (16) empleados para cada formulación, así como la desviación
estándar. El promedio se calcula sobre los test realizados
con distintos puntos iniciales.
Scilab maneja números reales con el sistema de punto
flotante establecido en el estándar IEEE 754, con Tabla 3: Tiempos de CPU
precisión relativa 2-52. La tabla 2 resume los resultados
obtenidos. En la misma, se muestra el error promedio Ec. Tiempo CPU Desv Iters
relativo alcanzado con cada formulación (el promedio se
3 0.252 0.089 43
toma sobre un conjunto de tests con distintos S y N).
3’ 0.064 0.016 13
5 0.063 0.019 14
Tabla 2: Errores relativos de precisión acumulados
7 0.068 0.020 14
10.8 0.083 0.014 21
Ec. 3 5 7 10.8 10.9 11 12 10.9 0.083 0.017 21
Error 1.0 2.4 1.8 0.6 0.5 1.3 1.4 11 0.082 0.020 22
12 0.214 0.057 41
Los resultados indican que no hay marcada diferencia 12’ 0.067 0.021 13
en la pérdida de precisión entre las distintas 13 0.070 0.024 14
formulaciones usadas, a pesar de que algunas involucran
sólo operaciones polinómicas (productos y sumas), y
otras requieren gran cantidad de evaluación de funciones Puede notarse que las formulaciones que implican
trigonométricas. Todas sufren una pérdida de precisión mayor costo computacional son la que se basa en la
del mismo orden. matriz dada en (3), parametrizada con ángulo-eje, y la
Sin embargo, puede notarse que las ecuaciones (10.8) basada en la fórmula de Rodrigues con los mismos
y (10.9), que son básicamente polinómicas, muestran el parámetros. Estas parametrizaciones implican un espacio
menor error. Y, por otra parte, la formulación con los de factibilidad definido por una restricción de
ángulos de Euler (ecuación 5), involucrando senos y normalización, que se introduce como una penalidad en
cosenos de tres ángulos distintos, presenta el error más la función objetivo.
grande. También debe remarcarse que en dichas
Por otro lado, se realizó un test para resolver el formulaciones, si se utilizan las coordenadas esféricas
problema de encontrar los parámetros de la para el eje, evitando así la restricción de normalización,
transformación que relaciona dos conjuntos de puntos el tiempo computacional decrece notablemente,
homólogos. Se tomaron, en principio, 20 pares de puntos resultando de esta manera las formulaciones óptimas,
homólogos (pi, ri), relacionados por una transformación desde el punto de vista del tiempo de CPU usado.
prefijada (c conocido). A los puntos ri se les agregó una La formulación que se basa en ángulos de Euler
perturbación gaussiana. implica un tiempo equivalente.
Se realizó la optimización de la ecuación (15) usando Asimismo, las formulaciones basadas en producto de
la función optim de Scilab, que implementa el algoritmo cuaterniones (10.8, 10.9 y 11) igualmente tienen una
Quasi-Newton con BFGS. Las restricciones de módulo 1 restricción de normalización, y el tiempo implicado es
en las formulaciones 3, 10.8, 10.9, 11 y 12 se modelaron levemente mayor a las formulaciones de mejor
con una penalidad en la función objetivo. desempeño, pero no tan elevadas como las (3) y (12).
Al tratarse de un problema de optimización no lineal, Esto es porque la parametrización con cuaterniones sí es
el punto inicial tiene gran influencia en el resultado y en un isomorfismo en SO(3), y por lo tanto no presenta
la cantidad de iteraciones necesarias para alcanzar redundancia.
convergencia. Para cada prueba, se toma un ángulo Es interesante también hacer notar la relación entre
inicial 0 y un eje inicial w0, aleatoriamente en un tiempo de CPU y cantidad de iteraciones del algoritmo de
intervalo adecuado para cada parámetro; y luego se optimización, así como cantidad de evaluaciones de la
traducen esos valores a los parámetros iniciales función objetivo por iteración; como se ven en la tabla 4
correspondientes en cada formulación. (en valores promedios).
En todos los casos, (excepto los casos singulares de
los cuales se habla más adelante) el criterio de
terminación fue alcanzado satisfactoriamente (con los
Tabla 4: Tiempo CPU y evaluación de objetivo por estrategia, según nuestro conocimiento, no es muy
iteración frecuentemente usada; quizás porque adiciona una gran
cantidad de evaluación de funciones trigonométricas. Sin
Ec. Tiempo Evals/iter embargo, nuestros resultados muestran que no representa,
CPU/iter 103 en general, un serio inconveniente, desde el punto de
3 5.84 4.0 vista del tiempo requerido. Quizás sí presentaría
3’ 4.75 3.6 dificultades numéricas si los parámetros óptimos son, o
5 4.70 3.7 están cerca de los valores singulares de la representación.
7 4.90 3.6 En estos casos siempre se puede cambiar de
10.8 3.99 2.4 parametrización o cambiar los ejes de la referencia.
10.9 4.03 2.4 Una de nuestras hipótesis era que los cuatro
11 3.80 2.6 parámetros de la formulación con ángulo-eje, con
12 5.22 3.5 restricción de normalización del eje, podría mejorarse
12’ 4.80 3.5 con los tres parámetros del vector de rotación (ecuación
13 5.21 4.0 13). Sin embargo, nuestros experimentos muestran que
no existe ventaja computacional en la práctica.
Se observa que las alternativas basadas en
cuaterniones son las que implica menores tiempos y
evaluaciones por iteración. Nuevamente, esto puede Referencias
adjudicarse a que son problemas polinómicos, que no
 Chao H., Meng M.Q.-H., Mandal M., Liu P.X. “Robot
suponen el uso de funciones trigonométricas.
Rotation Decomposition Using Quaternions”. Proceedings of
Excepto las formulaciones basadas en cuaterniones, the 2006 IEEE International Conference on Mechatronics and
todas presentan casos singulares. Por ejemplo, cuando el Automation, 2006, pp. 1158 – 1163
eje de rotación es w = (0,0,1)t, no están bien
determinados los parámetros en las ecuaciones 3’, 7 y  Diebel, J. “Representing attitude: Euler angles, unit
quaternions, and rotation vectors”. Matrix, 58, 2006, pp. 15-16.
12’. En los resultados, cuando el eje de rotación es tal w,
o uno cercano, el número de iteraciones necesarias en la  Kuipers, J. B. “Quaternions and rotation sequences: A
función optim se eleva notablemente.. primer with Applications to Orbits, Aerospace and Virtual
Reality”, Princeton: Princeton university press, 2002
5. Discusión  Murray R., Li Z., Sastry S. “A Mathematical Introduction to
Robotic Manipulation”. CRC Press, Inc. Boca Raton, FL, USA,
De los test realizados se puede concluir, por un lado, 1994.
que en cuanto al tiempo de CPU necesario para realizar
un conjunto de transformaciones, es preferible utilizar la  Pham H.L., Perdereau V., Adorno B., Fraisse P. “Position
and Orientation Control of Robot Manipulators Using Dual
parametrización con cuaterniones, y expresar la
Quaternion Feedback”. IROS'10: International Conference on
transformación matricialmente. Esto implica sólo Intelligent Robots and Systems, 2010, Taipei, Taiwan.
operaciones de suma y producto, frente a otras IEEE/RSJ, pp.658-663.
alternativas que suponen uso de funciones
trigonométricas. Utilizar cuaterniones con el doble  Sahu S., Biswal B., Subudhi B. “A Novel Method for
Representing Robot Kinematics using Quaternion Theory”.
producto definido a partir de la parte real y parte
IEEE Sponsored Conference on Computational Intelligence,
vectorial del cuaternión es la peor opción. Esto tiene su Control And Computer Vision In Robotics & Automation, 2008,
explicación en que se ejecuta dos veces la función que NIT Rourkela http://hdl.handle.net/2080/689
multiplica cuaterniones, con lo cual, los datos se operan
dos veces.  Sarkis, M., Diepold, K. “Camera-pose estimation via
El test realizado para medir la pérdida de precisión projective Newton optimization on the manifold”. Image
Processing, IEEE Transactions on, 21(4), 2012, pp. 1729-1741.
numérica muestra que, si bien todas las formulaciones
arrojan una pérdida de precisión del mismo orden, el uso  Scilab. Scilab Enterprises http://www.scilab.org/, 2015
de cuaterniones resulta la parametrización más confiable.  Serrano E., Sirne R., La Mura G. “Rotaciones, secuencia
En el problema de hallar los parámetros óptimos que aeroespacial y cuaterniones. Una revisión de las relaciones
relacionan dos conjuntos de puntos, se concluye que es fundamentales”. Ciencia y Tecnología, 14, 2014, pp. 11-28.
preferible parametrizar el espacio de transformaciones
 Torres del Castillo G.F. “La representación de rotaciones
con tres parámetros, ya que la adición de la penalidad en
mediante cuaterniones”. Miscelánea Matemática 29, 1999, pp.
la función objetivo eleva el tiempo de cómputo. La 43-50.
restricción de normalización siempre puede evitarse
parametrizando con coordenadas esféricas el eje. Esta

También podría gustarte