Quelle est la meilleure façon de mettre en œuvre le routage dans des zones telles que les parkings?

9

J'utilise OSM2PO pour l'itinéraire pour les itinéraires à pied et j'ai remarqué que de nombreux sentiers de marche OSM ne sont pas idéalement configurés.

Par exemple, il existe de nombreux chemins qui sont divisés par des parkings, qui sont évidemment accessibles à pied, mais ils sont ignorés et non convertis en routes, donc le routeur pense que vous ne pouvez pas les traverser. Il en résulte des distances de marche beaucoup plus longues que nécessaire.

Existe-t-il un moyen pratique de résoudre ce problème? Je suppose que le même problème se produit lorsque vous traitez avec des "zones" accessibles à pied (c.-à-d. Des parcs sans sentiers les traversant).

Un autre problème est celui où les trottoirs ne sont pas reliés aux routes. Dans de nombreuses situations, cela conduit à nouveau à des résultats de routage inférieurs à la normale.

OSM a ces problèmes partout. Cela semble être un problème difficile, mais commun, donc je me demande si quelqu'un a résolu ce problème de manière pratique.

Merci pour vos pensées!

DFx
la source

Réponses:

5

En gardant à l'esprit la réponse de Sean (que vous devez ajouter vous-même les tapotements `` manquants '') et que ces parties manquantes sont techniquement des parties de road-graph qui sont à leur tour de simples lignes, voici la solution rapide que vous pouvez utilisation. Si le chemin de randonnée a un point commun avec un polygone "accessible à pied", exportez la bordure de ce polygone sous forme de ligne dans votre graphique de route (en modifiant les attributs si nécessaire). Ainsi, le chemin ne se cassera pas à la frontière d'un tel polygone, mais il sera plutôt cartographié le long de son périmètre.

La deuxième étape (facultative) consiste à construire un chemin direct à travers les polygones. Si vous ajoutez une balise spéciale aux bordures exportées (c'est-à-dire que vous les rendez identifiables), vous pouvez sélectionner des nœuds des chemins réels qui se trouvent sur la même bordure exportée et créer une ligne droite simple d'un point à un autre et ajouter cette ligne à votre graphique - vous obtiendrez vos chemins fictifs ininterrompus. Vous pouvez maintenant supprimer les bordures du graphique. Selon le logiciel que vous préférez et vos compétences, vous pouvez construire des chemins fictifs avec cet algorithme sans ajouter de bordures à votre graphique.

SS_Rebelious
la source
Merci pour vos réponses. Bons points. Pour osm2po, quelqu'un a-t-il des suggestions pour quelle couche essayer ceci? C'est-à-dire sur les données osm avant qu'elles ne touchent osm2po ou pendant la construction du graphique osm2po ...
DFx
6

Le seul moyen pratique consiste à ajouter vous-même les routes «manquantes». OSM ne devrait probablement pas mettre des parkings dans ses itinéraires de randonnée. Il y a des problèmes de responsabilité avec l'ajout d'itinéraires qui ne sont pas de vrais sentiers pédestres correctement entretenus. Un parking, bien que praticable, pourrait être dangereux et pourrait être une propriété privée. Vous aurez des problèmes similaires avec les parcs ou tout autre espace qui n'est pas conçu pour les déplacements à pied. Examinez attentivement ces problèmes avant d'acheminer des personnes à travers ces zones.

Sean
la source
1 - Ils pourraient également être clôturée, ou avoir un drainage des fossés le long du périmètre, etc.
Drew
1

Oui, le problème vient des données OSM elles-mêmes. Pour le routage, vous aurez besoin d'un réseau de lignes (arêtes) et de liens (sommets). Le polygone est un autre problème. Je pense que la façon la plus simple d'y faire face est de dessiner des chemins supplémentaires directement dans JOSM. Dans osm2po, il existe deux alternatives pour gérer pied / vélo / voiture. Soit créer un graphique pour exactement un cas d'utilisation, soit créer un graphique polyvalent (avec toutes les routes, chemins, etc.) et prendre des décisions de manière dynamique pendant la traversée (routage). Pour ces derniers, des compétences Java peuvent être nécessaires. Pour avoir une première impression de la façon dont cela pourrait fonctionner, jetez un œil au pot de plugins actuel (le code source est joint). Vous y trouverez un routeur qui attend aux feux de circulation pendant une minute.

Carsten
la source
Merci Carsten - je peux voir que JOSM serait idéal, mais j'essaie de le faire pour l'ensemble du Canada / États-Unis. Je pense que simplement transformer un polygone en plusieurs chemins fonctionnerait dans ma situation car j'essaie simplement d'obtenir un temps / une distance de marche approximative (sans afficher les directions de routage réelles). Je me demande donc s'il existe un moyen pour qu'osm2po convertisse les polygones en chemins avant de construire le graphique, ou devrais-je d'abord mettre à jour le fichier OSM ...
DFx
osm2po ne convertit pas les polygones. Cela doit être fait dans une autre étape de prétraitement. Si vous voyez une chance de convertir des polygones de manière simple et de les connecter au réseau routier, je vois une chance de fusionner les deux données. Mais comment allez-vous le gérer, de toute façon? Les polygones peuvent avoir de nombreux trous intérieurs comme des lacs, par exemple. Comment pouvez-vous vous assurer que vos utilisateurs n'ont pas à porter un équipement de plongée sous-marine tout le long?
Carsten
Ouais je vois votre point - ce serait loin d'être facile :)
DFx