Nepal Monitor

Research

The model behind the maps

Every land-cover figure on this site comes from a U-Net convolutional neural network that labels each pixel of a satellite image as urban, agriculture, rangeland, forest, water, barren or unknown, designed and published by Yamraj Khadka and Rajat Pradhan.

The paper

Khadka, Y. & Pradhan, R. (2026). Land Cover Segmentation from Satellite Imagery Using U-Net with Custom Loss and Morphological Postprocessing. Journal of Engineering Issues and Solutions, 5(2), 240–253. doi:10.3126/joeis.v5i2.97825

The paper trains a U-Net from scratch on the DeepGlobe Land Cover dataset with a composite loss (weighted cross-entropy plus focal Tversky) to cope with rare classes, and cleans its output with morphological post-processing. Its closing recommendation, fine-tuning for Nepal, is what this site does.

Interactive app (the paper's demo, upgraded) · Code and data

Adapting it to Nepal

The network was fine-tuned on Nepal: 12 epochs from the paper's weights, best at epoch 10 with 0.490, then a 100-epoch continuation, best at epoch 92, on a free Kaggle Tesla T4 GPU. Validation mean IoU on districts never seen in training rose from 0.111 with the paper's weights to 0.553.

Independent test

ImageryOriginal modelNepal-adapted
Esri World Imagery (latest)38% · mIoU 0.2072% · mIoU 0.44
Landsat 8, Oct-Dec 20212% · mIoU 0.0166% · mIoU 0.35
Sentinel-2 L2A, Oct-Dec 202119% · mIoU 0.1175% · mIoU 0.46
Sentinel-2 cloudless 20213% · mIoU 0.0272% · mIoU 0.46

Pixel agreement with ESA WorldCover 2021. For scale, two independent reference maps agree with each other on 77% of pixels.

220 random 1.22 km windows in 11 districts held out from training (Dhanusa, Ilam, Jumla, Kailali, Kaski, Lalitpur, Mustang, Rasuwa, Rupandehi, Sunsari, Surkhet); imagery and references from 2021; pixels the references mark as cloud/no-data excluded.

How the national figures are made

Mapping all of Nepal at 5.5 m every year would take days of computing, so the site uses a statistical survey: 1,038 random 1.2 km windows, at least eight in every district, are classified each year, and the shares are estimated with 95% confidence intervals (stratified by district). Each year's Sentinel-2 cloudless mosaic is colour-normalised before classification so processing differences are not mistaken for change, and every estimate is shown next to the independent Impact Observatory 10 m map.

The network

Architecture. A U-Net: encoder with 32-64-128-256 filters, a 512-filter bottleneck with dropout 0.5, a decoder with transposed convolutions and skip connections, each block Conv 3×3 + ReLU → BatchNorm → Conv 3×3 + ReLU → BatchNorm, and a softmax over 7 classes; 7,772,071 parameters.

Training in the paper. 803 DeepGlobe tiles (2,448 px at 0.5 m) resized to 224 px, so the network sees 5.46 m per pixel, with flips, brightness/contrast, shift-scale-rotate and elastic augmentation; loss = 0.4 × weighted cross-entropy + 0.6 × focal Tversky (α 0.7, β 0.3, γ 0.75); Adam with early stopping.

Class (paper, DeepGlobe)IoU
Urban land0.719
Agriculture land0.717
Rangeland0.353
Forest land0.722
Water0.658
Barren land0.568
Unknown0.983
Mean0.674

Four findings from scaling the model up

  1. The network depends on how images are shrunk. Training used OpenCV's bilinear resize without antialiasing, which keeps a sparse sample of the 0.5 m texture. On 40 DeepGlobe tiles forest IoU is 0.58 with that resize and 0.00 with an antialiased one; this site resamples the same way.
  2. A post-processing quirk. The published clean-up never re-assigns the specks it removes, so they become class 0, urban land. Here, removed specks take the class of the nearest surviving region.
  3. Annual mosaics need colour normalisation. The yearly Sentinel-2 cloudless mosaics differ in processing; without correction the network reports processing changes as land-cover change. Each year is mapped onto the 2018–2025 average. Even so, the 2016 and 2018 mosaics are read less reliably than 2019 onwards.
  4. The domain gap the paper predicted is large. On Nepal's held-out districts the original weights reach a mean IoU of 0.111; fine-tuning raised it to 0.553.

Data sources

SourceUsed forLicence
Esri World Imagery and WaybackSub-metre imagery for the U-Net and mapsEsri terms of use
Sentinel-2 cloudless by EOX (2016, 2018 onwards)Annual 10 m mosaics for the year-by-year land coverCC BY 4.0 (2016) / CC BY-NC-SA 4.0
Impact Observatory / Esri 10 m land coverTraining labels, reference map, local-unit land coverCC BY 4.0
ESA WorldCover 2021Independent test of the modelCC BY 4.0
NASA FIRMS (VIIRS, MODIS)Active fires, live and since 2001NASA open data
NASA GIBS (MODIS Terra)Daily satellite imagesNASA open data
USGS ComCatEarthquakes, live and since 1950Public domain
Open-Meteo (ECMWF, DWD, NOAA; CAMS; ERA5)Weather, air quality, weather historyCC BY 4.0
GloFAS v4 (Copernicus EMS) via Open-MeteoRiver flows, forecasts and flood levelsCC BY 4.0
World Bank WDI and Climate Knowledge Portal (CRU TS, ERA5)National statistics and climate since 1901CC BY 4.0
OCHA / Survey Department of NepalProvince, district and local-unit boundariesCC BY-IGO

Limitations

Source: Khadka & Pradhan (2026); evaluation against ESA WorldCover 2021 and Impact Observatory 2021 on 11 held-out districts.