unet-roads
Road segmentation for very high resolution RGB aerial and satellite imagery, packaged as a base model for fAIr, the Humanitarian OpenStreetMap Team's open GeoAI platform. The network predicts a road probability for every pixel of a 256 x 256 chip (about 0.3 m per pixel). The fAIr pipeline built around it mosaics the chips of a request and vectorises the road mask into road surface polygons.
Files
unet-roads.pt: PyTorch checkpoint (torch.savedict withencoder_nameandstate_dict) for a segmentation-models-pytorch U-Net with a ResNet34 encoder, one output channel.unet-roads.onnx: the same network exported to ONNX. Inputimage, float32[1, 3, 256, 256]scaled to 0-1; outputlogits,[1, 1, 256, 256].
Training data
- Base stage: SpaceNet 3 road centrelines over Khartoum and Paris (CC-BY-SA-4.0).
- Fine-tuning stage: OpenAerialMap drone imagery (CC-BY-4.0) with OpenStreetMap highways (ODbL-1.0) over Maputo, Freetown and Dar es Salaam.
All labels are centrelines buffered to 6 m, so the predicted road surface is about that wide regardless of the real road width.
Evaluation
Held-out spatial blocks, relaxed metrics with a 3-pixel tolerance: Khartoum IoU 0.53, relaxed F1 0.44; Paris IoU 0.56, relaxed F1 0.20. On drone imagery the OpenStreetMap reference is incomplete, so the road masks were also reviewed by eye: 69 percent chip-level accuracy on Banepa, Nepal, imagery never seen in training.
Limitations
Misses narrow footpaths, tracks under canopy and lanes in shadow; can mark long metal roofs and plot boundaries as roads. The polygons show where a road runs, not its measured width. Intended as a starting point for local fine-tuning, with human review of every prediction before it reaches OpenStreetMap.
Attribution
SpaceNet (Van Etten et al., 2018, arXiv:1807.01232). Road labels copyright OpenStreetMap contributors. Imagery from OpenAerialMap contributors.