Cómo procesar en Meshroom

April 3, 2020

  1. Hardware
    • Nvidea GPU
    • 32 Gb RAM
  2. Adquisición de las imágenes

  3. Flujo de trabajo
  • Guardar el proyecto
  • Todos los datos se guardarán en MeshroomCache
  • Cuando termine el procesamiento podremos mover el archivo “.mg” y la carpeta MeshroomCache
  • Importar las imágenes arrastrando y soltando en el área “imágenes”
  • En el caso de que el sensor utilizado no esté en la BD aparecerá un warning
  • Una vez están las imágenes pulsaremos el botón Start. La barra de progreso nos avisará de cuando esté terminado:
    • Verde: calculado
    • Naranja: está siendo calculado
    • Azul: pendiente de calcular
    • Rojo: error
  1. Visualizar y exportar los resultados Cuando los resultados obtenidos por Structure From Motion hayan sido calculados, la nube de puntos se representará. En este momento tendremos en cuenta qué imágenes han sido reconstruidas con éxito.

Cuando el modelo ha sido calculado por completo, pulsaremos “Load Model” para visualizar la malla 3D con textura.

Los resultados ya estarán disponibles en MeshroomCache. Puedes también pulsar sobre un nodo para que te redirija a la carpeta donde se aloja.

  1. Postproceso

El sistema de nodos permite añadir un nuevo subproceso, en este caso para crear una malla de menor tamaño.

En el editor de nodos pulsaremos botón derecho > MeshDecimate, al cual le daremos como input la malla de alta densidad: Meshfiltering.output –> MeshDecimate.input

Seleccionaremos el nodo MeshDecimate y ajustaremos sus parámetros. Para empezar el cálculo pulsaremos Start, o botón derecho en el nodo y “Compute”.

  1. Re-texturización

Al tener una nueva geometría debemos de aplicarle de nuevo la textura con unas nuevas UVs.

En el editor gráfico con botón derecho ducplicaremos el nodo Texturing. Eliminamos Texturing2.inputMesh > Remove. Creamos una conexión MeshDecimate.output –> Texturing2.inputMesh

Al hacerlo, configuramos un proceso de texturización que utilizará el resultado de la reducción como geometría de entrada. Ahora podemos ajustar los parámetros de Texturizado si es necesario, y comenzar el cálculo.

  1. Retopología externa y UVs personalizadas

Esta configuración también se puede usar para reproyectar texturas en una malla que se ha modificado fuera de Meshroom (por ejemplo: retopología / unwrap). La única restricción es permanecer en el mismo espacio 3D que la reconstrucción original y, por lo tanto, no cambiar la escala ni la orientación.

Luego, en lugar de conectarlo a MeshDecimate.output, escribiríamos directamente la ruta del archivo de nuestra malla en el parámetro Texturing2.inputMesh desde el editor de atributos del nodo. Si esta malla ya tiene coordenadas UV, se utilizarán. De lo contrario, generará nuevos UV basados en el “Método de Unwrap” elegido.

  1. crear una malla a partir de los puntos obtenidos por SfM

El MVS consiste en crear mapas de profundidad para cada cámara, fusionándolos y utilizando esta gran cantidad de información para crear una superficie. La generación de esos mapas de profundidad es, en este momento, la parte más intensiva de cómputo de la tubería y requiere una GPU habilitada para CUDA. Ahora explicaremos cómo generar una malla rápida y aproximada directamente desde la salida SfM, para obtener una vista previa rápida del modelo 3D. Para hacer eso, usaremos el sistema nodal una vez más.

  • Click derecho en DepthMap > Duplicate nodes from Here (icono “»”) para crear una rama en el gráfico y mantener disponible el resultado anterior.
    • alternativa: Alt + clic en el nodo
  • Seleccione y elimine DepthMap y DepthMapFilter
  • Conecte PrepareDenseScene.input ⇒ Meshing.input
  • Conecte PrepareDenseScene.output ⇒ Texturing.inputImages

Con este acceso directo, el Mallado usa directamente los puntos 3D del SfM, que omiten los pasos intensivos en cómputo y aceleran drásticamente el cálculo del final de la tubería. Esto también proporciona una solución para obtener una malla de borrador sin una GPU Nvidia.

La desventaja es que esta técnica solo funcionará en conjuntos de datos altamente texturizados que pueden producir suficientes puntos en la nube de puntos dispersos. En todos los casos, no alcanzará el nivel de calidad y precisión de la tubería predeterminada, pero puede ser muy útil para producir una vista previa durante la adquisición o para obtener las mediciones en 3D antes del modelado fotográfico.


Enlaces de interés:

Fuente: https://sketchfab.com/blogs/community/tutorial-meshroom-for-beginners/?fbclid=IwAR0R5cUEg126pMY3dzEOkO79eA7_D5dRcaNOr_5N0RgEZRf8Pgvm6RIB7Bg