1 votos

Calcular las coordenadas correspondientes

Me gustaría que me ayudaran a calcular las coordenadas correspondientes (x,y,z): Tengo 2 similar formas en el mismo espacio (forma A y forma B). Las formas contienen varios puntos en los mismos lugares de la forma misma. Estoy tratando de encontrar las coordenadas correspondientes entre esas formas. Lo que tengo en la mano es una sola coordenada que sé que se corresponde entre sí.

Por ejemplo:

En la imagen siguiente tenemos dos formas similares en diferentes orientaciones en el mismo espacio. Sabemos que los puntos rojos (x,y,z) se corresponden entre sí. El objetivo es encontrar para cada coordenada verde de la forma A, su correspondiente coordenada de la forma B.

Demonstrates the problem I'm trying to solve

¿Es posible? Si no - Si tengo dos "puntos rojos" ¿será posible entonces? ¿Cómo?

Gracias.

0voto

aras Puntos 1083

Parece que estás buscando una transformación afín, es decir, una función $\varphi: \Bbb R^3 \to \Bbb R^3$ tal que

$$\varphi(x) = Ax + b = \begin{pmatrix} a_{11} &a_{12} &a_{13}\\a_{21}&a_{22}&a_{23}\\a_{31}&a_{32}&a_{33} \end{pmatrix}\begin{pmatrix}x_1\\x_2\\x_3\end{pmatrix} + \begin{pmatrix}b_1\\b_2\\b_3\end{pmatrix} $$

que mapea cada punto $(x,y,z)$ . A grandes rasgos, la matriz $A$ es responsable de las rotaciones y la escala, y el vector columna $b$ es responsable de las transformaciones. Por ejemplo, la transformación afín que movería su forma una unidad hacia arriba a lo largo del $z$ El eje corresponde a

$$\varphi: x \to x + \begin{pmatrix}0\\0\\1\end{pmatrix}$$

así que en este caso $A = I_3$ y $b = (0,0,1)^T$ . La transformación afín que gira en torno a la $z$ El eje corresponde a

$$ \varphi: x \to \begin{pmatrix}\cos(\theta)&-\sin(\theta)&0\\\sin(\theta)&\cos(\theta)&0\\0&0&1 \end{pmatrix}x. $$

Aquí, $b = (0,0,0)^T$ .

En su caso, se le da una serie de entradas $(x_1,x_2,x_3)^T$ y salidas $\varphi((x_1,x_2,x_3)^T)$ . En realidad, no tienes que preocuparte de averiguar qué componente de la transformación es la rotación, la traslación o la escala. Sólo tienes que tener suficientes puntos dados en tu forma para que puedas encontrar valores únicos de $A$ y $b$ que resuelvan su problema.

Suponiendo que exista una solución (que debería existir, dada la naturaleza de su problema), necesitará $4$ puntos dados para resolver el problema. Llama a estos puntos $w = (w_1,w_2,w_3)$ , $x = (x_1,x_2,x_3)$ , $y = (y_1,y_2,y_3)$ y $z = (z_1,z_2,z_3)$ . Del mismo modo, dejemos que $\varphi(w) = (w_1',w_2',w_3')$ etc. Multiplicando la ecuación $\varphi(x) = Ax+b$ fuera, vemos que

$$\tag{1} \begin{pmatrix} w_1'\\w_2'\\w_3' \end{pmatrix} = \begin{pmatrix} a_{11} &a_{12} &a_{13}\\a_{21}&a_{22}&a_{23}\\a_{31}&a_{32}&a_{33} \end{pmatrix}\begin{pmatrix}w_1\\w_2\\w_3\end{pmatrix} + \begin{pmatrix}b_1\\b_2\\b_3\end{pmatrix} $$

Esto da un sistema de tres ecuaciones simultáneas, una en cada fila. La ecuación que se obtiene con sólo mirar la primera fila tiene el siguiente aspecto:

$$ w_1' = a_{11}w_1 + a_{12}w_2 + a_{13}w_3 + b_1$$

Cuando conectamos los otros tres puntos $x$ , $y$ y $z$ en la ecuación $\varphi(x) = Ax + b$ y sólo miramos la primera fila, obtenemos ecuaciones similares:

$$ x_1' = a_{11}x_1 + a_{12}x_2 + a_{13}x_3 + b_1$$ $$ y_1' = a_{11}y_1 + a_{12}y_2 + a_{13}y_3 + b_1$$ $$ z_1' = a_{11}z_1 + a_{12}z_2 + a_{13}z_3 + b_1$$

Ahora debería estar claro por qué necesitábamos $4$ puntos. Hay cuatro incógnitas: $a_{11}, a_{12}, a_{13}$ y $b_1$ . Los valores de $x$ , $y$ , $z$ y $w$ (y sus imágenes $x'$ , $y'$ , $z'$ y $w'$ ). Así que necesitamos cuatro ecuaciones lineales en estas cuatro incógnitas para encontrar una solución. Para encontrar realmente la solución, observa que se trata de un sistema de ecuaciones en cuatro variables de la forma

$$ \begin{pmatrix}w_1'\\x_1'\\y_1'\\z_1'\end{pmatrix} = \begin{pmatrix} w_1&w_2&w_3&1\\x_1&x_2&x_3&1\\y_1&y_2&y_3&1\\z_1&z_2&z_3&1\end{pmatrix}\begin{pmatrix}a_{11}\\a_{12}\\a_{13}\\b_1 \end{pmatrix} $$

que debería ser capaz de resolver para $(a_{11},a_{12},a_{13},b_1)^T$ utilizando los métodos típicos. Si se hace lo mismo con las otras dos filas de la ecuación matricial original $(1)$ , puede encontrar de forma similar $(a_{21},a_{22},a_{23},b_2)^T$ y $(a_{31},a_{32},a_{33},b_3)^T$ . Eso te da la transformación afín completa $Ax + b$ .

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