Import/GwadaBot — BD TOPO® IGN Guadeloupe
| Attribut |
Valeur
|
| Statut |
En préparation — en attente de validation communautaire
|
| Territoire |
Guadeloupe (département 971, France — 16.2°N, 61.5°W)
|
| Source |
IGN BD TOPO® v3.5 — millésime décembre 2025
|
| Licence source |
Licence Ouverte Etalab 2.0 (compatible ODbL ✅)
|
| Compte bot |
GwadaBot
|
| Opérateur |
Maxence
|
| Code source |
https://github.com/MaxLananas/gwadabot
|
| Contact |
imports@openstreetmap.org / talk-fr@openstreetmap.org
|
| Discussion forum |
forum.openstreetmap.fr
|
Pourquoi cet import ?
La Guadeloupe (1 628 km², ~400 000 habitants) est l'un des territoires français les moins bien couverts sur OpenStreetMap. Une analyse Overpass (mars 2026) révèle :
| Donnée |
OSM actuel |
BD TOPO IGN |
Couverture estimée
|
| Bâtiments |
< 50 000 |
379 503 |
~13%
|
| Routes |
57 742 ways |
72 695 tronçons |
~79%
|
| Cours d'eau |
partiel |
16 796 tronçons |
< 30%
|
| Végétation |
quasi-absent |
66 970 zones |
< 5%
|
| Terrains de sport |
~50 |
747 |
~7%
|
Aperçu visuel
Exemple de fichier .osc généré par GwadaBot, ouvert dans JOSM :
Voir l'aperçu JOSM en taille réelle
Source de données
IGN BD TOPO® v3.5 — Guadeloupe (D971)
- URL : https://data.geopf.fr/telechargement/
- Format : GeoPackage (.gpkg), 54 couches
- Projection native : RGAF09 UTM Zone 20N (EPSG:5490) — reprojeté en WGS84 (EPSG:4326)
- Millésime principal : 2025-12-15
- Millésimes disponibles : 2021-03, 2023-12, 2024-03, 2025-03, 2025-06, 2025-09, 2025-12
La Licence Ouverte Etalab 2.0 est confirmée compatible ODbL.
Données importées
13 couches — ~538 000 objets
Note : les limites de communes (ADMINISTRATIF) sont exclues du scope d'import — elles sont déjà bien mappées en Guadeloupe et constituent un sujet sensible (relations complexes). La couche est conservée uniquement pour le découpage des changesets par commune.
| Thème |
Couche BD TOPO |
Objets |
Géométrie |
Tags OSM principaux
|
| Bâtiments |
batiment |
379 503 |
MultiPolygon |
building, height, building:levels, building:flats
|
| Routes |
troncon_de_route |
72 695 |
LineString |
highway, oneway, lanes, width, surface
|
| Végétation |
zone_de_vegetation |
66 970 |
MultiPolygon |
natural=wood, landuse, wetland=mangrove, crop=sugarcane
|
| Hydrographie |
troncon_hydrographique |
16 796 |
LineString |
waterway, name, intermittent
|
| Terrains de sport |
terrain_de_sport |
747 |
MultiPolygon |
leisure=pitch, sport
|
| Pylônes |
pylone |
662 |
Point |
power=tower, height
|
| Réservoirs |
reservoir |
418 |
MultiPolygon |
man_made=reservoir
|
| Équipements transport |
equipement_de_transport |
384 |
MultiPolygon |
amenity, aeroway
|
| Plans d'eau |
plan_d_eau |
71 |
MultiPolygon |
natural=water, water
|
| Constructions surf. |
construction_surfacique |
56 |
MultiPolygon |
divers
|
| Cimetières |
cimetiere |
50 |
MultiPolygon |
landuse=cemetery
|
| Lignes électriques |
ligne_electrique |
28 |
LineString |
power=line, voltage
|
| Aérodromes |
aerodrome |
9 |
MultiPolygon |
aeroway=aerodrome, icao, iata
|
Mapping détaillé
Bâtiments
| Champ IGN |
Tag OSM |
Notes
|
USAGE1 = Résidentiel |
building=residential |
|
USAGE1 = Commercial et services |
building=commercial |
+ fixme=Verifier si retail ou commercial
|
USAGE1 = Industriel |
building=industrial |
|
USAGE1 = Agricole |
building=farm |
|
USAGE1 = Sportif |
building=sports |
|
USAGE1 = Religieux |
building=yes + amenity=place_of_worship |
+ fixme=Verifier religion et denomination
|
USAGE1 = Annexe |
building=yes |
|
USAGE1 = Indifférencié |
building=yes |
|
USAGE2 (si différent) |
building:use |
Usage secondaire
|
HAUTEUR |
height |
Arrondi 0.1m
|
NB_ETAGES |
building:levels |
RDC inclus (convention IGN = convention OSM)
|
NB_LOGEMENTS |
building:flats |
|
LEGER = Oui |
building=shed |
|
ETAT contient "ruine" |
ruins=yes |
|
ETAT contient "construction" |
building=construction |
|
Routes
NATURE IGN |
Tag OSM |
Notes
|
| Autoroute |
highway=motorway |
|
| Quasi-autoroute |
highway=trunk |
|
| Bretelle |
highway=trunk_link |
Pas d'autoroute en Guadeloupe
|
| Route à 2 chaussées |
highway=primary |
trunk si IMPORTANCE=1 ou 2
|
| Route à 1 chaussée |
highway=secondary |
|
| Route empierrée |
highway=unclassified + surface=unpaved |
|
| Chemin |
highway=track |
|
| Sentier |
highway=path |
|
| Piste cyclable |
highway=cycleway |
|
| Escalier |
highway=steps |
|
| Rond-point |
junction=roundabout |
|
Attributs supplémentaires :
SENS → oneway (yes / no / -1)
LARGEUR_DE_CHAUSSEE → width
NB_VOIES → lanes
POS_SOL < 0 → tunnel=yes + layer
POS_SOL > 0 → bridge=yes + layer
REVETEMENT → surface (asphalt, concrete, gravel, ground...)
Note : VITESSE_MOYENNE_VL n'est pas importé comme maxspeed. C'est la vitesse moyenne observée, pas la limite réglementaire.
Hydrographie
Données linéaires (axe du cours d'eau) :
NATURE IGN |
Tag OSM
|
| Cours d'eau |
waterway=river
|
| Canal |
waterway=canal
|
| Fossé |
waterway=ditch
|
| Ravine |
waterway=stream + note=ravine
|
| Ruisseau |
waterway=stream
|
Végétation
Le convertisseur résout le champ NATURE avec fallback sur TFV (type de formation végétale, BD TOPO v3.5). Conforme aux conventions landuse=orchard et Key:crop :
NATURE / TFV IGN |
Tags OSM |
Notes
|
| Forêt fermée de feuillus |
natural=wood + leaf_type=broadleaved |
|
| Forêt fermée de conifères |
natural=wood + leaf_type=needleleaved |
|
| Mangrove |
natural=wetland + wetland=mangrove |
|
| Bananeraie |
landuse=orchard + trees=banana_plants |
Conforme orchard
|
| Canne à sucre |
landuse=farmland + crop=sugarcane |
Conforme Key:crop
|
| Verger |
landuse=orchard |
|
| Vigne |
landuse=vineyard |
|
| Broussailles |
natural=scrub |
|
| Lande ligneuse |
natural=heath |
|
Conflation
Logique de décision
| Distance (Haversine) |
Action |
Détails
|
| < 10 m |
Skip ou mise à jour des tags |
On garde la position OSM, on ne déplace pas
|
| 10–50 m |
Mise à jour géométrie + tags |
On met à jour vers la position IGN (précision métrique ortho-rectifiée, supérieure aux anciens tracés Bing/Mapbox)
|
| > 50 m |
Création |
Objet absent d'OSM
|
Priorité des tags
| Priorité IGN (on écrase) |
Priorité OSM (on préserve)
|
highway, waterway, building, surface |
name, name:fr, name:gcf, alt_name
|
height, building:levels |
wikipedia, wikidata
|
bridge, tunnel, layer |
website, phone
|
width, lanes, oneway, ref |
opening_hours, description, wheelchair
|
Implémentation technique
- Recherche spatiale via R-tree (STRtree, Shapely 2.0) — O(log n)
- Overpass parallélisé : 16 sous-zones (grille 4×4), 4 threads, retry ×3 avec backoff exponentiel
- Distance calculée par formule de Haversine (rayon terrestre 6 371 km)
Technique
Pipeline
GeoPackage (.gpkg, EPSG:5490)
→ gpd.read_file() Lecture via pyogrio (backend GDAL)
→ .to_crs(epsg=4326) Reprojection → WGS84
→ shapely.force_2d() Strip Z-coords vectorisé
→ shapely.make_valid() Validation géométrique vectorisée
→ compute_stats_fast() Stats par échantillonnage numpy (n=1000)
→ ConflationEngine Matching spatial R-tree [optionnel]
→ geom_to_features() Décomposition Multi* → features unitaires
→ generate_osc() Sérialisation XML OsmChange
→ logs/<theme>_<millesime>/ Fichiers .osc inspectables dans JOSM
Limites respectées
| Paramètre |
Valeur |
Justification
|
| Objets par changeset |
500 |
5% de la limite OSM, facilite le revert partiel
|
| Délai entre changesets |
2 secondes |
Courtoisie serveur
|
| Objets par jour |
50 000 |
Auto-limitation
|
Tags de changeset
comment = "GwadaBot -- Import Guadeloupe depuis BD TOPO IGN"
source = "IGN BD TOPO 2025-12-15 -- Licence Ouverte Etalab 2.0"
bot = "yes"
import = "yes"
created_by = "GwadaBot/2.1"
url = "https://wiki.openstreetmap.org/wiki/Import/GwadaBot"
Évolution des données IGN
| Millésime |
Bâtiments |
Delta bâti |
Routes |
Delta routes
|
| 2021-03-15 |
382 692 |
— |
69 670 |
—
|
| 2023-12-15 |
380 637 |
-2 055 |
71 552 |
+1 882
|
| 2024-03-15 |
380 605 |
-32 |
71 643 |
+91
|
| 2025-03-15 |
380 064 |
-541 |
72 442 |
+799
|
| 2025-06-15 |
379 737 |
-327 |
72 736 |
+294
|
| 2025-09-15 |
379 674 |
-63 |
72 743 |
+7
|
| 2025-12-15 |
379 503 |
-171 |
72 695 |
-48
|
| Total |
|
-3 189 |
|
+3 025
|
Retours communautaires intégrés
Suite aux discussions sur le forum OSM France et talk-fr@ (mars 2026) :
| Modification |
Avant |
Après |
Source
|
| VITESSE_MOYENNE_VL |
Importé comme maxspeed |
Supprimé — vitesse observée ≠ limite réglementaire |
bibi
|
| Religieux |
building=church |
building=yes + amenity=place_of_worship + fixme |
bibi + benoitdd
|
| Commercial |
building=commercial |
+ fixme=Verifier si retail ou commercial |
bibi
|
| Bretelle |
highway=motorway_link |
highway=trunk_link |
bibi
|
| Route à 2 chaussées |
highway=trunk |
highway=primary (trunk si IMPORTANCE=1-2) |
bibi
|
| Bananeraie |
crop=banana |
trees=banana_plants (conforme wiki orchard) |
bibi
|
| Communes |
Incluses dans --all |
Exclues — déjà bien mappées, sujet sensible |
benoitdd
|
| Changesets |
Séquentiels |
Localisation par commune (en cours) |
benoitdd
|
Calendrier
| Phase |
Action |
Statut
|
| Communication |
Page wiki + emails imports@ et talk-fr@ + forum.openstreetmap.fr |
Fait
|
| Review |
Période de commentaires communautaires |
En cours
|
| Intégration |
Prise en compte des retours (bibi, benoitdd) |
Fait
|
| Tests |
Dry-run, partage des .osc, screenshots JOSM |
En cours
|
| Production |
Import thème par thème |
En attente d'accord
|
Références