26 votos

Distancia de cuaternario

Estoy usando cuaterniones para representar la orientación como un desplazamiento rotacional de un marco de coordenadas global.

¿Es correcto pensar que la distancia de un cuaternario da una métrica que define la cercanía de dos orientaciones? es decir, orientaciones similares dan distancias bajas, y orientaciones disímiles dan distancias altas.

¿La distancia cero significa que las orientaciones son exactamente las mismas?

Esto parece obvio, pero quiero asegurarme de que no hay sutilezas que se interpongan en el camino de la lógica.

2voto

seanyboy Puntos 3170

Primero, asumo que estás usando cuaternarios de unidad, es decir, cuaternarios $a+b\, \textbf {i}+c\, \textbf {j}+d\, \textbf {k}$ que satisfacen $a^2 + b^2 + c^2 + d^2 = 1$ . Si no, querrás escalar tus cuaterniones antes de calcular la distancia.

La distancia entre los cuaterniones corresponderá aproximadamente a la distancia entre las orientaciones siempre que los cuaterniones estén bastante cerca uno del otro. Sin embargo, si estás comparando cuaternarios globalmente, debes recordar que $q$ y $-q$ siempre representan la misma orientación, aunque la distancia entre ellas es $2$ .

Hay mejores formas de calcular la cercanía de dos orientaciones que evitan este problema. Por ejemplo, el ángulo $ \theta $ de la rotación necesaria para pasar de una orientación a otra viene dada por la fórmula $$ \theta \;=\; \cos ^{-1} \bigl (2 \langle q_1,q_2 \rangle ^2 -1 \bigr ) $$ donde $ \langle q_1,q_2 \rangle $ denota el producto interno de los cuaterniones correspondientes: $$ \langle a_1 +b_1 \textbf {i} + c_1 \textbf {j} + d_1 \textbf {k},\; a_2 + b_2 \textbf {i} + c_2 \textbf {j} + d_2 \textbf {k} \rangle \;=\; a_1a_2 + b_1b_2 + c_1 c_2 + d_1d_2. $$ (Esta fórmula se deriva de la fórmula de doble ángulo del coseno, junto con el hecho de que el ángulo entre orientaciones es precisamente el doble del ángulo entre cuaterniones unidad).

Si se quiere una noción de distancia que pueda ser computada sin funciones de trigonometría, la cantidad $$ d(q_1,q_2) \;=\; 1 - \langle q_1,q_2 \rangle ^2 $$ es igual a $(1- \cos\theta )/2$ y da una estimación aproximada de la distancia. En particular, da $0$ cuando los cuaterniones representan la misma orientación, y da $1$ siempre que las dos orientaciones son $180^ \circ $ aparte.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X