Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-23 14:39
La fotogrametría es el uso de imágenes / fotografías para medir distancias entre objetos (gracias Webster). Pero para propósitos modernos, a menudo se usa para hacer un modelo 3D de algo del mundo real sin necesidad de un escáner 3D.
Existe una gran cantidad de software que puede usar para fotogrametría, incluidas algunas excelentes opciones gratuitas, pero noté que muchos (como Meshroom) no tenían compilaciones de Mac disponibles. O requerirían una tarjeta gráfica con soporte CUDA (no es típico con cosas como una Macbook). Así que eso significó investigar un poco.
Finalmente me encontré con este excelente artículo:
Esto condujo a un script de compilación de seguimiento:
Me tomó un tiempo hacerlo funcionar, pero una vez que lo puse en marcha, quedé bastante satisfecho con los resultados que comencé a obtener. Entonces, voy a desglosar los pasos un poco más, especialmente para los usuarios de Mac.
Paso 1: Obtenga COLMAP
COLMAP (https://colmap.github.io/install.html) es una pequeña y agradable herramienta gratuita para comenzar con la fotogrametría. Lo probé solo al principio, pero algunos de los pasos posteriores requerían CUDA. Así que tuve que empezar a buscar de nuevo. Es por eso que usaremos otro software para los pasos posteriores.
Descargar COLMAP es fácil. Puede seguir las instrucciones aquí:
O puede ver la última versión en su página de github: https://github.com/colmap/colmap/releases y descargar la última versión de COLMAP-dev-mac-no-cuda.zip
Una vez que descargue el zip, descomprímalo y pegue la aplicación COLMAP en su carpeta de Aplicaciones.
Paso 2: Obtenga y compile OpenMVS
El siguiente programa que utilizo para ayudar a terminar de construir los modelos 3D es OpenMVS (https://cdcseacave.github.io/openMVS/). Vas a tener que construir esto en tu máquina, así que intentaré hacerlo lo menos doloroso posible.
El enlace a las instrucciones para obtener y compilar OpenMVS en una Mac está aquí:
pero tuve que modificarlo ligeramente. Aquí esta lo que hice:
-
Descarga Xcode de la tienda de aplicaciones
Abra Xcode y acepte la licencia
- Instale Homebrew si aún no lo tiene:
- Instalar GIT:
- Instale CMake:
- Abra una terminal y ejecute el siguiente script. Asegúrate de hacerlo desde algún lugar donde quieras que viva openMVS (tengo una carpeta de 'Proyectos' debajo de mi usuario principal):
# Instalar dependencias /github.com/cdcseacave/openMVS.git #Construir OpenMVS mkdir openMVS_build && cd openMVS_build cmake…/openMVS -DCMAKE_BUILD_TYPE = Lanzamiento -DVCG_ROOT = "$ ruta_principal / vcglib" -G "Xcode"
Versión de configuración de xcodebuild
Paso 3: crea un guión de fotogrametría
Luego creé un script basado en el de aquí:
Esto es lo que terminé con (preste atención a las notas en el guión, ya que requiere que establezca algunas ubicaciones):
Fotogrametría.sh
# Estos parámetros son específicos de la computadora # Almacenar el directorio actual: currDir = $ PWD
# obtener el nombre de la carpeta como variable
myfolder = $ {PWD ## * /}
# Establezca el directorio colmap (cámbielo a donde ha descargado colmap, reemplace 'dev' con el número de versión si es necesario):
colDir = / Aplicaciones / COLMAP.app / Contenidos / MacOS / colmap
# Establezca el directorio openMVS (cámbielo a la carpeta 'bin / Release' donde ha descargado y construido openMVS)
oMVS = / Usuarios / joecooning / Proyectos / openMVS_build / bin / Release
# Establecer directorio de trabajo (creo una carpeta de espacio de trabajo temporal en mi directorio 'Proyectos' para procesar datos)
workDir = / Users / joecooning / Projects / 3dscans / workspace / $ myfolder /
mkdir $ workDir
cp *-j.webp
$ colDir feature_extractor --database_path database.db --image_path.
$ colDir exhaustive_matcher --database_path database.db mkdir sparse $ colDir mapper --database_path database.db --image_path. --output_path sparse $ colDir model_converter --input_path sparse / 0 --output_path model.nvm --output_type NVM $ oMVS / InterfaceVisualSFM model.nvm $ oMVS / DensifyPointCloud model.mvs $ oMVS / ReconstructMesh model_dense.m --vs $ oMesh model_dense.m resolución-nivel 1 model_dense_mesh.mvs $ oMVS / TextureMesh --export-type obj -o $ myfolder.obj model_dense_mesh_refine.mvs
mkdir $ currDir / model /
cp *.obj $ currDir / model / cp *.mtl $ currDir / model / cp * Kd-j.webp
cd $ currDir
Paso 4: ejecutar el script
Ahora que tiene el guión, puede tomar fotos de un objeto del que desea hacer un modelo 3D. Hay otros artículos y videos que pueden brindarle buenos consejos sobre cómo tomar fotos con el propósito de fotogrametría (como este: https://www.tested.com/art/makers/460142-art- Foto…).
Pero esas fotos en una carpeta, copia el script que hiciste en la carpeta.
Desde su terminal, vaya a la carpeta donde están las fotos y el script y ejecute:
sh Fotogrametría.sh
El guión hará el resto del trabajo por ti. Tenga en cuenta que esto puede tardar bastante en procesarse (especialmente si está utilizando muchas fotos de alta resolución). Sugeriría probar primero algunos conjuntos de fotos más pequeños. Aquí se pueden encontrar algunos conjuntos de fotografías de muestra simples: (https://www.regard3d.org/index.php/demo-models)
Recomendado:
Uso de la fotogrametría para crear modelos: 9 pasos
Uso de la fotogrametría para crear modelos: ¿Quién soy? Soy Samuel Conklin y soy estudiante de segundo año en E.L. Escuela secundaria de Meyers. He experimentado con la fotogrametría durante los últimos meses y espero poder ayudarlo si decide recrear este producto. Me interesa ver cómo otras personas
Modelado basado en imágenes / Retrato de fotogrametría: 4 pasos
Modelado basado en imágenes / Retrato de fotogrametría: Hola a todos, En este Instructable, les mostraré el proceso de cómo crear modelos 3D utilizando imágenes digitales. El proceso se llama fotogrametría, también conocido como modelado basado en imágenes (IBM). Específicamente, este tipo de proceso se utiliza para re
Iluminación LED en modelos de plástico: 7 pasos (con imágenes)
Iluminación LED en modelos de plástico: entonces, acaba de obtener un nuevo kit de modelo de plástico que tiene muchas partes transparentes y un interior genial, y está pensando: " ¿No sería genial si pudiera iluminar esto? de alguna manera, pero no sé cómo? ¿Eso es lo que te preocupa, amigo?
Diseño automatizado de modelos ferroviarios que ejecutan dos trenes: 9 pasos
Diseño automatizado de maquetas de trenes con dos trenes: Hace un tiempo hice un diseño automatizado de maquetas de trenes con revestimiento de paso. A pedido de un compañero, hice este Instructable. Esto es algo similar al proyecto mencionado anteriormente. El diseño tiene capacidad para dos trenes y los recorre alternativamente
El intermitente LED de 31 años para modelos de faros, etc.: 11 pasos (con imágenes)
El intermitente LED de 31 años para modelos de faros, etc.: Los modelos de faros tienen una gran fascinación y muchos propietarios deben pensar en lo agradable que sería si, en lugar de simplemente sentarse allí, el modelo realmente parpadeara. El problema es que es probable que los modelos de faros sean pequeños con poco espacio para las baterías y