OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

#26 2011-03-04 13:56:39

Oksion
Member
From: Tyumen
Registered: 2010-04-13
Posts: 174

Re: Нормализация данных (пилотный проект — Спб и ЛО)

ИМХО, рисуют landuse=fores бездумно обводя именно лес, исключительно по причине кривого рендеринга таких территорий мапником. По идее-бы рендер landuse=forest и natural=wood поменять местами, или даже землепользование сделать ещё более тусклым, как всё остальное землепользование. Сейчас-же landuse=forest отрисовывается пышным зелёным лесом с ёлочками иль сосенками.

Offline

#27 2011-03-04 14:12:07

metadenisik
Member
From: Stroitel, Izhevsk, Udmurtia
Registered: 2010-08-16
Posts: 345

Re: Нормализация данных (пилотный проект — Спб и ЛО)

А по-моему, корень путаницы состоит в том, что в джосм лэндюз=форест переведён на русский язык как лесопосадки.


На высоте 5000 метров

Offline

#28 2011-03-04 14:21:04

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,600

Re: Нормализация данных (пилотный проект — Спб и ЛО)

metadenisik wrote:

А по-моему, корень путаницы состоит в том, что в джосм лэндюз=форест переведён на русский язык как лесопосадки.

Раньше там вообще было landuse=forest - "Лес", natural=wood - "Лесистая местность". Потом я предложил поменять на текущий вариант. Если у вас есть лучшие предложения - welcome в тему о русификации JOSM.

Offline

#29 2011-03-04 18:22:43

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

metadenisik wrote:

А по-моему, корень путаницы состоит в том, что в джосм лэндюз=форест переведён на русский язык как лесопосадки.

Надо сказать, это далеко не самый худший вариант.
natural=wood - лес,
landuse=forest - искусственные лесопосадки.
Что здесь нелогичного?
И какая предлагается альтернатива?

Offline

#30 2011-03-04 19:44:14

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Обнаружил в Питере у многих building=yes наличие addr:street без addr:housenumber. Думаю, такую комбинацию тоже следует считать ошибкой.

Offline

#31 2011-03-04 19:49:14

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Нормализация данных (пилотный проект — Спб и ЛО)

andriano, такое реально бывает: дом приписан улице, но без номера (б/н)

Offline

#32 2011-03-04 19:52:00

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,600

Re: Нормализация данных (пилотный проект — Спб и ЛО)

andriano wrote:

И какая предлагается альтернатива?

http://forum.openstreetmap.org/viewtopi … 40#p146740

andriano wrote:

Обнаружил в Питере у многих building=yes наличие addr:street без addr:housenumber. Думаю, такую комбинацию тоже следует считать ошибкой.

Можно пример?

Offline

#33 2011-03-04 20:07:44

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

liosha wrote:

andriano, такое реально бывает: дом приписан улице, но без номера (б/н)

Можно пример из КЛАДРа?

Offline

#34 2011-03-04 20:17:08

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Нормализация данных (пилотный проект — Спб и ЛО)

а откуда в кладре номера домов???

Offline

#35 2011-03-04 21:14:58

dkiselev
Member
Registered: 2010-02-09
Posts: 3,364

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Там есть диапазоны номеров, но их актуальность и аккуратность их заполнения -- неизвестны.


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#36 2011-03-04 21:22:42

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,821

Re: Нормализация данных (пилотный проект — Спб и ЛО)

По Питеру есть уже адресный валидатор от liosh-а smile http://gis-lab.info/data/mp/addr/?base=rgis
Так что это проблема под контролем smile


Бывший редактор ОСМ

Offline

#37 2011-03-04 21:24:26

Zverik
Moderator
From: Москва
Registered: 2010-10-14
Posts: 5,641
Website

Re: Нормализация данных (пилотный проект — Спб и ЛО)

я ставлю addr:street без housenumber, когда знаю, что дом прописан по улице, но в номере не уверен. Это не ошибка. Так же, как building:levels без building=* — не ошибка.


ШТОСМ | josm.ru | обо мне | где господствует любовь, там отсутствует воля к власти

Offline

#38 2011-03-04 21:46:53

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

liosha wrote:

а откуда в кладре номера домов???

С шестого уровня:

Пятый уровень классификации включает улицы городов, поселков городского типа и сельских населенных пунктов.
            Шестой уровень классификации включает:
- дома, расположенные в городах и поселках городского типа, являющихся объектами третьего уровня (т.е. регионального или районного подчинения), в т.ч. дома, непосредственно привязанные к городам и поселкам городского типа (в случаях, когда в адресе отсутствует наименование улицы).
            Седьмой уровень классификации включает квартиры (офисы) домов.

Offline

#39 2011-03-05 05:42:24

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Нормализация данных (пилотный проект — Спб и ЛО)

andriano, ты сам кладр посмотри, а не его описание  smile

Offline

#40 2011-03-08 12:43:26

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,821

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Первые две итерации завершены. По нескольким регионам (Ленинградская, Московская, Новосибирская, Владимирская области, Краснодарский край) был составлен словарь тегов. 236 ключей и 927 значений довольно неплохо описывают реальность. Непонятными оказываются порядка 0.5% данных что для начала неплохо.

Хотел проверить - а как мой словарь работает на "буржуйских" данных. Но оказалось что их файлы .osm гораздо больше наших (даже файл Финляндии в 2 раза больше Москвы и Московской области) и вычислительные ресурсы оказались узким горлышком. Поэтому пришлось полностью переделать базу данных с точки зрения оптимизации. База данных из красивой и понятной превратилась в оптимизированную, в которой не особо то и разберёшься. Но в результате она стала меньше где-то на 30% да и скорость обработки выросла пропорционально. Для обработки стран средней величины уже должно хватить. Впрочем, для обработки крупных стран придётся делать ещё одну оптимизацию. Но там уже будет статистическая оптимизация, с преобразованием данных (идеология в духе алгоритма Хаффмана) и это уже будет перед промэксплуатацией, т.к. база будет что чёрт ногу сломит.

А сейчас работаю над сочетанием тегов. Задача полностью не разрешима в рамках идеологии OSM, но до некоторого практического уровня валидатор довести можно. Например, регулярно в данных находятся сочетания типа highway=* и building=yes и т.п.


Бывший редактор ОСМ

Offline

#41 2011-03-08 12:56:34

Faier
Member
From: Ryazan
Registered: 2011-01-12
Posts: 68

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Zverik wrote:

я ставлю addr:street без housenumber, когда знаю, что дом прописан по улице, но в номере не уверен. Это не ошибка

Я в таких случаях ставлю "addr:housenumber=00" , очень удобно.
а) теги собраны правильно
б) наглядно на карте сразу видно что номер дома неизвестен (неточен) и проезжая мимо можно глянуть
в) опять же на карте видно, что это именно дом, а не скажем служебное здание или еще что-либо

Last edited by Faier (2011-03-08 12:57:15)

Offline

#42 2011-03-08 17:46:41

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Faier wrote:
Zverik wrote:

я ставлю addr:street без housenumber, когда знаю, что дом прописан по улице, но в номере не уверен. Это не ошибка

Я в таких случаях ставлю "addr:housenumber=00" , очень удобно.
а) теги собраны правильно
б) наглядно на карте сразу видно что номер дома неизвестен (неточен) и проезжая мимо можно глянуть
в) опять же на карте видно, что это именно дом, а не скажем служебное здание или еще что-либо

Спасибо.
Вот здесь http://forum.openstreetmap.org/viewtopic.php?id=11467 я как раз столкнулся с тем, что существование записей такого вида входит в конфликт с концепцией, принятой для упаковки данных.
И придерживаюсь мнения, что в данном случаен имеет место умышленное искажение информации. Хотя для кого-то, это, возможно, и удобно.
На мой взгляд, отсутствие информации значительно лучше, чем искаженная информация. Из каких благих целей бы эта информация не искажалась.

Offline

#43 2011-03-08 17:50:39

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

fserges wrote:

... был составлен словарь тегов. 236 ключей и 927 значений довольно неплохо описывают реальность. Непонятными оказываются порядка 0.5% данных что для начала неплохо.

А можно ознакомиться с этим списком?
И еще, из 236 ключей и 927 значений можно составить 218772 комбинаций. Каким образом определяется, какие из этих комбинаций допустимы, а какие - нет?
И каким образом обрабатывается ситуация, когда для определенного ключа допустимы произвольные значения?

Offline

#44 2011-03-08 18:21:44

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,821

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Когда работа будет завершена то я размещу подробный отчёт, думаю что на вики. Пока всё сыровато чтобы выкладывать, так как все будут видеть кучу мелких погрешностей и делать неверный вывод - "сколько там косяков, наверное вся работа кривая". А вот этого бы не хотелось.

По поводу комбинаций тегов. Полное решение задачи может и возможно теоретически, но по-крайней мере крайне сложно практически. Даже если предположить, что удастся всё подробно расписать относительно одного объекта, то придётся разбираться с комбинацией объектов. Взять тот же building=yes. Ничто не мешает навесить на контур здания shop=* или amenity=*. И каждый дополнительный тег может привнести свои собственные комбинации. В реальных данных на контур building=yes, например, ещё накладываются man_made, landuse, highway. Где проходит грань между допустимыми и недопустимыми комбинациями тегов, особенно если учесть что "any tag you like"? В файле Владимирской области, например, 17 зданий, они же landuse, 4 здания highway, 5 населённых пунктов помечены тегом layer, 105 веев имеют только тег addr:housenumber и ничего более (нет addr:street) и т.п. Вообще комбинации порой весьма причудливы smile

Я придерживаюсь единственного рационального (с моей точки зрения) подхода - строю частотные таблицы и далее, сопоставляю сочетания с документацией. Если потенциально сочетание возможно (с моей точки зрения), то сочетание пропускается, если нет - то отбраковывается. Валидатор получается довольно грубым, но во многом это в силу свободности семантики языка OSM и трактовки правил. Нужно не забывать что и русском языке складывая валидные слова языка можно получить бессмыслицу, "мама ныла раму". Но с другой стороны парадоксальные сочетания слов иногда имеют смысл, скажем, "папа глушил водку" smile

Last edited by fserges (2011-03-08 18:42:57)


Бывший редактор ОСМ

Offline

#45 2011-03-12 20:16:41

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,821

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Работа потихоньку идёт. Каждая следующая итерация это всё больший уровень абстракции и резко возрастающий объём исключений и нелогичностей. Но лёгкой прогулки и не ожидалось.

Хотя валидатор будет запускаться только по СПб и ЛО, он обкатывается и на других странах. Недавно прогонял Бельгию. Хотя в планах нет глобальной экспансии, но разрабатывая сложную вещь нужно в архитектуру решения закладывать масштабируемость. Вдруг окажется полезным?

Но к сожалению, есть одно но. Я уезжаю в командировку и отпуск и где-то на 1.5 месяца выпадаю из нормального ритма жизни. В частности, доступ к ОСМ да и компьютеру вообще будет ограничен. Так что в ближайшее время новостей не будет. Когда все поездки закончатся, надеюсь опубликовать результаты исследования.


Бывший редактор ОСМ

Offline

#46 2011-03-12 20:59:23

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,821

Re: Нормализация данных (пилотный проект — Спб и ЛО)

На затравку несколько ошибок из пробного прогона валидатора:

xybot прибил "amenity=" http://www.openstreetmap.org/browse/nod … 18/history http://www.openstreetmap.org/browse/nod … 53/history и получилась точка с name и без каких-либо ещё тегов.
Зданий Пулковской обсерватории, покрытое кустарником - http://www.openstreetmap.org/browse/way/27379602
Кинотеатр, он же - заброшенная деревня - http://www.openstreetmap.org/browse/way/62365485
Детский сад, он же шоссе - http://www.openstreetmap.org/browse/way/40433125
Здание = дорога - http://www.openstreetmap.org/browse/way/86601892
Дорога=озеро - http://www.openstreetmap.org/browse/way/60503929
Линия электропередач, она же дорога - http://www.openstreetmap.org/browse/way/80765386
Промзона, имеющая адрес, она же лес - http://www.openstreetmap.org/browse/way/54117446
motorcar=Северная ТЭЦ - http://www.openstreetmap.org/browse/way/33227541
Остров, висящий над землёй - http://www.openstreetmap.org/browse/way/30430221
Забор (не дорога) с ограничение скорости - http://www.openstreetmap.org/browse/node/1192706200
Всё в одном - лес, парк, лесопосадки - http://www.openstreetmap.org/browse/way/45419917

И т.п.
Возможно - не всё ошибки, но сочетания непривычные smile


Бывший редактор ОСМ

Offline

#47 2011-03-12 21:37:48

Surly
Member
From: Екатеринбург
Registered: 2009-09-17
Posts: 819

Re: Нормализация данных (пилотный проект — Спб и ЛО)

fserges wrote:

Забор (не дорога) с ограничение скорости - http://www.openstreetmap.org/browse/node/1192706200

Может быть, здесь ошибки нет. Это ворота, а не забор; и если на воротах стоит знак ограничения скорости, то тэг maxspeed поставлен правильно. Его надо бы ставить на дорогу, но здесь дорогу пока не нарисовали.

Offline

#48 2011-03-12 22:23:11

Danidin9
Member
From: Санкт-Петербург
Registered: 2011-01-31
Posts: 589

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Да, там именно так, как сказал Surly.
Кстати, за этими воротами находится навес для транспорта - крыша на бетонных столбах. Может кто-нибудь посоветует, как отмечать такие сооружения поизящнее? Пока обозначил просто как covered=yes.

Offline

#49 2011-03-13 08:21:31

andriano
Member
Registered: 2009-06-15
Posts: 1,667

Re: Нормализация данных (пилотный проект — Спб и ЛО)

fserges wrote:

На затравку несколько ошибок из пробного прогона валидатора:

xybot прибил "amenity=" http://www.openstreetmap.org/browse/nod … 18/history http://www.openstreetmap.org/browse/nod … 53/history и получилась точка с name и без каких-либо ещё тегов.

И чем то, что стало после бота, хуже чем то, что было до него?
На карте мааса объектов, не имеющих никаких тегов кроме name. Это, конечно, ошибка, но не бота.

Кинотеатр, он же - заброшенная деревня - http://www.openstreetmap.org/browse/way/62365485

locality - это ни разу не заброшенная деревня, это - ненаселенная местность, имеющая собственное название. Например, урочище.

Здание либо озеро может быть окружено дорогой. Хотя в случае с озером это, конечно, маловероятно.

Линия электропередач, она же дорога - http://www.openstreetmap.org/browse/way/80765386

А вот линия электропередачи, идущая вдоль дороги - обычное дело.

Промзона, имеющая адрес, она же лес - http://www.openstreetmap.org/browse/way/54117446

Вообще-то здесь весьма своеобразная промзона - радиопередающий цех. Зачастую это территория, на которой стоят антенны, а сама территория обычно от леса не очищается.

motorcar=Северная ТЭЦ - http://www.openstreetmap.org/browse/way/33227541

А это, вероятно, результат "подсказок" при наборе + опечатка - пользователь нажал "m" вместо "n".

PS. Но, вообще-то проблема неоднозначной интерпретации данных существует. Особенно при конвертации - когда требуется отнести объект к одному из заранее предопределенных типов. Я лично эту задачу решаю так:
1. Просматриваются все теги объекта и отчаются распознанные key.
2. Отмеченные значения key рассматриваются в порядке приоритета. Приоритет задается заранее волевым решением.
3. Если для данного key удается однозначно идентифицировать value, эта комбинация и считается типом объекта, на чем анализ заканчивается.
4. Если объект содержит несколько распознанных key, притом для очередного не удалось распознать value, рассматривается следующий по приоритету key.
5. Если объект так и не удалось отнести ни к одному предопределенному типу, он попадает в список ошибок.

Не уверен, что я делаю правильно. Может, будут какие предложения по обработке данного рода конфликтных ситуаций?

Last edited by andriano (2011-03-13 09:00:31)

Offline

#50 2011-03-13 10:15:36

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,821

Re: Нормализация данных (пилотный проект — Спб и ЛО)

Я не ставил целю провести подробный анализ странных данных. Поэтому придраться к моим словам при желании легко. Именно поэтому я вообще не собираюсь выкладывать сколько-нибудь сырые данные для всеобщего обозрения, ибо объём критики скорее всего вообще лишит интереса к OSM.

andriano wrote:

И чем то, что стало после бота, хуже чем то, что было до него?
На карте мааса объектов, не имеющих никаких тегов кроме name. Это, конечно, ошибка, но не бота.

Грубо говоря это не ошибка бота. Он просто порождает из ошибочных данных пустые именованные объекты.

Кинотеатр, он же - заброшенная деревня - http://www.openstreetmap.org/browse/way/62365485
locality - это ни разу не заброшенная деревня, это - ненаселенная местность, имеющая собственное название. Например, урочище.

Хорошо, кинотеатр, он же - урочище smile

Здание либо озеро может быть окружено дорогой. Хотя в случае с озером это, конечно, маловероятно.

Оба варианта возможны теоретически, но практически так никто рисовать бы не стал или такая практика была бы очень странной. Дорога проходящая по стене здания возможна, но тогда должен быть level=1 или level=-1. Скорее всего дорога рядом.

А вот линия электропередачи, идущая вдоль дороги - обычное дело.

Вдоль дороги - да. Но зачем накладывать друг на друга два разных объекта. Как навигатор или рендер должны это отображать? Как электифицированная дорога или провода по которым можно ходить? smile

Вообще-то здесь весьма своеобразная промзона - радиопередающий цех. Зачастую это территория, на которой стоят антенны, а сама территория обычно от леса не очищается.

Меня тоже этот объект заинтересовал. Его нет на подробных картах!! Там просто лес. Military? Но вот с описанием landuse=industrial всё же не бьётся - "Используйте тег landuse=industrial чтобы обозначить область, использующуюся в промышленных целях, например заводы, фабрики или склады".

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

PS. Но, вообще-то проблема неоднозначной интерпретации данных существует. Особенно при конвертации - когда требуется отнести объект к одному из заранее предопределенных типов. Я лично эту задачу решаю так:
1. Просматриваются все теги объекта и отчаются распознанные key.
2. Отмеченные значения key рассматриваются в порядке приоритета. Приоритет задается заранее волевым решением.
3. Если для данного key удается однозначно идентифицировать value, эта комбинация и считается типом объекта, на чем анализ заканчивается.
4. Если объект содержит несколько распознанных key, притом для очередного не удалось распознать value, рассматривается следующий по приоритету key.
5. Если объект так и не удалось отнести ни к одному предопределенному типу, он попадает в список ошибок.

Не уверен, что я делаю правильно. Может, будут какие предложения по обработке данного рода конфликтных ситуаций?

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


Бывший редактор ОСМ

Offline

Board footer

Powered by FluxBB