Overview
Active satellites measure cloud vertical structure directly, but cover under one percent of the planet a day. Passive imagers cover all of it and are sensitive only to the cloud top. This work trains a ConvNeXt U-Net on co-located VIIRS and EarthCARE patches where labels land on about one percent of pixels, and predicts eight cloud geometry targets at every pixel with 90 % prediction intervals calibrated by conformalized quantile regression. Prediction quality does not depend on distance to the labelled column, which says the model learns a per-pixel spectral retrieval rather than interpolating from nearby labels.
The problem
Where the labels come from
EarthCARE's radar and lidar measure vertical structure directly, but only under the flight path: five kilometres wide, under one percent of the planet a day. VIIRS, a passive imager, covers the whole planet twice a day in ten spectral bands at 750 m, and is sensitive to the cloud top.
Cloud top and base height set how much shortwave a cloud reflects and how much outgoing longwave it traps. Neither is observable from directly above. Cloud feedbacks remain the largest single source of uncertainty in climate projection.
As a learning problem this is dense prediction from extremely sparse spatial supervision. Roughly one pixel in a hundred carries a label, and the labels are a loss mask rather than an input.
Method
The model
Ten VIIRS channels go in. A three-stage ConvNeXt encoder runs down to 384 channels, ERA5 reanalysis is projected and added at the bottleneck, and a mirrored decoder returns eight targets at every pixel, each as three quantiles trained with a pinball loss. The loss is computed only on the labelled pixels. Inference runs on all 4096. The model has fourteen million parameters, and the reported version averages five independently seeded copies.
Calibration
Predicted quantiles are miscalibrated out of the box. Ours reach 0.796 coverage against a nominal 0.90, and deep ensembles reach 0.371. Conformalized quantile regression scores each held-out pixel by how far the measurement falls outside its band, takes the empirical 1−α quantile of those scores, and widens every band by it. Coverage is then at least 1−α in finite samples under exchangeability alone, with no distributional assumption, applied per target. Cloud base sits below cloud top, and the other orderings come free from a projection after training, which takes violations to zero at no cost in R².
Results
Accuracy on the test set
Uncertainty methods
Eight methods put through the identical conformal step. Afterwards every one sits at 90 % coverage by construction, so what separates them is the width of the interval. Methods that are better calibrated before the correction end up tighter after it. Deep ensembles start at 37 % coverage, so the correction has to inflate them furthest to get there.
| Method | R² | MAE | PICP | MPIW | raw PICP | ρ |
|---|---|---|---|---|---|---|
| Quantile ensemble (ours) | .742 | 6.08 | .908 | 25.1 | .796 | .415 |
| Deep ensemble | .732 | 6.20 | .911 | 27.9 | .371 | .242 |
| Quantile | .731 | 6.27 | .912 | 26.8 | .791 | .388 |
| Evidential | .720 | 6.39 | .912 | 28.9 | .511 | .328 |
| Heteroscedastic | .718 | 6.55 | .901 | 27.1 | .811 | .372 |
| MC-dropout | .716 | 6.41 | .918 | 31.1 | — | — |
| Quantile + ordering | .712 | 6.84 | .907 | 25.9 | .777 | .383 |
| Physics head | .705 | 6.95 | .911 | 30.2 | .683 | .318 |
What did not help
A 2.6 B-parameter SatVision-giant Swin-v2 encoder, pretrained on 100 M satellite images, gave no gain over the 14 M model trained from scratch, even fine-tuned end to end. Passive radiometry carries only two or three degrees of freedom for vertical structure, so more capacity does not help. Building the ordering constraint into the architecture, through ordinal heads or constrained output layers, was consistently worse than the plain network, and cost two and a half points of R² when combined. Spectral consistency regularization, cross-attention ERA5 fusion and adversarial training did not help either.
Global
Global inference
Running the model over a single day of VIIRS, 241 granules, with stride-32 overlapping tiles averaged and gridded at 0.25°, gives complete global coverage in 2.4 hours on one GPU. Interval width is widest over the deep tropics. Deep convection is the one place coverage falls short, by 3.8 %.
Open release
Citation
@inproceedings{prasad2026icecloud,
title = {Ice Cloud Geometry Retrieval with Calibrated Uncertainty
from Passive Satellite Imagery},
author = {Prasad, Ayush},
booktitle = {European Conference on Computer Vision (ECCV)},
year = {2026}
}