-
Notifications
You must be signed in to change notification settings - Fork 3
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
Experiments around clustering of intersections #89
Comments
Large intersections that need to be clustered from smaller ones are very individual. Intersections are often grouped into types, such as T-, Y-, X-, #-intersections. But in reality, these types are more mental constructs and almost always differ in details from these theoretical types. Therefore, the collection of intersections I have used can only give some basic ideas of what can happen, when trying to find a clustered intersection area. As a first experiment, I used the intersections of type major and main see here. I used intersections on scene files we already have since some time (stored in the repository osm_extracts). The middle column shows the individual areas that are constructed from the original ways. The right column displays the area of a convex hull around the major and main intersections.
|
Isn't this the intersection of Straße der Pariser Kommune and Karl-Marx-Allee? |
You are right. I corrected it in the post. Sorry about that. |
Typically a crosswalk is not part of an intersection as shown on the screenshots above. Crosswalks can be safely omitted for the generation of clustered intersections. Cycleways can be also omitted for now for the generation of clustered intersections. In general, cycleways are more tricky. There can be a cycle lane right on the roadway as shown on the photo below. The OSM tagging for the above case is described in the article cycleway=lane. If the tag Rendering of a cycleway lane on a clustered intersection with a texture is hardly possible. Instead a mesh-based lane marking can be used to render the cycleway lane on the intersection. Finally, I suggest considering only major ways for the generation of the clustered intersections. |
Intersections of common streets may be constructed using intersection points of their boundaries. A simple algorithm can be used to construct the polygon area of such intersections Here are some examples:
There are two exceptions, however, where several such intersections must be combined into a larger area, an intersection cluster. These are way bundles and dense intersections groups. A classic example for the former is the intersection of the Straße der Pariser Kommune and the Karl-Marx-Allee in Berlin:
Here, the ends of bundled (parallel) ways intersect and require a larger intersection area than the individual intersections of their lanes. The latter reason may be dense groups of (sometimes overlapping) intersections, as here on Moscow's Leningradski Prospekt:
In earlier experiments, I found that Density-Based Spatial Clustering (DBSCAN) algorithms, which group points that are densely packed together (points with many nearby neighbors), are the best approach to finding such clusters. Some discussions, mainly about categorizing the intersections based on their road types, have already been done in issue #80, starting here
In the following posts, I will take a look at the process of creating intersection areas from these point clusters.
The text was updated successfully, but these errors were encountered: