tomografia reconstruccion partir online objeto modelos imagenes imagen fotos crear convertir 3d computer-vision triangulation 3d-reconstruction

reconstruccion - Reconstrucción 3D a partir de imágenes de cámara calibradas



reconstruccion 3d matlab (1)

Estoy trabajando en la reconstrucción 3d. Y ahora cuando considero un par de imágenes. Tengo un conjunto de puntos correspondientes. y tengo mis detalles de la cámara. Por ejemplo, tengo detalles de enfoque, matriz de rotación y traducción (4 * 4). y quiero proyectar mis puntos en 3D (triangulación). Por lo que llegué a saber, es bastante sencillo con el álgebra de factores. Pero aún necesito entenderlo claramente. ¿Alguien tiene una idea sobre cómo seguir esto? ¡Estoy trabajando para Matlab, así que necesito implementar eso! Puedo ser demasiado amplio o lo que sea. ¡Pero por favor guíame!


Tendrá que calcular una matriz de cámara a partir de sus atributos de cámara conocidos; esta es una matriz de proyección de escala que mapea un punto homogéneo 3D en las coordenadas de tus píxeles 2D. (Tenga en cuenta que si quiere una precisión decente también necesitará medir y rectificar sistemáticamente la distorsión de la lente de su cámara, pero ese es un detalle de segundo orden).

Luego, multiplique su matriz de cámara con su matriz de postura (la matriz de rotación / tranlación 4x4 que mencionó) para obtener una matriz (digamos T para total) que proyecte un punto en su sistema de coordenadas 3D elegido en las coordenadas píxel (rectificadas) de su cámara :

pixel vector Q.x = T * point P.x Q.y P.y Q.z P.z Q.w 1 pixel coordinates = (Q.x/Q.w, Q.y/Q.w) "pixel depth" = Q.z/Q.w

Puede invertir esta matriz y usarla para proyectar coordenadas de píxeles en rayos 3D eligiendo dos profundidades: una en la ubicación de la cámara y otra que no (mejor elija la profundidad de la unidad o el punto en el infinito). No puede esperar que sus rayos se corten exactamente, pero puede obtener una ubicación que mejor se ajuste en función de dónde se encuentran los dos rayos correspondientes más cercanos; de manera más general, puede tratar la intersección de un número arbitrario de rayos como un problema de mínimos cuadrados (idealmente, condicionado al error esperado de cada rayo).