SemanticSeg4EO — QGIS Plugin Documentation
SemanticSeg4EO is a QGIS plugin for semantic segmentation of satellite and aerial imagery using deep learning — all from within QGIS, without breaking your QGIS Python environment.
Key Design Principle
SemanticSeg4EO uses an external Python environment (Conda or venv) for all heavy processing. PyTorch, rasterio, and other dependencies are never loaded into QGIS itself, keeping your installation stable and conflict-free.
Overview
SemanticSeg4EO is designed for Earth Observation (EO) professionals who need to:
Extract training patches from large satellite GeoTIFFs
Train state-of-the-art deep learning segmentation models
Apply trained models to new large images with seamless reconstruction
All processing happens in a clean external Python environment, communicating with QGIS via temporary JSON and subprocess calls.
Plugin architecture: QGIS GUI talks to an external Python environment via subprocess.
Features at a Glance
Module |
Features |
|---|---|
Patch Extraction |
Single & batch mode, georeferenced GeoTIFF output, CRS validation, configurable train/val/test split, custom file naming patterns |
Model Training |
20+ architectures, 5 augmentation levels, 15+ loss functions, AMP mixed precision, K-Fold cross-validation, early stopping |
Prediction |
Large image tiling, Gaussian blending, batch inference, confidence map output, auto-load result in QGIS |
Supported Architectures
Category |
Architectures |
|---|---|
Built-in (no deps) |
|
SMP (segmentation-models) |
|
Transformer (modern) |
|
Quick Links
Environment Setup — Set up your Conda or venv environment
Patch Extraction — Extract training patches from large images
Model Training — Configure and launch model training
Prediction — Apply your model to new imagery
Troubleshooting — Common errors and fixes