{"id":51157374,"url":"https://github.com/gisma/metashape-qc-engine","last_synced_at":"2026-06-26T11:30:25.501Z","repository":{"id":366105516,"uuid":"1275045927","full_name":"gisma/metashape-qc-engine","owner":"gisma","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-20T09:59:25.000Z","size":328,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-20T10:08:40.301Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gisma.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE.md","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-20T07:18:35.000Z","updated_at":"2026-06-20T09:59:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/gisma/metashape-qc-engine","commit_stats":null,"previous_names":["gisma/metashape-qc-engine"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/gisma/metashape-qc-engine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gisma%2Fmetashape-qc-engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gisma%2Fmetashape-qc-engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gisma%2Fmetashape-qc-engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gisma%2Fmetashape-qc-engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gisma","download_url":"https://codeload.github.com/gisma/metashape-qc-engine/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gisma%2Fmetashape-qc-engine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34815669,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-26T02:00:06.560Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-26T11:30:24.208Z","updated_at":"2026-06-26T11:30:25.483Z","avatar_url":"https://github.com/gisma.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# metashape-qc-engine\n\n## Project purpose\n\n`metashape-qc-engine` is a product-analysis workflow for reproducible Agisoft Metashape orthomosaic candidate selection. It prepares candidate matrices, runs repeated Metashape builds, analyzes orthomosaic stability on a canonical grid, records support diagnostics, and writes a selected-product trace for review.\n\nThe workflow measures internal repeated-build stability and support persistence. It does not by itself establish absolute geometric accuracy, external truth, cross-date accuracy, platform comparison, or change-detection suitability.\n\n## Current workflow\n\nFor one image set, `metashape-qc prepare` writes run-local control files from a preset and variants template. `metashape-qc run-analysis` executes the candidate x replicate matrix through the Metashape runtime bridge. `metashape-qc resume-analysis` continues an interrupted run directory by skipping successful work and rerunning failed or missing work. `metashape-qc evaluate` runs or reuses the analyzer, writes support and stability summaries, creates threshold review products, and records `selected_product.json`.\n\n## Current command sequence\n\n```bash\nmetashape-qc prepare \\\n  --image-dir \"/path/to/input-images\" \\\n  --product-id \"product_id\" \\\n  --preset \"config/experiments/presets/mof_alignment_mesh_ortho_reference_v1.json\" \\\n  --reps 5 \\\n  --output-root \"/path/to/runs\"\n```\n\n`prepare` prints the concrete `metashape-qc run-analysis` command for the generated run directory.\n\n```bash\nmetashape-qc run-analysis \"\u003crun_dir\u003e/config.yml\" \\\n  --variants \"\u003crun_dir\u003e/variants.csv\" \\\n  --reps 5 \\\n  --run-dir \"\u003crun_dir\u003e\" \\\n  --metashape-dir \"$METASHAPE_DIR\"\n```\n\n```bash\nmetashape-qc resume-analysis \"\u003crun_dir\u003e/config.yml\" \\\n  --variants \"\u003crun_dir\u003e/variants.csv\" \\\n  --reps 5 \\\n  --run-dir \"\u003crun_dir\u003e\" \\\n  --metashape-dir \"$METASHAPE_DIR\"\n```\n\n```bash\nmetashape-qc evaluate \"\u003crun_dir\u003e\"\n```\n\n## Current reference benchmark\n\nThe current reference benchmark is the MOF Alignment-Mesh-Ortho reference matrix:\n\n- Image directory: `/datadisk/data/uav/MOF_repro_test_recovered/input-images`\n- Preset: `config/experiments/presets/mof_alignment_mesh_ortho_reference_v1.json`\n- Matrix: alignment downscale, adaptive fitting, mesh face count, mesh smoothing iterations, and requested orthomosaic pixel size\n- Size: `48` processing candidates x `5` replicates = `240` Metashape runs\n\n`buildOrthomosaic.orthoRes` is the requested orthomosaic pixel size / sampling resolution passed to Metashape. It is not a direct measure of geometric accuracy or true scene detail.\n\nDense Cloud, Depth Maps, Point Cloud, DSM/DEM quality, 3D reconstruction quality, GCP/checkpoint validation, cross-date accuracy, platform comparison, and change-detection suitability are outside the current MOF reference benchmark.\n\n`config/experiments/presets/mesh_facecount_smoothing_3x3.json` remains useful as a small starter/example preset, but it is not the current reference benchmark.\n\n## Documentation map\n\n- [WORKFLOW_CHAIN.md](WORKFLOW_CHAIN.md): active architecture and runtime chain.\n- [docs/quick_workflow.md](docs/quick_workflow.md): concise operational command guide.\n- [docs/orthomosaic_stability_manual.md](docs/orthomosaic_stability_manual.md): maintained interpretation and workflow manual.\n- [docs/product_manifest_contract.md](docs/product_manifest_contract.md): manifest, evaluator, threshold review, and selected-product contract.\n- [docs/current_system_reference.md](docs/current_system_reference.md): code-derived current system reference.\n- [docs/rationale_and_paper_argument_register.md](docs/rationale_and_paper_argument_register.md): rationale and paper argument register.\n- [docs/legacy_document_mining_report.md](docs/legacy_document_mining_report.md): mining guidance for legacy material.\n- [config/experiments/README.md](config/experiments/README.md): preset and matrix reference.\n\n## Repository layout\n\n- `metashape_qc_engine/`: thin installable CLI wrapper exposing `metashape-qc`.\n- `python/`: Metashape workflow, preparation, reproducibility runner, analyzer, and evaluator scripts.\n- `scripts/`: shell bridge for launching the workflow inside the Metashape runtime environment.\n- `config/`: runtime YAML configs, experiment presets, variant templates, and legacy config material.\n- `docs/`: active documentation, reference contracts, audit notes, and upstream/background material.\n- `R/`: retained AM2-style helper scripts and compatibility material; not the current primary product-analysis path.\n- `calibration/`: retained calibration CSV input/reference files.\n- `prior-versions/`: archived workflow code for older Metashape compatibility/reference cases.\n\n## License and attribution\n\nThis repository is distributed under the BSD 3-Clause License.\n\nIt contains adapted components from the UC Davis / AM2 / automate-metashape code base. Original copyright, author, license, and disclaimer notices are retained in `LICENSE`; project-specific attribution and scope notes are provided in `NOTICE.md`.\n\nSelected active project scripts are Copyright (c) 2026 Chris Reudenbach, Lars Opgenoorth, and Christian Mestre Runge.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgisma%2Fmetashape-qc-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgisma%2Fmetashape-qc-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgisma%2Fmetashape-qc-engine/lists"}