Red de conocimientos turísticos - Conocimiento turístico - Cómo encontrar la matriz de rotación de la cámara

Cómo encontrar la matriz de rotación de la cámara

Wikipedia, la enciclopedia libre

Ir a: Navegación, búsqueda

La matriz de transformación es un concepto del álgebra lineal matemática.

En álgebra lineal, las transformaciones lineales se pueden representar mediante matrices. Si T es una transformación lineal que asigna Rn a Rm, y X es un vector columna con n elementos, entonces llamamos a la matriz A de m×n la matriz de transformación de t.

Se puede expresar cualquier transformación lineal usar una matriz en una forma consistente que sea fácil de calcular, y se pueden conectar fácilmente múltiples transformaciones mediante la multiplicación de matrices.

Las transformaciones lineales no son las únicas transformaciones que se pueden representar mediante matrices. Tanto la transformación afín como la proyección en perspectiva de la dimensión Rn se pueden expresar como la transformación lineal de la dimensión RPn+1 (es decir, el espacio de proyección real n+1-dimensional) bajo coordenadas homogéneas. Por lo tanto, la transformación matricial 4×4 se usa ampliamente en gráficos por computadora tridimensionales.

[Editar] Encuentra la matriz de transformación

Si ya existe una función que transforma linealmente T(x), entonces simplemente transforma cada vector de la base estándar en T, y luego inserta el resultado en la matriz En las columnas, la matriz de transformación A se puede determinar fácilmente, es decir,

Por ejemplo, la función T(x) = 5x es una transformación lineal, que se obtiene mediante lo anterior proceso (asumiendo n = 2).

[Editar] Ejemplos de aplicación en gráficos bidimensionales

La transformación geométrica más utilizada es la transformación lineal, que incluye rotación, escala, corte, reflexión y proyección ortográfica. En un espacio bidimensional, la transformación lineal se puede representar mediante una matriz de transformación de 2 × 2.

[Editar]Rotación

¿La fórmula de transformación para el ángulo de rotación en sentido antihorario θ alrededor del origen es x' = xcos θ? Ysin θ e y' = xsin θ+ycos θ, expresado como una matriz:

[Editar] Escalado

La fórmula de escalado es suma, expresada como una matriz:

[editar]Cortar

Hay dos formas posibles de recorte. La fuerza cortante paralela al eje X se convierte en x' = x+ky, y' = y, y la matriz se expresa como:

La tangente paralela al eje y se convierte en x' = x, y' = y+ kx, la matriz se expresa como:

[Editar] Reflexión

Para reflejar el vector a lo largo de la recta que pasa por el origen, supongamos que ( ux, uy) es el vector unitario en la dirección de la recta. La matriz de transformación es:

La reflexión a lo largo de una línea recta que no pasa por el origen es una transformación afín, no una transformación lineal.

[Editar] Proyección ortogonal

Para proyectar ortogonalmente el vector sobre la recta que pasa por el origen, suponiendo que (ux, uy) es el vector unitario de la recta dirección, la matriz de transformación es:

Igual que la reflexión, la transformación de una proyección ortográfica a una línea recta que no pasa por el origen es una transformación afín, no una transformación lineal.

La proyección paralela también es una transformación lineal y también puede representarse mediante una matriz. Pero la proyección en perspectiva no es una transformación lineal y debe representarse mediante coordenadas homogéneas.

[editar] Combinar transformaciones y transformaciones inversas

Una fuerza impulsora principal para usar matrices para representar transformaciones lineales es la facilidad de combinar transformaciones inversas.

Esta combinación se puede lograr mediante la multiplicación de matrices. Si A y B son dos transformaciones lineales, entonces el proceso de transformación A y transformación B del vector X es el siguiente:

En otras palabras, la combinación de las transformaciones A' y B es equivalente a la transformación de el producto de dos matrices. Cabe señalar que la primera palabra A seguida de B se refiere a BA, no a AB.

La posibilidad de combinar dos transformaciones multiplicando las dos matrices permite realizar la inversa de la transformación invirtiendo la matriz. A -1 representa la transformación inversa de a.

Las matrices de transformación no siempre son invertibles, pero normalmente pueden interpretarse de forma intuitiva. En la última sección, casi todas las transformaciones son reversibles. La transformación de escala también es reversible siempre que sx y sy no sean cero. Además, las proyecciones ortográficas son siempre irreversibles.

[Editar]Otros tipos de transformaciones

[Editar]Transformación afín

Para representar transformaciones afines es necesario utilizar coordenadas homogéneas, es decir, vectores tridimensionales (x, y, 1) para representar un vector bidimensional, y lo mismo ocurre con dimensiones altas. De esta forma, las transformaciones se pueden representar mediante multiplicación de matrices. x ' = x+tx; Y' = y+ty se convierte

Al agregar una columna y una fila a la matriz, todas las transformaciones lineales se pueden convertir en afines excepto el elemento en la esquina inferior derecha que es 1 transformación. Por ejemplo, la matriz de rotación anterior se convierte en

De esta manera, se pueden integrar sin problemas varias transformaciones utilizando el mismo producto matricial que antes.

Cuando se utiliza una transformación afín, el vector de coordenadas homogéneo w nunca cambia, por lo que puede considerarse como 1. Sin embargo, este no es el caso en la proyección en perspectiva.

[editar]Proyección en perspectiva

Otra transformación importante en los gráficos por ordenador 3D es la proyección en perspectiva. A diferencia de la proyección paralela, que proyecta objetos al plano de la imagen a lo largo de líneas paralelas, la proyección en perspectiva proyecta objetos al plano de la imagen basándose en líneas rectas que comienzan desde el centro de la proyección. Esto significa que cuanto más lejos del centro de la proyección, más pequeña será la proyección, y cuanto más cerca esté la distancia, mayor será la proyección.

La proyección en perspectiva más simple utiliza el centro de proyección como origen de coordenadas y z = 1 como plano de la imagen, por lo que la proyección se transforma en x' = x/z' = y/z, en forma homogénea; coordenadas Expresadas como:

(El resultado de esta multiplicación es (xc, yc, zc, wc) = (x, y, z, z).

Los elementos homogéneos después la multiplicación wc generalmente no es 1, por lo que para volver a mapear el plano real, se requiere una división homogénea, es decir, cada elemento se divide por wc:

Las proyecciones en perspectiva más complejas se pueden transformar combinando rotación, escala y traslación. , corte, etc. imagen.

Encontré esto. Espero que esto ayude.