OpenStreetMap

Как в действительности отрисован OSM

Posted by Zkir on 22 December 2023 in Russian (Русский). Last updated on 23 December 2023.

Продолжение. Предыдущие части тут и тут.

Генерализация в масштабах планеты прошла (ну или почти прошла), и мы наконец увидим, как на самом деле отрисован OpenStreetMap.

Итак, отображаются natural=* и landuse=* : Карта мира с покрытиями Если кликнуть по картинке и выбрать из меню “открыть картинку в новой вкладке”, можно рассмотреть ее в большем разрешении.

Если совсем коротко – Европа (что бы под этим словом не понималось) отрисована более-менее прилично, остальной мир – какие-то лоскуты. Евразийцев не завезли, степи и тундру рисовать никто не хочет. С американскими flyby states не лучше :)

Карта Европы с покрытиями (Если кликнуть по картинке и выбрать из меню “открыть картинку в новой вкладке”, можно рассмотреть ее в большем разрешении.)

Из интересного: видно пересохшее аральское море, natural=dry_lake. В Швейцарии видны зимние курорты, landuse=winter_sports

Немного статистики: До генерализации – 62 миллионов полигонов 2423 разных классов (т.е. 2423 всего значений тегов natural и landuse), после генерализации: 139 тысяч полигонов 242 разных классов. Число полигонов сократилось в 500 раз, количество классов(тегов) в 20 раз.

Следующая цель – онлайн карта, если удастся поднять свой тайловый сервер, да еще придумать где его разместить. Неужели опять под кроватью? Ненавижу жужание!

Может просто напилить тайлов в Tilemill и захостить статически, а не возиться с установкой мапника?

Материалы для скачивания

QGIS геоджейсоны обрабатывает очень медленно, рекомендую сразу конвертнуть в шейп

Discussion

Comment from SK53 on 22 December 2023 at 16:32

Nice to see you active in OSM again!

A couple of questions:

  • Can you make a geojson available for Europe (and possibly elsewhere)?
  • Do you have a suitable QGIS style file for the data?

I suspect you may need to make some kind of adjustment based on the proportion of a hexagon which is mapped with one of the tags you use. The Kola penisula may be a little damp, but not that wet, and towns in the North and East of the Urals show more prominently (a bit surprised that Perm is wood, I would have though it was big enough for one hexagon and landuse looks reasonably mapped).

Jerry

Comment from Zkir on 22 December 2023 at 19:11

Hi Jerry, I am really happy to get this comment from you :)

Can you make a geojson available for Europe (and possibly elsewhere)?

Sure, I’ve uploaded it to the google drive. It’s for the whole world, just 45Mb.

Do you have a suitable QGIS style file for the data?

No, and it’s a big problem for me. What you see in the pics is much from automatic random colors. Any help with QGIS style or with CartoCSS style sheet will be much appreciated.

I suspect you may need to make some kind of adjustment based on the proportion of a hexagon which is mapped with one of the tags you use.

Currently the algorithm is dumb simple. For each hexagon areas of each tag is calculated, and the tag with the biggest area is selected. Results are sometimes surprising. There may be some bugs though. Anyway, it’s a newborn baby, so some adjustments are very probable :)

First of all I am going to exclude/combine some tags, because 242 different tags in the output is too much.

Comment from solenoid jam on 23 December 2023 at 09:46

Очень интересная картинка. Большое количество значений наверно размывает общее представление о карте. Было бы интересно увидеть теплокарту просто по плотности точек. И еще по площади полигонов, для того что бы понять где натуральные объекты отрисованы слишком грубо.

Comment from SK53 on 23 December 2023 at 22:41

@Zkir: first go, more after Christmas

Comment from Zkir on 23 December 2023 at 22:46

@solenoid jam , спасибо)

Большое количество значений наверно размывает общее представление о карте.

В чем-то да. Но там где хорошо нарисовано, размытие меньше. Где нарисовано мало, начинает рябить. Но я над этим работаю.

Было бы интересно увидеть теплокарту просто по плотности точек.

Теплокарту просто по плотности точек сделать сейчас не могу, у меня для нее ничего нет. Ее делали уже миллион раз. Она скрадывает суть проблемы: крайнюю пространственную неоднородность данных OSM.

В одном месте густо, в другом пусто. Типичная картина елозанья по одним и тем же местам такая. Нарисован полигон landuse=residental. Казалось бы уже неплохо, мы знаем что это место преимущественно жилой застройки. Дальше начинается бесконечное улучшение его же: рисуются дворовые проезды, дома, клумбы, парковки, детские площадки, точки пои, и наконец билдинг-парты (building parts, трехмерные здания). Плотность точек, в том числе и средняя по гексу, увеличивается, но совсем рядом не нарисовано ничего.

И еще по площади полигонов, для того что бы понять где натуральные объекты отрисованы слишком грубо.

А такая есть. Вуаля:

Мир: Качество, мир

Европа Качество, мир

Показывается доля площади гексов 0..1, покрытая чем-то . Не сказать, что сильно отличается от того что мы видели выше. Это то что ты просил? :)

Comment from solenoid jam on 24 December 2023 at 10:07

Круто, спасибо за такой ответ)

Comment from Zkir on 24 December 2023 at 13:03

@SK53,

first go, more after Christmas

it looks avesome, I am looking forward the next version. In the meantime I will cleanup some strange tags, that are not really landcovers, like natural=valley, natural=reef I will exclude as well :)

Merry Christmas and the happy new year :)

Comment from Zkir on 24 December 2023 at 15:35

@solenoid jam, да без проблем. :)

Что еще могу добавить к сказанному. Теплокарта просто по плотности точек, она же плотность данных OSM сама по себе ни о чем не говорит, потому что сколько в каком-то месте должно быть нарисовано домов и магазинов никто не знает (И понятно почему, если бы кто-то знал, OSM был бы не нужен.)

Чтобы судить о качестве и полноте osm-данных , плотность данных пытаются сравнивать с плотностью населения, типа чем больше где-то живет людей, тем больше должно быть там объектов. С одной стороны вроде правильно, в мегаполисах типа Москвы объектов много, а в Сахаре или Гренландии ничего нет и не надо (*). С другой стороны зависимость там к сожалению нелинейная, и даже не всегда прямая, потому что в одном бетонном человейнике может жить больше чем в тысяче двухэтажных домов в частном секторе. Магазины тоже имеют свойство укрупняться.

Посмотреть как это выглядит, можно например тут: Сравнение плотности данных осм и плотности населения на Disaster Ninja

Не сказать к сожалению что это очень наглядно. Ну, что есть.

(*) Если мы хотим построить карту “землепокрытий”, или типов ландшафтов, выясняется что надо. Тут нужна другая метрика, см. выше :)

Comment from Zkir on 27 December 2023 at 11:14

@solenoid jam

До меня на десятый день дошел смысл вопроса :)

Было бы интересно увидеть теплокарту … по площади полигонов, для того что бы понять где натуральные объекты отрисованы слишком грубо.

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

Теперь смотрим на карту. Отображается максимальный размер полигонов [landuse+natural], покрывающих данный гекс. Синие – мелкие полигоны, желто-зеленые – средние, красные большие.

тепловая карта максимального размера полигонов

Вывод как обычно, удивительный. Преобладание мелких полигонов говорит не о том, что карта прорисована подробно, а о том, что объекты среднего размера, такие как собственно леса и поля, не прорисованы никак. Пример тому синеющий юг Испании, а из карт выше мы знаем, что отрисован он неважно. Ну и другие континеты, кроме Европы.

Каких-то гигантских полигонов не так много, мы их знаем, это пустыни и ледники. С гренландским ледником вряд ли можно что-то сделать. Про австралийскую пустыню пусть антиподы думают.

Из того, что было бы интересно нам: кажется, грубовато отрисован Приморский край, леса на наших Северах, в тех местах где они нанесены на карту.

Надо ли что то с этим делать, не очень понятно. Сахалин зелененький, потому что он (ха-ха-ха!!) нарисован квадратно-гнездовым методом, по сетке.

Если интересно, я выложу geojson с этой статистикой.

Log in to leave a comment