OpenStreetMap

Продолжаем тему генерализации. Как известно, генерализация – это отбор и обобщение той информации, которую мы хотим показать на карте, особенно мелких (обзорных) масштабов.

В OSM c генерализацией все 20 лет всё совсем печально. Напоминаю, мапник на 4-м зуме пустой абсолютно.

Но мы же не будем сидеть сложа руки? Всего несколько строчек кода, и вуаля, на карте появились города:

Посмотреть картинку в нормальном разрешении можно тут.

Видно не только Екатеринбург и Пермь, а вылезла даже Дудинка, Туруханск и Ленск.

Ни у кого такого нет, даже у гугла, а у меня есть. Вот интересно, мне поставят золотые памятники при жизни?

UPD. Вот в комментах пишут, что всё у всех есть, существует даже плагин для QGIS, который умеет вычислять “картографическую значимость” горных вершин и населенных пунктов. Это только на openstreetmap.org генерализации нет, потому что это не интересно osm-cообществу.

Discussion

Comment from imagico on 29 December 2023 at 19:19

Been there, done that (in 2015):

https://imagico.de/map/osm_populated_en.php https://imagico.de/maps/#map=5/54.111/46.538&lang=en&l=veg&r=pplaces&o=3&ui=8

The resonance for innovative map design related methodology development receives in the OSM community is often very limited. The most substantial public recognition the above received was from outside OpenStreetMap:

https://link.springer.com/article/10.1007/s42489-021-00079-y

Comment from Zkir on 30 December 2023 at 17:52

Ok, no golden statues for my esteemed predecessors, and no reason why I should more lucky. :)

@imagico, thank you for this comment anyway. You site (imagico.de) is very impressive. The cited paper is also very helpful.

the resonance for innovative map design related methodology development receives in the OSM community is often very limited.

What do you think is the reason for that? It’s a bit strange for me, because the emptiness of the standard map style is the problem which all are complaining about since OSM appearing.

Also, I was quite surprised how easy it is to implement at least the Label Grid method in PostGis. Practically no changes are required in the rendering process, just rank calculation.

Comment from Zkir on 1 January 2024 at 13:53

@imagico,

Just a question, maybe you know the answer. Can the Discreet Isolation algorithm work on global datasets by itself?

For example, there are already about one million natural=peak in OSM. Since complexity of the algorithm is quadratic, there will be 1,000,000,000,000 of pairs, for which distance should be calculated.

It seems that some kind of pre-clustering is necessary. Any ideas on that?

Comment from imagico on 1 January 2024 at 15:48

What do you think is the reason for that? It’s a bit strange for me, because the emptiness of the standard map style is the problem which all are complaining about since OSM appearing.

I think the reasons are complex and consist of OSM specific reasons and ones that more broadly originate in social mechanisms in FOSS development in general.

OSM-Carto has the additional difficultly that it wants to be real time updated - which puts substantial additional constraints on the methods that can be used.

Just a question, maybe you know the answer. Can the Discreet Isolation algorithm work on global datasets by itself?

I have not looked in more depth into optimization of these methods. This depends a lot on the exact use case and the method used. If you are practically ok with limiting the maximum distance to consider you can use spatial indexing to limit the number of pair relationships to analyze. Specialized tree structures combining the spatial dimensions and the semantic dimension (like elevation, population) could be even better.

But also keep in mind that distance calculation is relatively cheap - so 10^12 of these is not necessarily a reason to invest a lot of effort into setting up complex algorithms and data structures for optimization.

Log in to leave a comment