Skip to main content

Reconstruct3D - 3D Reconstruction

Overview

The Reconstruct3D interface is used to generate 2D and 3D models from aerotriangulation results. It is typically used together with ReconstructAT to complete the full reconstruction workflow. This interface supports multiple output formats, tile processing, and fine parameter control.

Applicable Scenarios
  • Generate 3D models from aerotriangulation results
  • Generate orthophotos and digital surface models
  • Tile reconstruction for large-scale data
  • Need specific output formats

Interface Invocation

Command Line Invocation

reconstruct_full_engine(.exe) --reconstruct_type 2 --task_json config_task.json

Parameter Description

  • reconstruct_type: Fixed as 2 (represents Reconstruct3D)
  • task_json: Configuration file path

Configuration Parameters

Required Parameters

Parameter NameTypeDescription
working_dirstringWorking directory (must be the same as specified by the aerotriangulation interface)
gdal_folderstringGDAL data path

Optional Parameters

Basic Parameters

Parameter NameTypeDefault ValueDescription
input_image_typeint0Image type: 1=RGB, 2=Multispectral, 3=Infrared
resolution_levelint1Reconstruction accuracy: 1=High, 2=Medium, 3=Low
pipeline_modeint0Reconstruction pipeline: 0=Pure visual reconstruction, 1=Pure lidar point cloud reconstruction
reconstruct_modeint0Reconstruction mode: 0=General scene, 2=Power line scene
coordinate_system_3dJSON-Output 3D result coordinate system, format see coordinate_system
coordinate_system_2dJSON-Output 2D result coordinate system
min_avali_memory_sizedouble0Minimum available memory (GB), used to control tile count
fast_modeboolfalseFast mode, improves efficiency but reduces detail
keep_undistort_imagesboolfalseWhether to keep undistorted images

Output Format Control [Must specify one of the following]

Parameter NameTypeDefault ValueDescription
generate_osgbboolfalseGenerate OSGB format 3D model
generate_3d_tilesboolfalseGenerate 3D Tiles (b3dm) format
generate_lasboolfalseGenerate LAS format point cloud
generate_pc_plyboolfalseGenerate PLY format point cloud
generate_pc_osgbboolfalseGenerate OSGB format point cloud LOD
generate_pc_pntsboolfalseGenerate pnts format point cloud LOD
generate_gs_plyboolfalseGenerate ply format Gaussian Splatting results
generate_objboolfalseGenerate OBJ format textured mesh
generate_plyboolfalseGenerate PLY format textured mesh
generate_geotiffboolfalseGenerate GeoTIFF format orthophoto
generate_tile_2DboolfalseTile the orthophoto
generate_2D_from_3D_modelboolfalseGenerate 2D orthophoto from 3D model

Advanced Parameters

Parameter NameTypeDefault ValueDescription
use_draco_compressionbooltrueWhether to enable Draco vertex compression for 3D Tiles
tex_image_type_3dtilesint03D Tiles texture format: 0=JPEG, 1=WebP
use_gcj02boolfalseWhether to convert orthophoto tiles to GCJ02 coordinate system

ROI Control

Parameter NameTypeDefault ValueDescription
roi_for_2dJSON-Region of interest for 2D reconstruction, format see ROI Structure Description
roi_for_3dJSON-Region of interest for 3D reconstruction
roi_coordinate_systemJSONWGS84Coordinate system of ROI

ROI Structure Description

Field NameTypeDescription
boundaryarray2D boundary vertex set of ROI polygon
min_zdoubleROI minimum elevation
max_zdoubleROI maximum elevation

Example:

{
"boundary": [ // 2D polygon boundary (counterclockwise)
[x1, y1],
[x2, y2],
[x3, y3]
// ...
],
"min_z": 100.0, // Minimum elevation
"max_z": 500.0 // Maximum elevation
}

Complete Configuration Examples

Basic 3D Reconstruction

{
"working_dir": "C:/Projects/3D_Task",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 1,
"generate_osgb": true,
"generate_3d_tiles": true,
"generate_geotiff": true
}

Specify Output Result Coordinate System

{
"working_dir": "C:/Projects/3D_Task",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 1,
"generate_osgb": true,
"generate_3d_tiles": true,
"generate_geotiff": true,
"coordinate_system_3d": {
"type": 3,
"epsg_code": 32650 // WGS84 / UTM 50N
},
"coordinate_system_2d": {
"type": 3,
"epsg_code": 32650 // WGS84 / UTM 50N
}
}

Set Reconstruction ROI

{
"working_dir": "C:/Projects/3D_Task",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 1,
"roi_for_3d": {
"boundary": [
[114.12, 22.12],
[114.13, 22.12],
[114.13, 22.13],
[114.12, 22.13]
],
"min_z": 0,
"max_z": 500
},
"generate_osgb": true,
"generate_3d_tiles": true,
"generate_geotiff": true,
"coordinate_system_3d": {
"type": 3,
"epsg_code": 32650 // WGS84 / UTM 50N
},
"coordinate_system_2d": {
"type": 3,
"epsg_code": 32650 // WGS84 / UTM 50N
}
}

Output Results

3D Model Output (/3D/)

  • model-osgb/ - OSGB format model and LOD
  • model-b3dm/ - 3D Tiles format (including tileset.json)
  • model-obj/ - OBJ format model and textures
  • point-las/ - LAS format point cloud
  • point-ply/ - PLY format point cloud
  • point-osgb/ - OSGB format point cloud LOD
  • point-pnts/ - 3D Tiles point cloud format
  • point-gs-ply/ - 3DGS-PLY point cloud format

2D Product Output (/2D/)

  • geotiffs/ - GeoTIFF format orthophoto and DSM
  • dom_tiles/ - Orthophoto tiles
  • dsm_tiles/ - Digital surface model tiles

Resolution Level Description

LevelDescriptionRelative Processing TimeApplicable Scenarios
1Ultra-high precision3-5xProfessional surveying, cultural heritage protection
2High precision1xGeneral engineering applications
3Quick preview0.2-0.3xQuick verification, preview

Error Handling

The interface returns an integer error code:

  • 0: Success
  • Non-zero: Various error conditions

For details, see Error Codes.

Common Questions

Q: Prompt "Cannot find aerotriangulation results"

A: Ensure:

  • working_dir is the same as used by ReconstructAT
  • Aerotriangulation has completed successfully
  • milestones directory contains mvs.pb.bin file

Q: Insufficient memory error

A:

  • Set min_avali_memory_size to limit memory usage
  • Lower resolution_level
  • Use DivideTiles for pre-tiling

Q: Incorrect output coordinates

A:

  • Check coordinate_system_3d/2d settings
  • Confirm ROI coordinate system matches data
  • Verify GDAL data path is correct

Next Steps


Tip: Reconstruct3D provides rich output options. It is recommended to quickly verify with low precision first, then perform high-quality reconstruction.