First Steps
Once the plugin is installed and your environment is configured, this page walks you through the complete SemanticSeg4EO workflow from raw satellite imagery to a segmentation map.
Opening the Plugin
You can open the SemanticSeg4EO dialog in two ways:
Toolbar: Click the SemanticSeg4EO icon in the QGIS toolbar
Menu: Go to Raster → &SemanticSeg4EO → SemanticSeg4EO
The main dialog opens with three tabs:
Patch Extraction — Slice large images into training patches
Model Training — Train a segmentation model on your patches
Prediction — Apply your trained model to new imagery
The main SemanticSeg4EO dialog with its three workflow tabs.
The Output & Progress Panel
At the bottom of the dialog is the Output & Progress panel. It shows:
A scrolling log of all messages from the external Python process
A progress bar updated in real time
A Cancel button to interrupt processing at any time
A Detach Log button to open the log in a separate resizable window
The panel can be resized by dragging the horizontal splitter between the tabs and the output area.
Typical Workflow
A typical SemanticSeg4EO workflow has three stages:
1. PREPARE DATA
Large satellite GeoTIFF (image) + Label GeoTIFF (mask) + Grid Shapefile
↓
2. EXTRACT PATCHES (Tab 1)
Georeferenced patch GeoTIFFs organized in train/val/test folders
↓
3. TRAIN MODEL (Tab 2)
.pth checkpoint file saved to output directory
↓
4. PREDICT (Tab 3)
Segmentation GeoTIFF loaded automatically in QGIS
Preparing Your Data
Before running the plugin, you need three inputs:
1. Satellite Image (GeoTIFF)
A multi-band georeferenced GeoTIFF. For example:
Sentinel-2 (10–60m resolution, 4–12 bands)
SPOT, Pléiades, or any other sensor
Any number of bands (configured via Input Channels)
2. Label / Mask (GeoTIFF)
A single-band GeoTIFF with integer class values:
Binary mode: pixel values are
0(background) or1(class of interest)Multi-class mode: pixel values are
0toN-1(one value per class)
The label raster must cover the same geographic extent as (or overlap with) your image.
3. Grid Shapefile
A polygon grid defining patch locations. Each polygon becomes one patch.
Tip
To create a grid in QGIS, go to Vector → Research Tools → Create Grid. Set the grid extent to your study area and the cell size to your desired patch size in map units (e.g., 256 × 10m = 2560m cells for a 256-pixel patch at 10m resolution).
Your data folder can be organized however you like. For batch extraction, the recommended convention is:
data_folder/
├── Image_1.tif ← satellite image
├── Label_1.tif ← label/mask
├── Image_2.tif
├── Label_2.tif
├── Grid_1.shp ← optional per-image grid
├── Grid.shp ← shared grid (used for all images)
└── ...
Checking the Environment Before Processing
Before clicking Start Extraction, Start Training, or running Prediction, always check the environment status bar at the top of the dialog.
🟢 Green / configured: environment is ready
🔴 Not configured: click Configure Environment first
Processing will not start if no environment is configured.
Cancelling a Process
Any running process can be cancelled at any time by clicking the Cancel button in the Output & Progress panel. The external Python process will be terminated gracefully.
If a process is running when you try to close the dialog, QGIS will ask for confirmation before cancelling and closing.
Next Steps
Patch Extraction — Detailed patch extraction options
Model Training — All training parameters explained
Prediction — Running predictions on new images