Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I'm using OSM2PO to route for walking directions and I've noticed a lot of the OSM walking paths are not ideally setup.

For example there are many paths which get divided up by parking lots, which are obviously walkable, but they are ignored and not converted to roads, so the router believes you can't walk through them. This results in much longer walking distances than necessary.

Is there any practical way to deal with this? I guess the same problem occurs when dealing with any "areas" that are walkable (ie. parks without paths through them).

Another issue is where sidewalks do not connect to roads. In many situations this again leads to sub par routing results.

OSM has these issues all over the place. It sounds like a difficult problem, but a common one, so I'm wondering if anyone has addressed this in a practical way.

Thanks for your thoughts!

share|improve this question
add comment

3 Answers

up vote 4 down vote accepted

Bearing in mind Sean's answer (that you have to add 'missing' pats yourself) as well as that these missing parts technically are parts of road-graph which are in turn are just lines, here is the quick'n'dirty workaround you may use. If the walking path has a common point with a "walkable" polygon, export this polygon's border as a line into your road-graph (modifying attributes if necessary). So the path won't break on the border of such polygon but instead it will be mapped along its perimeter.

Second (optional) step is to construct a direct path through the polygons. If you will add special tag to exported borders (i.e. make them identifiable), you can select nodes of the real paths that lie on the same exported border and create a simple straight line from one point to another and add this line to your graph - you will get your fictional unbroken paths. Now you can delete the borders from the graph. Depending on the software you prefer and your skills you may construct fictional paths with this algorithm without actually adding borders to your graph.

share|improve this answer
    
Thanks for your answers. Good points. For osm2po, does anyone have suggestions for which layer to try this on?ie on the osm data before it hits osm2po or during the osm2po graph building... –  DFx Sep 1 '12 at 21:52
add comment

The only practical way is to add the 'missing' routes the data yourself. OSM probably shouldn't be putting parking lots into its walking routes. There are liability issues with adding routes that aren't real, properly maintained pedestrian paths. A parking lot, though walkable, could be dangerous and could be private property. You'll have similar issues with parks or any other space that isn't built for pedestrian travel. Consider these issues carefully before routing people through these areas.

share|improve this answer
    
+1 - They could also be fenced, or have drainage ditches along the perimeter, etc. –  Andrew Heath Jul 25 '13 at 6:43
add comment

Yes, the problem is the OSM-Data itself. For routing you'll need a network of lines (edges) and links (vertices). The Polygon is another problem. I think the easiest way to cope with it is to draw additional paths directly into JOSM. In osm2po there are two alternatives to handle foot/bike/car. Either build a graph for excactly one use case, or build a multi purpose graph (with all roads, paths, etc.) and make decisions dynamically while traversing (routing). For the latter Java-Skills may be needed. To get a first impression of how this might work, have a look into the current plugins jar (source code is attached). There you'll find a router that waits at traffic signals for one minute.

share|improve this answer
    
Thanks Carsten - I can see that JOSM would be ideal, but I'm trying to do this for the entire Canada/US. I think just turning a polygon into multiple paths would work in my situation since I'm just trying to get a rough walking time/distance (not display actual routing directions). So I wonder if there is a way to have osm2po convert the polygons into paths before it builds the graph, or would I have to update the OSM file first... –  DFx Sep 2 '12 at 14:16
    
osm2po does not convert polygons. This has to be done in another preprocessing step. If you see any chance to convert polygons into simple ways and to connect them to the road network then I see a chance to merge both data. But how are you going to manage it, anyway? Polygons may have many inner holes like lakes e.g. How can you ensure your users do not have to carry a SCUBA-equipment all the way? –  Carsten Sep 2 '12 at 15:25
    
Yeah I see your point - it'd be far from easy :) –  DFx Sep 2 '12 at 15:32
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.