Archivo de la etiqueta: Fotogrametria

Escaneado 3D a partir de vídeo

Las técnicas de escaneado 3D mediante fotogrametria nos permiten obtener modelos en 3D de objetos del mundo real mediante la toma de una serie de fotografías adyacentes del objeto a modelar. El software de fotogrametría se encargará de encontrar puntos análogos en el conjunto de fotografías, realizando una triangulación que le permita representar el modelo en 3D.

Para que el modelo se pueda generar correctamente, es necesario que las fotografías se puedan solapar. Que todas tengan un poco de la anterior para que el software pueda enlazarlas. Algo similar a lo que hacen los móviles para hacer fotos panorámicas. Eso es difícil de conseguir tomando fotos «a pulso», por lo que se suele montar la cámara en un trípode, poner el objeto en una peana giratoria y se van tomando fotos a medida que se va girando poco a poco el trípode. Luego, subimos un poco el trípode, modificamos el ángulo de enfoque, y volvemos a empezar. Y así se hacen barridos completos con varias alturas y ángulos.

Sin embargo, si lo piensas, una manera de conseguir el mismo efecto sin necesidad de tanto montaje sería hacer un vídeo con los barridos «a mano» y después extraer fotogramas del vídeo de forma automática. Y eso es lo que voy a contar en esta entrada.

Recientemente, he estado en la National Gallery of Art de Vilnius donde decidí hacer algunas pruebas con esta técnica. Para ello, tomé unos vídeos cortos con mi viejo BQ Aquarius de algunas esculturas con la idea de generar modelos en 3D de algunas de las piezas expuestas. Veamos los resultados.

Los vídeos

Como he comentado, los vídeos fueron tomados con un móvil relativamente antiguo, aunque es capaz de grabar en 720p, está lejos de la calidad que se puede obtener con dispositivos más modernos. Traté de hacer un vídeo en el que iba haciendo un barrido de la pieza a escanear, lo que no siempre era fácil, porque la mayoría estaban apoyadas o ubicadas muy cerca de la pared, con lo que no podía dar la vuelta entera. Dependiendo de la pieza, los vídeos oscilan entre 25 y 60s.

Veamos un ejemplo:

Se trata de Nike (1978) de Petras Mazūras. (fichero de vídeo fuente)

Como se puede ver, el vídeo apenas dura unos segundos y se ha hecho un único barrido. La estátua es bastante alta y no disponía de un palo selfie o similar para poder obtener otros ángulos.

Los fotogramas

Una vez en el ordenador, lo que voy a hacer es extraer fotogramas del vídeo para obtener una secuencia de imágenes adyacentes.

Para ello, utilizaré ffmpg, un comando de GNU/Linux para tarbajar con vídeos que proporciona una infinidad de opciones. En este caso, simplemente utilizaré una opción que extrae fotogramas (-r) y le pasaré el número de fotogramas que quiero obtener por segundo. Es tan fácilo como escribir lo siguiente en el terminal (en la misma ruta en la que se encuentra el vídeo):

$ ffmpeg -i nike.MP4 -r 5 img-%03d.png

Lo que hago es invocar el programa, seguido de la opción -i, para indicarle el archivo de entrada (input), que es directamente el archivo con el vídeo que he extraído del móvil. Luego le pongo la opción -r y el valor 5, para decirle que saque 5 fotogramas por cada segundo de vídeo. Los archivos resultantes se generarán en el mismo directorio con los nombres img-001.png, img-002.png… y así sucesivamente.

Para más información sobre el uso del comando ffmpg, consultar el siguiente enlace.

En cualquier caso, comparto el resultado de la operación en un fichero ZIP:

Archivo ZIP con las fotos extraídas del vídeo.

Procesando

Para procesar las imágenes, he utilizado el Metashape con las opciones por defecto. Prácticamente, arrastrar y soltar. El proceso duró poco menos de una hora.

El resultado

Este es el resultado:

Nike, 1978 by Carlos M on Sketchfab

Como se puede ver, al modelo le falta detalle, pero teniendo en cuenta la rapidez con la que se tomó el vídeo y la poca duración del mismo, el resultado es espectacular.

Otros ejemplos

A continuación comparto otros modelos generados siguiendo el mismo procedimiento, todos ellos capturados el mismo día durante la visita al museo (incluyo el archivo de vídeo original por si quieres hacer pruebas):

Figure, 1970 by Carlos M on Sketchfab (fichero de vídeo fuente)

The First Swallows, 1963 by Carlos M on Sketchfab (fichero de vídeo fuente)

The Dance, 1945-1946 by Carlos M on Sketchfab (fichero de vídeo fuente)

Conclusión

Con el proceso expuesto en la entrada se demuestra la facilidad con la que se puede escanear un objeto 3D con la ayuda de un teléfono móvil. Aunque la extracción de fotogramas no consigue imágenes de tanta calidad como la fotografía individual (de hecho, muchos fotogramas eran desechados por el software de fotogrametría por estar borrosos o movidos), el resultado es sorprendente y con una buena cámara y un buen barrido, se pueden conseguir resultados sorprendentes.

Esta técnica es especialmente útil para casos en los que no es posible ubicar el objeto en una peana o cuando es muy grande (por ejemplo, para escanear una estatua en un parque). Sin duda, es una técnica que puede ser muy interesante por su sencillez para trabajarla en el aula o durante una actividad extraescolar.

Bonus

Hablando de estatuas en el parque, este el resultado de procesar con esta técnica un vídeo a un tótem tallado en la madera típico de Lituania que encontramos en un bosque al sur del país. El vídeo era un barrido con vuelta completa al monumento.

Escultura en el bosque by Carlos M on Sketchfab

black and gray mining rig

Escaneado 3D sin tarjeta gráfica CUDA

En la entrada anterior he hablado de técnicas de escaneado 3D basadas en la fotogrametria. Todo ello, usando un software abierto, gratuito y multiplataforma, como es Meshroom, por tanto accesible para toda aquella persona que quiera iniciarse en este apasionante mundo.

No obstante, sí que comentaba que había una limitación en Meshroom: es necesario disponer de una tarjeta gráfica Nvidia «CUDA enabled» ya que algunas partes del proceso están implementadas mediante unidades de procesamiento gráfico CUDA y, por tanto, necesitan un hardware compatible con ellas.

Esto puede ser un impedimento, especialmente, teniendo en cuenta que, habitualmente, los ordenadores que se tienen en los centros educativos no disponen de hardware de acceleración 3D (GPU). ¿Qué hacemos en estos casos?

Personalmente, me he encontrado con esta situación y tras darle algunas vueltas (y buscar un poco por Internet), he dado con tres posibles soluciones, que paso a explicar a continuación.

Para ver las diferencias entre una y otra, voy a procesar el siguiente objeto en un ordenador sin tarjeta gráfica (un portátil con gráfica integrada):

Capitán vintage

La escena está compuesta por 82 fotografías desde diferentes ángulos.

Veamos las diferentes soluciones:

Solución #1: Evitar las partes del proceso que usan CUDA

Esta es la solución más fácil de implementar, pero también la que da peores resultados. Se trata de eliminar del proceso de Meshroom aquellos pasos en los que haga falta el uso de CUDA. Simplemente, esos pasos no se harán (y por tanto, el reconocimiento del objeto será peor).

En concreto, los únicos pasos que requieren de una tarjeta gráfica con acceleración 3D (GPU) son los relativos a la creación del mapa denso. Si no hacemos mapa denso, problema resuelto.

Para ello, basta con eliminar los nodos en el editor de grafo de flujo de Meshroom. Hay que eliminar los siguientes: PrepareDenseScene, DeepMap y DeepMapFilter.

Eliminando un nodo (paso) en Meshroom

Una vez eliminados, conectamos el output del nodo anterior (StructureFromMotion) al input del siguiente (Meshing):

Para unirlos, pinchamos en el circulito blanco de output y arrastramos hasta el de input

Con este pequeño cambio, haremos que Meshroom funcione hasta el final en cualquier ordenador sin tarjeta gráfica.

Los puntos fuertes de esta solución es que es muy fácil de hacer y no requiere de ningún software ni recurso adicional. Por contra, el resultado deja mucho que desear respecto de un procesado con mapa denso.

Resultado de procesar la escena con Meshroom eliminando esos nodos es esta:

Solución #2: Usar un software que no requiera CUDA

Si queremos obtener unos mejores resultados podemos prescindir de Meshroom que, al fín y al cabo, está diseñado para funcionar con una tarjeta gráfica 3D y probar otro software de fotogrametria que no tenga este requerimiento.

En mi caso, he hecho pruebas satisfactorias con MVE. Multi-View Environment , como Meshroom, es un programa libre, gratuito y multiplataforma que, desde la línea de comandos, permite realizar el proceso de reconstrucción de objetos desde fotografías. El paquete está compuesto por varios programas, cada uno de ellos se encarga de realizar una parte del proceso, por lo que es necesario ejecutarlos uno detrás de otro siguiendo el orden establecido.

En los siguientes enlaces, se pueden encontrar manuales para ponerlo en marcha en los diferentes sistemas operativos:

Lamentablemente, MVE no se distribuye como programa «al uso» y es necesario bajarse los ficheros fuentes y compilarlos, por lo que no es descargar y listo. En los enlaces anteriores se explica, paso a paso, como realizar esta compilación en los diferentes sistemas.

Una vez compilado, el programa se lanza desde el terminal. Hay un comando para cada paso del proceso, al que hay que pasarle la ruta que contiene los archivos que cogerá como fuente y la ruta en la que almacenará los resultados (que a su vez, será la entrada del siguiente comando).

Para simplificar el proceso, he creado un script que realiza de forma consecutiva todos los pasos, solo hay que ejecutarlo en la carpeta de MVE y pasarle la ruta de las imágenes y la ruta en la que ha de escribir el resultado:

Uso:

$ mve-pipeline.sh ruta-imagenes ruta-destino

El punto fuerte de esta solución es que obtiene unos resultados mucho más cercanos a la realidad. El principal inconveniente, la dificultad de instalación y puesta en marcha.

El resultado de procesar la escena con MVE es el siguiente:

Solución #3: Usar procesamiento en la nube

Esta solución tiene un enfoque diferente: en lugar de buscar como ejecutar Meshroom en un ordenador sin GPU, lo que vamos a hacer es ejecutar Meshroom en un ordenador con GPU desde un ordenador sin GPU.

Para ello haremos uso de la computación en la nube a través del servicio Google Colab. Este servicio, disponible a través de una cuenta personal de Google como una herramienta más, permite la ejecución remota e interactiva de comandos en un servidor en la nube (al que se le puede asignar una GPU).

Así, Google Colab nos permite usar durante 12h un ordenador (una máquna virtual) con las siguientes características:

  • GPU: Tesla K80 , con 2496 núcleos CUDA, versión 3.7, 12GB de GDDR5 VRA
  • CPU: Intel Xeon 2.3Ghz , 45MB Cache
  • RAM: ~12.6 GB
  • Disk: ~320 GB

Cada 12 horas, la máquina se elimina, siendo necesario volver a crearla y instalar todo. Si quieres más información, aquí hay un breve tutorial con ejemplos.

Para utilizarlo, basta con ir a https://colab.research.google.com e iniciar sesión con nuestra cuenta personal de Google.

Una vez dentro, seleccionamos Runtime > Change runtime type y seleccionamos GPU.

Activamos la GPU en colab

Ahora creamos dos carpetas input y output. En la carpeta input subimos las imágenes de nuestra escena.

En input se han subido todas las imágenes de la escena

Ahora instalamos Meshroom en colab. Para ello, creamos un fragmento de código y ponemos lo siguiente:

!mkdir temp
!mkdir meshroom
%cd temp!wget -N https://github.com/alicevision/meshroom/releases/download/v2019.2.0/Meshroom-2019.2.0-linux.tar.gz
!tar -xvf Meshroom-2019.2.0-linux.tar.gz -C ../meshroom

Pulsamos el botón de «play» para ejecutar la secuencia de comandos.

Así ejecutamos el fragmento

Ahora, ejecutamos Meshroom, reproduciendo el siguiente fragmento:

/content/meshroom/Meshroom-2019.2.0/meshroom_photogrammetry --input /content/input --output /content/output

El proceso será más lento, pero no tarda mucho más que la ejecución en local.

El comando en ejecución

Esperamos a que se complete el proceso. Una vez termine, en la carpeta output tendremos el resultado, que podemos descargar desde la carpeta output.

Hay que descargar los tres archivos: el png, el mtl y el obj

Si quisieramos procesar otra escena, sólo bastaria borrar las imágenes de input y la salida del output, subir las nuevas imágenes a input y volver a darle a ejecutar al fragmento de código que ejecuta meshroom (no hace falta volver a instalar Meshroom, a no ser que hayan pasado las 12h y se haya borrado la máquina virtual).

Para simplificar el proceso, comparto mi notebook con todos los pasos ya implementados y con comentarios:

Para importarlo a Google Colab, hay que ir a File > Upload Notebook

Importar Notebook

Aunque parezca un proceso complejo, lo cierto es que resulta sorprendentemente sencillo para lo que, en realidad, estamos haciendo. La interfaz de Google Colab hace que la ejecución de comandos sea muy sencilla y que, incluso, se pueda importar una plantilla con los pasos ya preparados. El punto negativo de esta solución es el hecho de que haga falta estar conectado a Internet para poder usarla.

El resultado de procesar la figura con Google Colab es el siguiente:

Conclusiones

Como podéis ver, es posible utilizar Meshroom en equipos sin tarjeta gráfica de diversas maneras. Sin embargo, las soluciones sencillas dan malos resultados y, para obtener mejores resultados hay que recurrir a soluciones más imaginativas o cambiar de programa. Lo bueno es que, una vez preparadas las soluciones, se puede reutilizar el entorno (ya sea en MVE o en Google Colab) para procesar varias escenas, con lo que el tiempo invertido se compensa con resultados que, en algunos casos, no tienen nada que envidiar de los obtenidos con una GPU.

Recursos didácticos mediante escaneado 3D

En los últimos años he estado utilizando la tecnologia 3D en el aula de diversas maneras, algunas de ellas las he comentado en este blog, pero siempre partiendo del diseño mediante la combinación de formas geométricas en 2D y 3D para crear piezas y objetos para que fuesen impresos y, por tanto, materializados en el mundo real.

Una de las aplicaciones de esta tecnología ha sido la de crear en el aula recursos táctiles que puedan dar servicio a personas con discapacidad visual, de acuerdo a los objetivos del proyecto Erasmus+ PRINT3D.

Por ejemplo, el diseño de unas células en 3D puede suponer un recursos muy práctico para enseñar las partes de una célula de forma táctil en clase de biología.

Células eucariotas y procariotas

Las posibilidades de este campo son muchas y muy variadas, pero el problema llega cuando no se trata de diseñar una abstracción, sino de recrear un objeto real. ¿Cómo representamos táctilmente, por ejemplo, la morfología de la concha de un molusco en una clase de biología?

Fuente: http://www.gastrosoler.com

En este caso, el diseño geométrico se ve muy limitado para ofrecer una solución aceptable.

Es en este punto donde hace su entrada el proyecto Erasmus+ AMUSING, completando a su predecesor PRINT3D a través de invertir el punto de vista: ahora no se trata de trasladar los objetos de la pantalla a la realidad, sino de la realidad a la pantalla.

Efectivamente, este nuevo proyecto pone el foco en el escaneado 3D; Si no podemos diseñar una concha de molusco realista combinando formas geométricas, la obtendremos directamente de la realidad y luego, la compartimos en Internet para que otras personas puedan imprimirla en 3D y utilizarla como recurso en el aula.

Imagen
Una concha escaneada y replicada a varios tamaños y calidades.

Fotogrametría: La clave de todo esto

Lo mejor de todo es que las técnicas de escaneado 3D se encuentran en un momento de madurez muy interesante, lo que las pone al alcance del aula sin necesidad de una gran inversión económica ni de la necesidad de tener unos conocimientos técnicos muy elevados.

En ese sentido, me atrevería a decir que estas técnicas tienen una curva de aprendizaje mucho mas pronunciada que la impresión 3D: se obtienen resultados sorprendentes al poco tiempo de empezar.

La tecnología clave detrás del escaneado 3D del que voy a hablar aquí es la fotogrametria. Según la Wikipedia « es el arte, ciencia y tecnología para la obtención de medidas fiables de objetos físicos y su entorno, a través de grabación, medida e interpretación de imágenes y patrones de energía electromagnética radiante y otros fenómenos”.

Lo cierto es que la fotogrametría ya lleva bastante tiempo entre nosotros y, aunque no nos demos cuenta, está presente en multitud de aplicaciones tecnológicas actuales.

La fotogrametria se usa mucho para la obtención de mapas 3D. Fuente: Wikipedia

De forma muy resumida, se trata de hacer fotos de un objeto desde diferentes ángulos para calcular las diferencias entre las imágenes y así interpretar medidas y, por tanto, la forma.

No es un proceso conceptualmente sencillo, pero afortunadamente, como veremos a continuación, el software actual permite realizarlo de una manera intuitiva sin necesidad de configurar parámetros avanzados.

El proceso con más detalle

Antes de ver el software, vamos a ver los pasos, a grandes rasgos, se realizan para obtener un modelo en 3D a partir de un objeto real.

  • Toma de imágenes: En primer lugar, hay que tomar fotos desde diferentes ángulos. Se recomienda que la iluminación sea buena y la foto esté bien enfocada. Por ello, es recomendable usar un trípode y, si puede ser, ubicar el objeto en una peana giratoria para facilitar su giro. Lo ideal es hacer barridos 360º desde varios ángulos, para capturar todos los detalles del objeto (por ejemplo, con la cámara a 10º, luego a 40º y finalmente a 80º). Es importante que las fotos se solapen unas con otras, por lo que el giro del objeto entre foto y foto, debería de ser inferior a 15º).

Hasta aquí es lo que hacemos nosotros, de lo que viene ahora ya se encarga el programa de fotogrametría cuando le pasamos las fotos.

  • Detección de puntos análogos (Feature extraction): Se analizan las fotos y, gracias a los solapamiento, se detectan los puntos homólogos, es decir, detalles del objeto que aparecen en varias fotos.
  • Comparación de puntos homólogos (Feature matching): Se comparan los puntos homólogos de las diferentes imágenes para encontrar coincidencias, es decir, el mismo punto en diferentes imágenes. Esta es la clave del proceso y de la cantidad de puntos que relacione, dependerá la calidad del modelo.
  • Triangulación (Structure from motion): A partir de los puntos homólogos y de los cambios detectados entre un punto homólogo en una imagen y el mismo punto en otra, se calcula el desplazamiento del objeto y su nube de puntos (coordenadas que definen el volumen del objeto).
  • Creación del mapa denso (Deep map): A partir de la triangulación, se interpolan nuevos puntos homólogos para acabar de completar el modelo y darle mayor detalle a la nube de puntos. Esta fase es la más laboriosa y suele requerir del uso de una tarjeta gráfica.
  • Mallado (Meshing): Una vez interpolado el mapa denso, se teje una malla en 3D, como una estructura de alambre, que recrea el volúmen detectado.
  • Texturizado (Texturing): Es el proceso final en el que se añade a la malla una capa con una imagen generada a partir de las fotografias en las que se le de el aspecto real del objeto.

Y con esto estaría todo, si el programa ha podido trabajar con las fotos proporcionadas, obtendríamos un archivo con extensión OBJ en el que encontraríamos el objeto en 3D.

Ya os adelanto que esto no siempre ocurre y, a veces el programa muestra un error porque no ha podido procesar bien las imágenes. Entonces, hay que descartar sesiones fotográficas enteras por una mala iluminación o enfoque, que hace que el software de fotogrametría no pueda sacar nada en claro del objeto.

Para evitar que eso ocurra, en el siguiente punto, recomiendo el uso de algunos utensilios relativamente fáciles de encontrar para optimizar la toma de fotografías. Pero antes, finalicemos la explicación de este proceso, pues si todo ha ido bien, una vez generado el archivo OBJ, volvemos a tomar protagonismo en un último paso:

  • Revisión del modelo: Tenemos que reparar los posibles errores que aparezcan en el modelo generado: caras sin cerrar, vértices duplicados, etc. Esto lo podemos hacer con cualquier software de edición 3D (Meshlab, Microsoft 3D builder…). La mayoría de ellos incorporan asistentes para reparar el modelo. También en este paso, tenemos que eliminar aquellas zonas del diseño que no sean relevantes y que se han generado en el modelo: partes de la peana, objetos del fondo, etc. Normalmente, basta con seleccionarlos en un programa de edición 3D y darle a la tecla suprimir.

Con esto ya estaría todo, y tendríamos nuestro modelo en 3D para imprimir (enviar el OBJ a Cura 3D) o para compartir (subirlo a un repositorio online como Sketchfab).

Recursos necesarios

Como se ha comentado, la toma de imágenes es un paso crítico que va a afectar a todo el proceso posterior.

Lo ideal es disponer de un mini estudio fotográfico, para conseguir imágenes con la mejor calidad posible. Tampoco hace falta un montaje profesional, aunque cuanto más profesional sea, mejores imágenes se obtendrán.

A continuación, os propongo una serie de elementos, relativamente fáciles de encontrar para montar ese mini estudio con el que empezar con la fotogrametría (con * lo que es imprescindible, el resto es opcional):

  • Cámara digital* No hace falta que sea una reflex, pero si que es muy recomendable que tenga una buena lente y se pueda configurar en modo manual.
  • Trípode: Para evitar vibraciones en la cámara, especialmente, si se ha puesto una velocidad de obturación baja. Nos ayudará también a establecer las diferentes alturas e inclinaciones de cámara con la que haremos el barrido 360º.
  • Plato giratorio: Esto ayuda a realizar el barrido 360º del objeto. Vamos girando el plato de 15º en 15º, y hacemos una foto en cada paso. Puede ser una peana giratoria de una televisión.
  • Caja de luz y focos: nos van a permitir obtener una iluminación uniforme y sin sombras.
  • Un cartón o tela de croma, que ayudará a eliminar detalles del fondo de la imagen y, por tanto, a agilizar el procesado de las imágenes.
  • Ordenador *, si tiene tarjeta gráfica NVidia (compatible con CUDA), mejor.

Como se puede ver, con una buena cámara y un buen ordenador ya podemos trabajar. Y, sí, también valen las cámaras del móvil.

Sobre el software

Una vez tomadas las fotografías, hay pasarlas al software de fotogrametria para que haga la magia.

Existen multitud de programas de fotogrametria, algunos gratuitos, otros de pago. Entre los primeros, cabe destacar Meshroom, que es un software libre multiplataforma bastante versátil, intuitivo y que, además, da muy buenos resultados.

En el siguiente vídeo se puede ver su funcionamiento:

Se puede descargar de forma gratuita desde su web:

Además, tambien es interesante disponer de un programa de visualización de modelos 3D, con el que veremos los resultados. En Windows se puede usar el 3D Builder que se incluye con Windows 10. En GNU/Linux se puede usar Meshlab.

Ejemplo de aplicación

Por poner un ejemplo práctico del proceso, vamos a volver sobre el ejemplo del gasterópodo que queremos usar en la clase de biología. Nos han prestado uno y lo preparamos todo para fotografiarlo.

Cámara, trípode, peana giratoria y una tela roja para homogeneizar el fondo.

Hemos obtenido 36 fotografías, haciendo barridos 360º (vuelta completa a la peana) en 3 ángulos de cámara diferentes. El resultado tiene este aspecto:

Una de las fotos

Comparto las fotos, por si alguien quiere hacer pruebas:

Dataset 36 fotos gasteropodo

Una vez hemos hecho las fotos, las arrastramos en el Meshroom:

Arrastrar y soltar

Ahora pulsamos el botón Start para que empiece el proceso. Como se puede ver, en la parte inferior hay un grafo en el que se detallan todos los pasos que hace el programa. Si os fijáis, los pasos son los mismos que he detallado más arriba.

Durante el proceso veremos como el programa va pasando por los diferentes cuadrados, cambiando de color: naranja significa en proceso, verde, paso completo. Si sale rojo es porque el paso ha fallado.

El proceso puede tardar minutos u horas. Dependerá del número y tamaño de las imágenes, de la potencia del ordenador y de la presencia o no de una tarjeta gráfica.

Si todo va bien, podremos ver la nube de puntos generada en el área de representación de la derecha.

La nube de puntos

Un detalle muy interesante de esa visualización es que también nos muestra la ubicación de la cámara que ha calculado para cada imagen. Si os fijáis, al final lo que se ha intentado con los diferentes barridos es emular una semiesfera.

Para ver el resultado del proceso, es decir, el objeto generado, hacemos clic derecho sobre el último nodo (Texturing) y seleccionamos Open folder. Esto abrirá la carpeta en la que está el archivo OBJ que ha generado Meshroom.

Esto abre el directorio donde está el archivo resultante

Si abrimos el archivo OBJ en el Meshlab, veremos como ha capturado a la perfección la forma del caparazón:

Faltaría eliminar la base negra con el mismo programa

Ahora, puedo llevar este archivo OBJ a la impresora 3D para replicarlo tantas veces como quiera:

El objeto «fotocopiado»

También puedo subir el archivo OBJ a algún repositorio de internet para compartirlo o visualizarlo de forma interactiva en diferentes medios, como este blog:

Gasterópodo Cypraecassis rufa by Carlos M on Sketchfab

En caso de no tener un ordenador con tarjeta gráfica CUDA enabled, lee esta entrada para ver como poder obtener buenos resultados con fotogrametria.

Conclusiones

La fotogrametría es un proceso maduro para la generación de modelos en 3D a partir de objetos del mundo real, habitualmente vinculada a la generación de mapas en 3D. Sin embargo, como hemos visto, puede ser fácilmente utilizada en el aula para generar objetos de aprendizaje, ya sea gracias a la obtención de un modelo 3D interactivo o bien por la posibilidad de replicar objetos.

Sin embargo, el proceso, aunque aparentemente sencillo y accesible gracias a la existencia de software libre multiplataforma, requiere de una cierta mano para la fotografía, ya que la toma de imágenes es el paso clave para obtener buenos resultados. Lo que, en realidad, es una buena excusa para introducir en el aula algunas nociones sobre la fotografía digital, lo que tampoco está de más.