HydraNet: Unified Multi-Task Hyperspectral Earth Observation Model

HydraNet is a multi-task deep neural network (100% custom Multi-Layer Perceptron, ~469k parameters, 1.84 MB) optimized with ONNX Runtime to simultaneously infer Agricultural Biophysical Traits, USGS Mineral Identification & Unmixing, and Thermal Surface Indices / Anomalies from satellite spectral observations (NASA EMIT & USGS Landsat 8/9).

Model Overview

  • Model File: hydra.onnx (1.84 MB / 1,929,560 bytes)
  • Format: ONNX Opset 17
  • Architecture: 100% Pure Custom Residual MLP (zero 2D CNN convolutions, zero GPU required)
  • Inference Runtime: Standard CPU via onnxruntime (~11.7 ms latency per batch)
  • RAM Footprint: < 15 MB in memory

Capabilities & Heads

1. Agriculture Head (PROSAIL RTM Inversion)

Predicts 6 biophysical canopy traits derived from PROSAIL radiative transfer model inversion ($R^2 \ge 0.970$ across core traits):

  • $C_{ab}$: Chlorophyll $a+b$ content ($\mu\text{g/cm}^2$) โ€” $R^2 = 0.993$
  • $C_w$: Equivalent water thickness ($\text{g/cm}^2$) โ€” $R^2 = 0.991$
  • $\text{LAI}$: Leaf Area Index ($\text{m}^2/\text{m}^2$) โ€” $R^2 = 0.970$
  • $\text{ALA}$: Average Leaf Angle ($\text{deg}$) โ€” $R^2 = 0.990$
  • $C_m$: Dry matter content ($\text{g/cm}^2$) โ€” $R^2 = 0.985$
  • $C_{ar}$: Carotenoid content ($\mu\text{g/cm}^2$)

2. Mineral Head (USGS Spectral Library)

Matches USGS mineral signatures across 12 target minerals + background (99.85% agreement with USGS SAM + FCLS):

  • Target Minerals: Alunite, Calcite, Chlorite, Dolomite, Goethite, Gypsum, Hematite, Illite, Kaolinite, Montmorillonite, Muscovite, Quartz.
  • Outputs: Dominant class probabilities (13 classes), fractional unmixing abundances (13 classes), and spectral quality metric.

3. Thermal Head (Landsat 8/9 TIRS)

Calculates thermal environmental indicators and local anomalies:

  • Global thermal status: Cold, Normal, Hot ($99.85%$ agreement)
  • Urban Heat Island (UHI): Rural, Neutral, Urban ($99.93%$ agreement)
  • Local Hotspot Anomaly probability: ($99.98%$ agreement)

Quickstart (Python + ONNX Runtime)

import numpy as np
import onnxruntime as ort

# 1. Load model
session = ort.InferenceSession("hydra.onnx", providers=["CPUExecutionProvider"])

# 2. Input specifications:
# x_agri: (batch, 22) normalized reflectance at PROSAIL wavelengths
# x_mineral: (batch, 275) EMIT continuum-removed reflectance + diagnostic depths + SAM scores + brightness
# x_thermal: (batch, 10) normalized thermal and local spatial statistics
n_samples = 10
x_agri = np.random.uniform(0.05, 0.6, size=(n_samples, 22)).astype(np.float32)
x_mineral = np.random.uniform(0.0, 1.0, size=(n_samples, 275)).astype(np.float32)
x_thermal = np.random.uniform(-2.0, 3.0, size=(n_samples, 10)).astype(np.float32)

# 3. Execute inference
feeds = {
    "x_agri": x_agri,
    "x_mineral": x_mineral,
    "x_thermal": x_thermal,
}
outputs = session.run(None, feeds)

# Unpack results:
agri_params, agri_std, mineral_probs, mineral_abundance, mineral_quality, \
thermal_global_probs, thermal_uhi_probs, thermal_hot_prob, thermal_local_prob = outputs

print("Agriculture Traits (LAI, Cab, etc.):", agri_params.shape)
print("Mineral Abundance:", mineral_abundance.shape)
print("Thermal Anomaly Probabilities:", thermal_local_prob.shape)

Files in this Repository

  • hydra.onnx: The production ONNX model weights.
  • model_card.json: Full technical architecture specification, parameter counts, and feature spec hash.
  • metrics.json: Quantitative benchmark metrics and gate evaluations.
  • map_verification.json / map_verification.md: Classical baseline comparisons on real Landsat & EMIT scenes.
  • agri_lut.npz: PROSAIL RTM Lookup Table (100,000 synthetic simulations).
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support