Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🔧 REFACTOR: leverage osmnx for graph simplification #64

Open
e-lo opened this issue Oct 29, 2024 · 2 comments
Open

🔧 REFACTOR: leverage osmnx for graph simplification #64

e-lo opened this issue Oct 29, 2024 · 2 comments

Comments

@e-lo
Copy link

e-lo commented Oct 29, 2024

I don't think (?) there is a need to re-implement the graph simplification that osmnx has?

@asu-trans-ai-lab
Copy link

We will address this feature request as soon as possible.

@asu-trans-ai-lab
Copy link

In fact, osm2gmns has had the intersection consolidation function implemented from the very beginning. We can also generate a meso movement-based network to connect with signal timing data. We will compare our consolidation results with OSMnx. If you have any particular findings from your comparisons between OSMnx and osm2gmns's consolidated results, using a sample network, please let us know as well. Thank you!

https://osm2gmns.readthedocs.io/en/latest/quick-start.html
Consolidate Intersections
In OpenStreetMap, one large intersection is often represented by multiple nodes. This structure brings some difficulties when performing traffic-oriented modelings. osm2gmns enables users to consolidate intersections that are originally represented by multiple nodes into a single node. Note that osm2gmns only identifies and consolidates signalized intersections.

net = og.getNetFromFile('asu.osm')
og.consolidateComplexIntersections(net, auto_identify=True)
og.outputNetToCSV(net)

--Generate Multi-Resolution Networks
osm2gmns can generate the corresponding mesoscopic and microscopic network for any macroscopic networks in GMNS format.

Generate multi-resolution networks from an osm file.

net = og.getNetFromFile('asu.osm', default_lanes=True)
og.consolidateComplexIntersections(net, auto_identify=True)
og.buildMultiResolutionNets(net)
og.outputNetToCSV(net)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants