Cross-Sensor Calibration provides a Python pipeline for processing NEON Airborne Observation Platform hyperspectral flight lines and resampling them to emulate alternate sensors in a reproducible, scriptable workflow.
# 1. set up workspace
mkdir -p data/SITE
# 2. download a tiny flight line (placeholders shown)
python -m bin.download --site SITE --flight FLIGHT_LINE
# 3. run the full pipeline
python -m bin.pipeline data/SITE/FLIGHT_LINE
# 4. peek at resampled outputs
ls data/SITE/FLIGHT_LINE/resampled
Replace SITE
with a NEON site code and FLIGHT_LINE
with an actual line identifier.
Cross-Sensor Calibration depends on GDAL, PROJ, Ray, and HyTools. We recommend the Conda workflow below because it installs the required native libraries automatically. If you prefer a pure pip
workflow, install system packages for GDAL/PROJ first (e.g., brew install gdal
on macOS or apt-get install gdal-bin libgdal-dev proj-bin
on Debian/Ubuntu).
conda create -n cscal python=3.10 gdal proj hytools
conda activate cscal
pip install -e .
uv venv
source .venv/bin/activate
uv pip install -e .
If GDAL wheels are unavailable for your platform, install it from Conda-forge and then point pip
at the Conda environment by exporting CPLUS_INCLUDE_PATH
and C_INCLUDE_PATH
.
Browse the full documentation site at earthlab.github.io/cross-sensor-cal. The site is built with MkDocs Material and automatically deployed to GitHub Pages.
Key entry points:
- Overview
- Quickstart
- Stage 01 Raster Processing
- Stage 02 Sorting
- Stage 03 Pixel Extraction
- Stage 04 Spectral Library
- Stage 05 MESMA
Python | OS | GDAL | HyTools | Ray |
---|---|---|---|---|
3.10+ | Linux, macOS | 3.4+ | 1.0+ | 2.0+ |
If you use Cross-Sensor Calibration in your research, please cite the project:
Earth Lab Data Innovation Team. (2025). Cross-Sensor Calibration (Version 0.1.0) [Software]. University of Colorado Boulder. https://github.com/earthlab/cross-sensor-cal
Machine-readable citation metadata is provided in CITATION.cff.
Distributed under the GPLv3 License. Please cite the project using CITATION.cff.