An AI approach to operationalise global daily PlanetScope satellite imagery for river water masking
Bibliographic record
Abstract
Monitoring rivers is vital to manage the invaluable ecosystem services they provide, and also to mitigate the risks they pose to property and life through flooding and drought. Due to the vast extent and dynamic nature of river systems, Earth Observation (EO) is one of the best ways to measure river characteristics. As a first step, EO-based river monitoring often requires extraction of accurate pixel-level water masks, but satellite images traditionally used for this purpose suffer from limited spatial and/or temporal resolution. We address this problem by applying a novel Convolutional Neural Network (CNN)-based model to automate water mask extraction from daily 3 m resolution PlanetScope satellite imagery. Notably, this approach overcomes radiometric issues that frequently present limitations when working with CubeSat data. We test our classification model on 36 rivers across 12 global terrestrial biomes (as proxies for the environmental and physical characteristics that lead to the variability in catchments around the globe). Using a relatively shallow CNN classification model, our approach produced a median F1 accuracy score of 0.93, suggesting that a compact and efficient CNN-based model can work as well as, if not better than, the very deep neural networks conventionally used in similar studies, whilst requiring less training data and computational power. We further show that our model, specialised to the task at hand, performs better than a state-of-the-art Fully Convolutional Neural Network (FCN) that struggles with the highly variable image quality from PlanetScope. Although classifying rivers that were narrower than 60 m, anastomosed or highly urbanised was slightly less successful than our other test images, we showed that fine tuning could circumvent these limitations to some degree. Indeed, fine tuning carried out on the Ottawa River, Canada, by including just 5 additional site-specific training images significantly improved classification accuracy (F1 increased from 0.81 to 0.90, p < 0.01). Overall, our results show that CNN-based classification applied to PlanetScope imagery is a viable tool for producing accurate, temporally dynamic river water masks, opening up possibilities for river monitoring investigations where high temporal variability data is essential.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
How this classification was reachedexpand
Full frame machine prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. The Gemma side is a direct model label for every work in the frame, read from the title-only record. The Codex side is a classifier learned from the 10,348 direct Codex labels and calibrated to design-weighted sample rates; fields without enough sample support carry no Codex call. Candidate is the union of the two sides; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels.
Distilled classifier scores by category (both heads)
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.000 | 0.001 |
| Meta-epidemiology (narrow) | 0.001 | 0.000 |
| Meta-epidemiology (broad) | 0.000 | 0.000 |
| Bibliometrics | 0.001 | 0.001 |
| Science and technology studies | 0.000 | 0.000 |
| Scholarly communication | 0.001 | 0.001 |
| Open science | 0.001 | 0.001 |
| Research integrity | 0.000 | 0.001 |
| Insufficient payload (model declined to judge) | 0.003 | 0.001 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from itClassification
machine, unvalidatedMachine predicted; a candidate call from one source (direct Gemma or distilled Codex), not a consensus.
How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".