Nous utilisons les données brutes au format .osm
pour en extraire les objets qui nous intéressent. Précisément
nous partons du fichier au format compressé .pbf
exporté depuis le site Geofabrik : il s'agit du fichier bretagne-latest.osm.pbf
qui vous a été fourni.
Nous utilisons pour cela deux utilitaires :
Utilitaire | Usage | Documentation |
---|---|---|
osmconvert | Conversion de formats et sélection par un polygone | http://wiki.openstreetmap.org/wiki/Osmconvert |
osmfilter | Sélection par clef et valeur | http://wiki.openstreetmap.org/wiki/Osmfilter |
Mise en pratique Les exécutables Windows ont été livrés sur la clef USB. Les versions Linux peuvent être installées à partir des pages Wiki ci-dessus.
La première étape consiste à :
.pbf
au format .osm
L'utilitaire osmconvert.exe
permet d'effectuer ces deux tâches en une seule opération.
Nous avons besoin du contour de la ville de Brest au format .poly
qui définit un polygone. L'outil en ligne http://polygons.openstreetmap.fr vu précédemment permet d'obtenir ce polygone à partir de l'identifiant de la relation Brest: 1076124.
Le polygone de Brest est fourni dans le fichier brest.poly
, il suffit donc de taper en ligne de commande :
osmconvert --drop-version -B=brest.poly bretagne-latest.osm.pbf > brest.osm
L'option –drop-version
permet d'éliminer l'historique des données, présent dans le fichier .osm
, pour ne conserver que la dernière version : la taille du fichier produit est ainsi réduite.
Le Wiki http://wiki.openstreetmap.org/wiki/FR:Map_Features qui décrit les entités OpenStretMap nous apprend que les bâtiments sont identifiées par la clef building
.
Nous utilisons l'utilitaire osmfilter.exe
pour sélectionner les objets de type building
et générer le fichier buildings.osm
:
osmfilter --keep="building=*" brest.osm > buildings.osm
Depuis la version 2.0 QGis intègre le support des données au format .osm
, et les stocke dans une base de données SpatialLite, dont le gestionnaire est intégré à QGis. Le menu Vecteur > OpenStreetMap
donne accès à trois opérations :
Télécharger les données OSM
: cette première étape consiste à télécharger depuis le site OpenStreetMap des données dans un fichier au format .osm
. Nous avons déjà ce fichier et pouvant passer à l'étape suivante.Importer la topologie depuis un XML
: cette étape consiste à créer une base SpatialLite à partir d'un fichier .osm
. Sélectionnez le fichier buildings.osm
créé à l'étape précédente et démarrez l'import : le fichier buildings.osm.db
est généré.Exporter la topologie vers SpatialLite
: cette opération consiste à créer une couche QGis à partir de la base SpatialLite créée. Choisissez Polygones
pour le Type d'export, sélectionnez éventuellement les étiquettes OSM (clefs, tags) qui seront converties en colonnes, et pressez OK
.Notre projet est maintenant bien avancé : il est temps de penser à nous désaltérer. Nous allons préparer cela à la prochaine et dernière étape de notre atelier.