ML Capstone Projects · Computer vision

EuroSAT Land-Use Classifier

Compare CNN and ResNet models on Sentinel-2 EuroSAT imagery, with class-level error analysis, Grad-CAM, multispectral experiments and an ONNX inference API.

Capabilities

What it does

  • Classifies 64×64 Sentinel-2 RGB tiles across 10 EuroSAT land-use classes and 27,000 images.
  • Compares a CNN baseline with frozen and fine-tuned ResNet-18 models using stratified train, validation and test splits.
  • Includes class-level error analysis, Grad-CAM visualisations, an optional 13-band GeoTIFF and NDVI study, and an executable notebook.
  • Exports the RGB model to ONNX and serves predictions through a FastAPI endpoint with a Docker workflow.

Compatibility

Platforms and requirements

Python · PyTorch · ONNX · FastAPI

  • EuroSAT imagery placed under data/EuroSAT/<class> for training
  • NVIDIA GPU used for reported training; exported model supports CPU inference
  • PyTorch
  • Computer Vision
  • Remote Sensing
  • ONNX

First steps

Run the local inference API

Exampleshell
docker build -t eurosat-api .
docker run -p 8000:8000 eurosat-api
curl -F "file=@tile.jpg" localhost:8000/predict
Browse ML Capstone Projects