Skip to Content

Osm2po ou le calcul simple d'itinéraires avec les données OpenStreetMap

Niveau Débutant
Logiciels utilisés osm2po
Plateforme Windows | Mac | Linux | FreeBSD

Mon attention a été attirée par 2 articles d'Anita Graser (membre du  « team »  de Quantum Gis, mieux connue sous le nom d'underdark sur les listes et forums de Qgis ou sur Gis-stack Exchange) sur « Planet OsGeo » (planet.osgeo.org/) à propos du calcul d'itinéraires (routing) à l'aide des données OpenStreetMap.

underdark.wordpress.com/2011/12/15/an-osm2po-quickstart/

underdark.wordpress.com/2011/12/18/osm2po-part-2-pgrouting-on-osm-the-easy-way/

Le programme en Java s'appelle osm2po et il est très facile d'utilisation :

  1. télécharger les données OpenStreeMap au format pbf  à download.geofabrik.de/osm/europe/, par exemple.
  2. utiliser le programme en ligne de commandes (terminal, invite de commandes)

java -jar osm2po-core-4.2.30-signed.jar prefix=at "/Users/Shared/telechargement/20_12_11/belgium.osm.pbf"

Après de nombreuses manipulations où l'on apprend que le programme est Freeware mais pas OpenSource ou Libre ainsi que les conditions d'utilisation. Donc je précise que osm2po est l'oeuvre de Carsten Moeller - Pinneberg, Germany :


 

Premier résultat obtenu : une URL

Waiting for requests at http://localhost:8888/Osm2poService

L'ouverture de cette URL offre l'interface de traitement qui permet d'effectuer divers calculs d'itinéraires en déplaçant les points noir (en théorie, mais vert dans mon cas...) et rouge à l'aide de la librairie OpenLayers :

itinéraire simple

itinéraire le plus court

etc...

En pratique, le programme transforme les données OpenStreetMap en un graphe topologique valué.

Deuxième résultat obtenu :  requête SQL (PostgreSQL/PostGIS)

INFO   commandline template:
 psql -U martin -d osm  -q -f "/Users/Shared/telechargement/20_12_11/osm2po-4.2.30/at/at_2po_4pgr.sql"

Et oui, il permet aussi d'insérer ce graphe topologique dans PostGis, puis de l'ouvrir dans Qgis, par exemple :


 

Les attributs permettent de voir les éléments du graphe topologique, les arcs (source et target)  ainsi que les poids du graphe valué (cost), entre autre choses :

Les itinéraires peuvent alors être calculés avec la librairie PgRouting de PostgreSQL ou avec le plugin   « pgRouting Layer » de Qgis  (en téléchargeant la dernière version sur github.com/anitagraser/pgRoutingLayer).

Tous les traitements ont été effectués sur Mac OS X avec osm2po, version 4.2.30.

Site officiel : osm2po

Commentaires

Poster un nouveau commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.