Logo Lanfrica

Cephas2374/geocoding

Domain:

geospatial

Record type:

software
Creator:
Cep
Host:
Paper codes for ML Geocoding Africa # Graph-Based Geocoding for Africa — QGIS Plugin & Python Pipeline Automated geocoding and structured address generation for African cities using graph-based street network topology, trained on European reference cities and progressively adapted to sub-Saharan Africa. --- ## Paper This repository accompanies: > **Graph-Based Geocoding and Address Generation for Africa: A QGIS-Integrated Approach > Using Street Network Topology Trained on European Reference Cities** > Mwimangire C.B., Zephania A.E., Mutabesha E., Rawiel P., Schroder D. > *ISPRS International Journal of Geo-Information (MDPI), 2025 (under review)* ### Key results | Metric | V1 baseline | V5 final | Improvement | |--------|------------|----------|-------------| | EU–Africa quality gap | 0.214 | 0.098 | −54.2% | | Named-street coverage (Africa) | 38.7% | 71.3% | +84.2% | | Address completeness score | 0.521 | 0.683 | +31.1% | --- ## What this code does 1. Downloads street networks and building footprints from OpenStreetMap, Google Open Buildings, and Microsoft Building Footprints 2. Constructs primal graph G_p=(V_p, E_p) and dual graph G_d=(V_d, E_d) 3. Runs the Intersection Continuity Negotiation (ICN) algorithm for stroke detection 4. Applies four supervised ML classifiers (GBDT connectivity, Random Forest road-type, GBRT quality scoring) 5. Generates quality-scored addresses compliant with UPU S42 and ISO 19160-1:2015 6. Exports to OpenStreetMap XML, GeoJSON/GeoPackage, CSV --- ## Repository structure ``` urban_address_manager.py Main CLI entry point requirements.txt core/ address_assigner.py Building-to-street assignment (GBDT) batch_processor.py Multi-city batch pipeline cache_manager.py OSM data caching config.py Configuration and constants database_manager.py SQLite address database external_db_connector.py PostGIS / external DB export format_converter.py GeoJSON, OSM XML, CSV export logger.py Structured loggin …