Sensor Pairs¶
Module: spectralbridge.sensor_pairs.
Shared wavelength-matched synthetic sensor-pair definitions.
API glossary ยท Workflow / scientific context
Signatures and documentation below are collected from the current source. Advanced objects are not newly declared stable by inclusion here.
Audience: advanced.
SensorBandIdentity
dataclass
¶
SensorBandIdentity(sensor: str, band_index: int, spectral_identity: str, wavelength_nm: float, fwhm_nm: float)
Physical identity for one one-based sensor band.
Audience: advanced.
sensor_band_identity ¶
sensor_band_identity(sensor: str, band_index: int) -> SensorBandIdentity | None
Return packaged physical metadata, or None for a custom sensor.
Audience: advanced.
wavelength_matched_band_pairs ¶
wavelength_matched_band_pairs(source_sensor: str, target_sensor: str) -> tuple[tuple[int, int], ...]
Pair shared spectral identities using packaged wavelength definitions.
Band numbers are local to a sensor. For example, Landsat 5 TM blue band 1 corresponds to Landsat 8 OLI blue band 2 because OLI adds coastal aerosol as band 1. Matches also require the packaged source and target passbands to overlap, protecting the named identity table from inconsistent metadata.
Explicitly exported constants and type aliases¶
These values describe package metadata, schemas or configuration; they are not observations from a production dataset.
| Name | Source expression |
|---|---|
MICASENSE_LANDSAT_PAIRS |
{'MicaSense_to-match_TM_and_ETM+': ('Landsat_5_TM', 'Landsat_7_ETM+'), 'MicaSense_to-match_OLI_and_OLI-2': ('Landsat_8_OLI', 'Landsat_9_OLI-2')} |
SPECTRAL_IDENTITY_ORDER |
('coastal aerosol', 'blue', 'green', 'red', 'near infrared', 'shortwave infrared 1', 'shortwave infrared 2') |
SYNTHETIC_REGRESSION_EVIDENCE_BOUNDARY |
'Both axes are synthetic products convolved from the same corrected NEON source. Coefficients are descriptive diagnostics, not empirical sensor calibration.' |