Introduction
Meshroom is a desktop application that turns a set of photographs into a 3D textured mesh through photogrammetry. It uses the AliceVision computer vision framework to perform structure-from-motion and multi-view stereo reconstruction. The visual node-based interface lets users customize the pipeline or use a default workflow that handles the entire process automatically.
What Meshroom Does
- Reconstructs 3D point clouds and meshes from unordered photo sets
- Performs automatic camera calibration and feature matching across images
- Generates high-quality textured meshes suitable for rendering or 3D printing
- Provides a node graph editor for customizing each step of the reconstruction pipeline
- Supports GPU-accelerated depth map computation for faster processing
Architecture Overview
Meshroom is a Python/Qt application that orchestrates the AliceVision C++ processing nodes. The pipeline is defined as a directed acyclic graph where each node represents a processing step: feature extraction, image matching, structure-from-motion, depth estimation, meshing, and texturing. Nodes can run in parallel where the graph allows, and intermediate results are cached on disk for incremental recomputation.
Self-Hosting & Configuration
- Requires an NVIDIA GPU with CUDA support for GPU-accelerated nodes
- Pre-built binaries are available for Linux and Windows from GitHub Releases
- CPU-only mode is available but significantly slower for large photo sets
- Configure cache directory, thread count, and GPU selection in the application preferences
- Input photos should have EXIF data for automatic camera parameter estimation
Key Features
- Visual node graph editor for full control over the reconstruction pipeline
- Support for HDR imaging and panorama stitching workflows
- Live 3D viewer for inspecting point clouds and meshes during reconstruction
- Batch processing mode via command-line for automated pipelines
- Extensible plugin system for adding custom processing nodes
Comparison with Similar Tools
- COLMAP — command-line focused; Meshroom provides a visual node editor for the same type of reconstruction
- Reality Capture — commercial, faster on large datasets; Meshroom is free and open source
- OpenMVS — focuses on dense reconstruction only; Meshroom covers the full pipeline
- Regard3D — simpler UI but fewer customization options and less active development
FAQ
Q: How many photos do I need for a good reconstruction? A: A minimum of about 20-30 overlapping photos covering the object from different angles typically produces good results. More photos improve quality.
Q: Does Meshroom work without a GPU? A: Yes, but GPU acceleration significantly speeds up depth map computation. CPU-only mode is functional for smaller datasets.
Q: What output formats are supported? A: Meshroom outputs OBJ meshes with texture maps, PLY point clouds, and ABC (Alembic) files for animation workflows.
Q: Can I use Meshroom for drone mapping? A: Yes. Meshroom can process aerial photos for terrain reconstruction, though specialized tools like OpenDroneMap may be more optimized for large-scale mapping.