From metashape-mcp
Guides dense reconstruction in Metashape MCP: builds depth maps, point clouds, meshes, textures, DEMs, orthomosaics with GPU/CPU settings. Use after camera alignment for photogrammetry workflows.
How this skill is triggered — by the user, by Claude, or both
Slash command
/metashape-mcp:metashape-reconstructionThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Build dense products from aligned cameras in Metashape using MCP tools. This covers everything AFTER alignment: depth maps, dense point cloud, mesh, texture, DEM, and orthomosaic. All MCP tool calls block until complete — no polling, no timeouts.
Build dense products from aligned cameras in Metashape using MCP tools. This covers everything AFTER alignment: depth maps, dense point cloud, mesh, texture, DEM, and orthomosaic. All MCP tool calls block until complete — no polling, no timeouts.
set_gpu_config(cpu_enable=False) before depth maps, point cloud, meshing, texturing, DEM, orthomosaic. CPU slows GPU operations. CPU is ONLY for alignment (match_photos, align_cameras).get_processing_status in a loop.save_project() after major operations.get_alignment_stats()
# Check: alignment_rate should be >95%
# Check: tie_point_count_valid should be reasonable
set_gpu_config(cpu_enable=False)
build_depth_maps(
downscale=2, # 1=Ultra, 2=High, 4=Medium, 8=Low, 16=Lowest
filter_mode="mild", # mild for complex terrain, moderate default, aggressive for clean scenes
reuse_depth=True # Reuse existing depth maps for aligned cameras
)
Quality guide:
downscale=1 (Ultra): Final production, small projects. Very slow.downscale=2 (High): Standard production quality. Good balance.downscale=4 (Medium): Quick results, large projects, testing.build_point_cloud(
point_colors=True,
point_confidence=True
)
Skip if going directly to mesh from depth maps.
Only needed for terrain/DEM workflows:
classify_ground_points(
max_angle=15.0,
max_distance=1.0,
cell_size=50.0
)
build_model(
surface_type="arbitrary", # "arbitrary" for 3D, "height_field" for terrain/DEM
source_data="depth_maps", # "depth_maps", "point_cloud", "depth_maps_and_laser_scans"
interpolation="enabled", # "disabled", "enabled", "extrapolated"
vertex_colors=True,
vertex_confidence=True,
volumetric_masks=False,
keep_depth=True
)
face_count_custom=0 is hardcoded (unlimited faces)trimming_radius=0 is hardcoded (no trimming)classes=[2] (ground only)build_uv(
mapping_mode="generic", # "generic", "adaptive_orthophoto", "orthophoto", "camera"
texture_size=8192 # Power of 2: 4096, 8192, 16384
)
build_texture(
blending_mode="natural", # "natural" (default, best quality), "mosaic", "average", "max", "min"
texture_size=8192,
ghosting_filter=True
)
DEM:
build_dem(
source_data="point_cloud", # or "mesh"
interpolation="enabled",
classes=[2] # Ground only, if classified
)
Orthomosaic:
build_orthomosaic(
surface_data="dem", # or "mesh", "none"
blending_mode="mosaic",
ghosting_filter=True
)
| Use Case | surface_type | source_data |
|---|---|---|
| 3D object/scene | arbitrary | depth_maps |
| Terrain/landscape | height_field | depth_maps |
| With laser scans | arbitrary | depth_maps_and_laser_scans |
| From dense cloud | arbitrary | point_cloud |
| Quick preview | arbitrary | tie_points |
| Mode | When to Use |
|---|---|
| mild | Complex terrain, vegetation, rock faces — preserves detail |
| moderate | Default, good for most scenes |
| aggressive | Clean/flat surfaces, buildings — removes more noise |
| Mode | When to Use |
|---|---|
| natural | Default. Best color continuity across seams |
| mosaic | Sharpest detail per-patch but visible seams |
| average | Smooth blending, can be slightly blurry |
For testing/preview: downscale=4 depth maps, texture_size=4096
For production: downscale=2 depth maps, texture_size=8192
For ultra quality: downscale=1 depth maps, texture_size=16384
Road corridor captures commonly produce tunnel/dome mesh artifacts where the sky gets closed. This is because depth map interpolation ignores masks.
Quick fix: Build mesh from point cloud instead of depth maps:
build_point_cloud(point_colors=True, point_confidence=True)
build_model(source_data="point_cloud", surface_type="arbitrary", classes=[0, 1, 2, 6])
clean_model(criterion="component_size", level=75)
For the full decision tree and all 5 strategies, see the sky-artifact-prevention skill.
For UV mapping, texture atlas settings, blending modes, and texture artifact diagnosis, see the texturing-pipeline skill.
Quick reference:
build_uv(mapping_mode="generic", texture_size=8192)
build_texture(blending_mode="mosaic", texture_size=8192, ghosting_filter=True)
downscale (e.g., 2→4). Ultra (1) requires significant VRAM.interpolation="extrapolated" or build from point cloud instead of depth maps.sky-artifact-prevention skill.texture_size, or try blending_mode="mosaic". See texturing-pipeline skill.decimate_model(face_count=target) after building.npx claudepluginhub jenkinsm13/claude-plugins --plugin metashape-mcpGuides UV mapping, texture atlas generation, color calibration, and quality optimization in Metashape MCP for 3D meshes. Used after mesh building to address blurry seams, ghosting, color shifts, and artifacts via MCP server.
Guides Adobe Substance 3D Painter workflows for PBR material creation, web-optimized texture export to Three.js, Babylon.js, Unity, Unreal, and Python API batch automation.
Guides mesh processing for AEC computational design: data structures, operations, analysis, repair, UV mapping/unfolding, quad meshing, mesh-to-NURBS conversion, quality assessment.