Phase 3 — High-Resolution Texturing (Metashape + 3DSC Scripts)

This phase applies high-resolution textures to the segmented tiles produced in Phase 2 — Mesh Segmentation (Blender + 3DSC). Texturing happens in Agisoft Metashape via the 3DSC for Metashape script package, which computes the optimal number of textures per tile using the Demetrescu-d’Annibale formula (see Texture resolution formula).

3.1 Prepare Metashape Project

Create a clean Metashape project for texturing:

  1. Open original Metashape project (located in 05_RB/02_PROCESSING/metashape/)

  2. File > Save As with a new name in the same folder:

    • Original: 05_RB/02_PROCESSING/metashape/project.psx

    • New: 05_RB/02_PROCESSING/metashape/project_texturing.psx

  3. Optional: Remove unnecessary chunks to simplify

  4. Ensure you have:

    • Aligned cameras

    • Sparse point cloud

    • NO mesh in the chunk (we’ll import tiles)

EM Structure Locations

  • Raw photos: 05_RB/01_RAW/photos/

  • Metashape projects: 05_RB/02_PROCESSING/metashape/

  • Import tiles from: 05_RB/03_Model_Library/[ModelName]/meshpoly/

  • Export textures to: 05_RB/03_Model_Library/[ModelName]/meshpolytex/

For the complete file-by-file location guide, see File locations — Digital Replica reference.

Photo Selection Strategy

For optimal texturing quality:

  • Use a subset of high-quality photos for texturing

  • Separate “geometry photos” (many, all angles) from “texture photos” (fewer, optimal lighting)

  • Avoid blurred images

  • Ensure consistent lighting

3.2 Install 3DSC for Metashape

  1. Download 3DSC for Metashape from GitHub:

    github.com/zalmoxes-laran/3DSC_Metashape

  2. Extract to a known location (e.g., Desktop)

  3. In Metashape, go to Tools > Run Script and select the single file 3DSC_MS_GUI.py. The 3DSC Metashape Tools menu appears in the menu bar. (All functionality is now consolidated in this one file; the old individual scripts are deprecated.)

3.3 Import Mesh Tiles

  1. 3DSC Metashape Tools > Import > Import Multiple Models

  2. When prompted, select the 05_RB/03_Model_Library/[ModelName]/meshpoly/ folder

  3. The tool will:

    • Create one chunk per tile

    • Import each OBJ into its chunk

    • Maintain naming structure

img/metashape_chunks.png

Fig. 31 [SCREENSHOT: Metashape workspace showing multiple chunks, one per tile]

Note

The tool reads all OBJ files from the selected folder. Ensure only the segmented tiles are present in meshpoly/ before running the import.

3.4 Automatic Texturing

Now apply high-resolution textures using the texture formula:

  1. 3DSC Metashape Tools > Texturing > Texturize Models

  2. The tool calculates the optimal number of textures per tile using the Demetrescu-d’Annibale texture resolution formula. For a complete derivation and worked examples, see Texture resolution formula.

Texture Settings

The script automatically configures:

  • Texture size: 4096×4096 px (adjustable)

  • Mapping mode: Generic

  • Blending mode: Mosaic

  • Enable hole filling

  • Enable ghosting filter

  1. Wait for texture generation (can take several minutes per tile)

img/texturing_progress.png

Fig. 32 [SCREENSHOT: Metashape showing textured tile preview]

3.5 Export Textured Tiles

  1. 3DSC Metashape Tools > Export > Export Multiple Models

  2. Set export folder to 05_RB/03_Model_Library/[ModelName]/meshpolytex/

  3. If using georeferenced coordinates, provide a shift file (or load it once via Shift > STEP0 - Load Global Shift File)

  4. The tool exports:

    • OBJ files (mesh geometry)

    • MTL files (material definitions)

    • PNG textures (high-resolution)

img/meshpolytex_folder.png

Fig. 33 [SCREENSHOT: File explorer showing meshpolytex folder in EM structure with OBJ, MTL, PNG files]

Storage Considerations

The meshpolytex folder can be quite large (500 MB - 2 GB for typical models).

  • Store on NAS if available (as per EM guidelines for 05_RB)

  • Consider creating a cloud link rather than direct sync

  • Keep local copy for active work, archive to NAS when complete


This documentation is authored with AI assistance under human editorial responsibility, in line with Article 50(4) of the EU AI Act (Regulation (EU) 2024/1689). Every published change is reviewed and committed by a human author with subject-matter competence. Full policy: extendedmatrix.org/ai-usage.