Orchestrator Subsystem
The orchestrator subsystem (nav.nav_orchestrator) is the top-level driver that
turns one observation into one
NavResult. The driver class
NavOrchestrator runs every registered
NavModel’s feature extraction, applies the per-feature
reliability gate, runs every feasible
NavTechnique in two passes (prior-free, then
prior-required), reconciles per-technique results into a final answer via the
ensemble() combine, and emits a single
NavResult carrying the headline offset plus the
full diagnostic envelope.
The subsystem is more than a single class: it is a small package of cooperating dataclasses, helpers, and a pipeline. Each public component has its own page below.
Driver
Per-image dataclasses
Per-image helpers
- Image Classifier (NavImageClassifier)
- Per-Instrument Settings (InstrumentSettings)
- Ensemble Combine (ensemble + EnsembleConfig)
- Overview
- Theory
- Step 1 — drop spurious
- Step 2 — drop at-edge
- Step 3 — single-link Mahalanobis grouping
- Step 4 — pick the highest summed-confidence group
- Step 5 — precision-weighted merge
- Step 6 — disagreement and conflict penalties
- Step 7 — confidence-rank assignment
- Restrictions and assumptions
- Sources of uncertainty
- Configuration
- Implementation
- Examples
- JSON Curation (build_metadata_dict)
The nav.nav_orchestrator.image_derivatives module also lives in this
package; the orchestrator runs it once per image to populate the shared gradient and
edge-distance-transform products on
NavContext. Because the module exists to feed
the distance-transform techniques, its dedicated page is filed under the techniques
chapter at Image Derivatives (Shared Gradient and Edge DT).