Эстония

Zverik, я не понимаю, чем технически отличается ваше предложние:

от предложения wowik

Ибо wowik писал:

Вот и спрашиваю, какого же это оличие? Как в варианте, предложенном wowik, осущесвлена подгрузка данных, чем она оличается от ручного скачивания OSM XML и загрузки в JOSM?

Там и там простое скачивание данных в OSM XML. Разница в отслеживании уже нарисованного. В валидаторе это делается автоматически: в скачиваемый XML не добавляются обозначенные на карте населённые пункты. В самарском проекте добавления домов предварительно подготовленные данные кропотливо сливаются с данными OSM. Автоматизировать такую работу почти невозможно, иначе появятся дубликаты и чёрт знает что ещё. Подход в каждом случае придумывается свой, в зависимости от поставленной задачи.

Для базы адресов приходит в голову две идеи по реализации. Первое — банальные точки с addr:* в OSM XML по регионам. При редактировании они открываются вторым слоем, и нужные данные копируются вручную. Минусы — можно случайно залить не тот слой в OSM, копировать неудобно.

Второе — WMS-слой со впечатанными адресами. Можно его подложить в редактор и переписывать адреса на здания. Минусы — нужно вводить вручную.

Можно ещё что-нибудь придумать. Например, упомянутый сервис: выделяешь объекты, жмёшь кнопку, сервис лезет на сервер, скачивает ближайшие к выделенному адресные точки и пробует расставить. Минусы — нужно писать хитрый плагин и сервер (заточка под один редактор), проверять результаты на корректность никто не будет — адреса могут пропасть, могут попасть не туда.

Если разговор про импорт из Х-GIS Maa-amet, то перед заливкой всё-же рекомендовал бы на местности смотреть что к чему. Данных там очень много, и часть типа лесов - полей уже массовым импортом в ОСМ залита, но на сегодняшний момент данные староваты. Косяков тоже хватает. Например, территория свалки по конфигурации не совпадает с реальной конфигурацией мусорного кургана, снесённые и брошенные дома и гаражи, ангары в базе - те же полигоны что и жилые дома. Да и перестроенные дома местами обозначены старыми не совпадающими по форме полигонами.

pashgan, да, они самые, уже решил, что импорт все же производится не будет. Конвертну данные в OSM XLS и выложу их на всеобщее обозрение. Данные хочу разбить на небольшие регионы, дабы не качать лишнего. Хотелось бы конечно и инструмент, отслеживающий, что внесено, из предоставленных файлов, а что нет, но пока даже голову этим забивать не стоит.
С кривыми импортами с X-GIS уже не однократно сам встречался.

Откликнулся еще один местный ОСМовец, который пару лет назад задавался той же целью, у него уже есть некоторые наработки. ОСМ файлы имеют довольно много ифнормации, но старые и большими кусками, что очень не удобно. Далеко не каждый захочет загружать адресные точки в 42Mb XML.

Вообщем, на данный момент получилось приблизительно так (скрин малой части таблицы):
http://pix.am/HIIO.png

Еще не хватает почтовых индексов, их я попробую раздобыть у местного комьюнити.
Адреса пока использовались только “валидные”, всякие хутора, не имеющие в официальном адресе названий улиц и номеров домов, пока скипнул.

Пока это все готовится в полуручном режиме, безумно много процессорного времени занимает подготовка статистики, над этим буду еще работать, есть идеи как ускорить сей процесс. Ну и кончено, все будет по возмоности автоматизироваться.

В дальнейшем, также, намерен прикрутить дифф файлы, содержащие только точки, отсутствующие в ОСМ. Также, этот огромный html (941 строка) будет переделан на пачку мелких с более удобной навигацией.
Ну и подготовить туже кухню для “невалидный” адресов (читай выше), а также, хейвеев, ну и всего остального, если еще что найду интересного.

Теперь же встает вопрос о предоставлении, хотя бы таких данных, общественности. Своего хостинга не имею, есть кто желающий помочь в этом вопросе?

http://forum.openstreetmap.org/viewtopic.php?id=10909

Пока выложил на бесплатный хостинг
Глянуть можно здесь:
http://web.zone.ee/vgb/ru/
Версия одним файлом
http://web.zone.ee/vgb/ru/va.html

Не думал я, что с адресами настолько туго, даже столица не блещет, хотя, по большей части, это из-за несовпадения спелинга.
ЗЫ: Данные все еще без почтовых инексов

Проанализировал текущее положение дел в Эстонии, и оказалось, что у 80% зданий не прописан даже номер.

  1. Я так понимаю, что тема заглохла, что-то не получилось?
  2. Я правильно понял, что Maa-amet дал полное разрешение на использование своих данных, и даже доступ к каким-то исходникам на фтп?

Недавно я занялся нумерацией зданий. Взял Merkaartor, поставил WMS Маамета фоном, попробовал…
Поняв, что обкликать такой объём в обычных редакторах не удастся, написал собственный скрипт, упрощающий до “набрал номер - нажал enter”.
В данный момент пронумеровал 5500 зданий через него, это около 5%. Один наверное не справлюсь.

Как сообщество относится к такой идее? Есть желающие помочь? Язык не поворачивается сказать “обкликать”, т.к. мышь здесь не потребуется :slight_smile:

Работает это так:
Скрипт выбирает рандомное здание (чтобы было честно, и всем городам досталось) у которого нет тега addr:housenumber, и показывает два слоя: на нижнем карту Maa-amet, на верхнем синим цветом - контур здания по версии OSM. Остаётся набрать номер, жать Enter, и показывается следующее.
Выглядит так:

Всё обкликанное сохраняется на мой сервер, потом по желанию - ещё раз проверяется, и запускается экспорт накликанного прямо в API.

Адрес: http://svimik.com/osm/xgis2osm.php

Очень круто! Пощелкал пару десятков домиков… А для Финляндии такое реально замутить?

SviMik
Три взаимосвязанных вопроса:

  1. Окошко в левом нижнем углу, с ответами сервера, используется также для обратной связи? Оно какое-то очень интерактивное.
  2. Восклицательный знак нужно ставить в окно для номера дома, так? Это не очевидно из описания.
  3. Если синий контур явно не совпадает с полигоном здания по форме, однако, представляет всё же одно и то же здание, об этому можно/нужно как-то сообщить?
    Пример к случаю №3:

Немного “поиграл” в “скрипт” - очень интересно, всем советую.

Позволю себе несколько советов автору скрипта:

  1. По Help, размещенном на странице.

Help не раскрывает ситуацию, что делать в случаях, когда контур дома в OSM очень сильно не совпадает с контуром в растре Maa-amet, но при этом, контур является одним домом (Help говорит только о “склеенных” домах).
Контур же может быть сильно неверной формы, или быть сильно смещенным в пространстве.
Возникает сомнение - помечать контур как “!”, или же просто проставить ему номер и согласиться с тем, что с контуром все OK.
Я считаю, что эта ситуация должна быть описана явно, чтобы не гадать.

Есть, минимум, три возможных исхода, но какой бы не выбрал автор, его нужно описать явным образом:
a. контур одного дома OSM, не совпадающий с контуром одного дома на растре, считать валидным, поскольку эта ситуация не входит в scope данного скрипта. Смещенному контуру нужно проставить номер, как обычно.
b. не совпадающий с растром контур нужно пометить “!”, как нуждающийся в правке, номер проставлять не нужно.
c. (смесь вариантов a. и b. - считаю его наилучшим) Такому дому нужно проставить номер, но пометить его, как нуждающимся в правке контура через “!”. Например: 6!, !6, “6 !” и т.д.

  1. Еще про Help
    На картинках Help жирные черные цифры можно понимать двояко: как то, что написано на растре (укрупненно), и как то, что нужно ввести в поле. Было бы логично считать, что это подсказка, что вводить в поле, однако первая картинка с точкой явно противоречит (ведь точку-то вводить не нужно - так?). Здесь нужно более точное визуальное разделение - что именно символизируют цифры на картинках. Возможно, достаточно в тексте, описывающим картинку, явно написать, что нужно вводить, как это сделано для “!” (тогда цифры на картинках будем понимать, как укрупненное изображение с растра). Собственно, проблема только с картинкой где цифра с точкой.

  2. Снова про Help
    Нужно уточнить, что цифры с угловых зданий нужно читать и вносить в поле в том порядке, как они написаны, даже если читать приходится вверх ногами - т.е. “2 6” и “6 2” - это не одно и то же.

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

  4. Еще по интерфейсу:
    Контур дома в OSM [в моем браузере - Opera] появляется весьма не надолго, а когда потухнет - его цвет практически не выделяется на цветовой гамме растра. Было бы удобнее, чтобы он тух немного подольше, а потухнув, был более контрастный - лучше красный. Иллюстрация:

  5. И самое главное.
    Если хочется привлечь больше участников, нужно внести элемент соревновательности. Не буду приводить примеры - их тысячи - но в мире OSM в любой коллективной работе с достижимым результатом всегда есть статистика, Top-100 или что-то подобное. Если участник сможет увидеть, что его вклад - 17% и он на 2-м месте - это даст ему, и всем остальным, стимул сделать еще больше. Конечно, можно просто дать поле для ввода своего произвольного имени (как делает OSMBugs в комментариях к багу), но для ведения статистики это плохо подходит - 5% участников назовутся именем Alex. Наиболее разумно было бы сделать авторизацию через базу OSM. Исключительно по желанию, конечно - с целью сохранения результатов. Саму статистику (только первые 10 мест, плюс отдельно - мой вклад) нужно показывать на этой же странице (на ней полно свободного места), плюс возможность перейти на страницу с более подробной статистикой.

Реально. Если задача та же, и тоже имеется карта, с которой можно позаимствовать.

Окошко исключительно для отладки. Позволяет убедиться, что изменение записано, и записано правильно. Обратной связи нет (извиняюсь, если ввёл в заблуждение).

Да. Позже я придумаю, что с ними делать. Либо сяду редактировать сам, либо экспортирую в openstreetbugs. Либо проставлю какой-нидь тег FIXME (Обсуждаемо).

Нет, если здание однозначно идентифицировано (“представляет всё же одно и то же здание”), то его следует нормально пронумеровать :slight_smile:
Восклицательный знак я ставлю, когда контур плох настолько, что есть сомнения, то ли это здание (либо контур охватил 2 и более здания), и уже не понятно, какой номер проставлять.

Ответил выше

Я подразумевал так.

Предложение принято! Можно писать “6!”, если здание однозначно идентифицировано, но контур всё же сильно кривой (главное не злоупотреблять, а то там половина зданий либо немного мимо, либо немного криво, кто ж это потом разгребать будет :smiley: )

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

А как считать порядок? С левого\правого\верхнего\нижнего? По часовой, или против?
Предлагаю такой вариант:
Первым идёт номер той улицы, к которой здание ближе.
Обоснование:
Запись “2 6” на самом деле будет преобразована в
addr:housenumber=2
addr:2:housenumber=6
Пока мы ещё не проставили тег addr:street, поиск по адресам поздразумевает номер именно addr:housenumber, а в качестве addr:street - ближайшую к зданию улицу.

Тогда, я бы мог основную карту сделать побольше :slight_smile: На первое место ставилось быстродействие, чтобы всё подгружалось очень шустро.
Но если надо, сделаю опционально включаемой.
По разрешению - один знакомый выставляет себе масштаб браузером, чтобы глаза не напрягать.
А у меня ноутбук небольшой, 13.3", это да. Не проверял на больших мониторах.

Контур тухнет для того, чтобы не закрывал собой номер (иногда он так делает). А быстро - были жалобы, что долго ждать приходится, если номер не видно :expressionless:

Подумаю, что можно сделать :slight_smile: Сейчас у меня пишется только IP автора правки, этого будет достаточно? “авторизацию через базу OSM” - немного круто для этого :roll_eyes:

В качестве общего вступления скажу, что ЛИЧНО МНЕ по Help все понятно, мои комментарии были не к тому, чтобы получить по ним разъяснение на форуме, а для того, чтобы улучшить Help для остальных участников, в том числе и не читавших эту ветку форума.

По ответам:

Уточняю - мое предложение предполагало, что большая карта для ДАННОГО дома открывается по линку на этой же странице - но только для ДАННОГО дома. После нажатия Enter в поле и перехода к новому дому, большая карта автоматически не подгружается (прячется до следующего клика по линку). Я понимаю, что тут есть нюансы - возможно, удобно сделать и не получится.
Уточню - быстродействие, действительно, на первом месте. Была идея увеличить удобство не снижая быстродействия.

Эта … Нужно просто посмотреть на цвет рамки и цвет ID в правом нижнем углу растра на представленном мною выше скриншоте, и будет понятно, что проблема с распознаванием контура [в моем браузере] очень даже присутствует.

Ну, может, для жителей Эстонии и достаточно, если там IP выдают пожизненно.
Лично у меня, при подключении через ADSL, IP каждый раз разный.

Спасибо за ответы.

Намёк понял. Про кривой контур пример добавил.
Решил держать Help коротким, чтобы не заставлять пользователей долго читать. Поэтому буду писать только самое важное там :slight_smile:

Вообще да, пожизненно (если не предпринимать особых действий вроде смены мак адреса, или выключения роутера на весь день :slight_smile:

Добавил в учёт 3 первых числа из 4, на случай, если меняется только последняя часть.
Также добавил карту Эстонии с нанесением точками распознанных зданий :slight_smile:

По-распознавал еще немного домиков - есть еще пара предложений :slight_smile:

  1. Показывать статистику текущей сессии (это безотносительно общей статистики, и никак не связано с тем, авторизован пользователь или нет):
    Сколько я зданий “наклацал” в данную сессию - эту цифру и показывать: Обработано 28 зданий.
    Даже не нужно делить на распознанные/нераспознанные номера - просто “обработал столько-то”.
    Это позволит поставить перед собой цель - например, 50 зданий - и к ней стремиться.

  2. Не знаю, особенность ли это моего браузера, или так запрограммировано, но “лог” сессии (обработанные здания) хотелось бы всегда видеть спозиционированным на последней добавленной записи, а не на первой. Либо нужно новые записи добавлять в top лога, либо всегда переходить на последнюю строку, если добавление идет в конец, как сейчас.

  3. Если ОБЩЕЕ количество изначально не распознанных домов (на момент старта проекта) известно - то было бы круто добавить где-то цифру: Миссия выполнена на 7.5%

  4. Непонятна ситуация с домами, имеющими:

  • по 3-4 разных номера (ведь улиц-то вокруг такого дома максимум две)
  • имеющих двойные/тройные номера, содержащие двойные слеши.
    См. поясняющую картинку. (уточняю - это запрос с точки зрения разъяснения в Help).
  1. И чтобы уж 2 раза не вставать - в help не описаны действия, когда изображенные цифры на растре просто непонятны и картинку хочется просто пропустить без описывания. На мой взгляд, было бы логично помечать картинку, как “!” (т.е. требующую последующего ручного разбора - но не с точки зрения контура, а с точки зрения цифр на растре), но скорее всего, картинка окажется помечена “ничем” (номер дома отсутствует), что, очевидно, не то, что хотелось бы. Рекомендую прояснить ситуацию с обработкой “непонятных” цифр на картинке.

Сделано.

Сделано.

Дело в том, что скрипт делает нечто большее, чем просто показ картинок. Он их тоже анализирует, и отбрасывает те, где номеров явно нет (до этого таких было половина). Учёт всего этого - задача сложная (особенно если изначально учёт не вёлся). Но я подумаю :slight_smile:

Видимо, улиц всё-таки 4, просто очень далеко :slight_smile: Есть у нас такая традиция, строить дома не только вдоль улицы, но и где попало :slight_smile:
Думаю, есть смысл вводить номера только тех улиц, которые видишь.

На сколько я понимаю, запись “5//5a//5b” значит, что это 3 адреса, которые принадлежат одной улице. Что с ними делать - пока не решил. Пока можно писать как есть, с двумя слешами. Решу что делать на этапе экспорта.
(или писать только первый номер, например для “5//5a//5b” оставить “5”, ибо утомительно такое набирать, а для навигации и так сгодится)
Естественно, это изобретение авторов карт, и нигде больше я такую запись не встречал. На доме, скорее всего, 3 таблички - 5, 5a, 5b.

А если открыть большую карту - там тоже непонятны? Там шрифт крупнее.

Поклацал, понравилось. Тысячей домов меньше.

Ещё если бы была возможность пометить предыдущий результат как невалидный. Я проклацывал довольно быстро, и в одном случае вместо 15 ввёл 25, но сообразил, нажав Enter.

Либо возможно имеет смысл сделать двойную обработку, т.е. тот же домик будет показываться разным людям, с последующим сравнением результатов. В случае несовпадения – на ручную обрабоку.

Надо придумать, как это оформить. Наверное сделаю текстовое поле для удаления, куда надо будет ввести ID из лога.

Идея хорошая. Если конечно народ не против (и народа наберётся достаточно).
Пока хорошо наскрести хотя бы на один проход :slight_smile:

На приведенном мною скриншоте (это “большая” карта) - всем абсолютно понятно, что писать для каждого дома?

И приведу другой пример (не заскриншотил) - на “большой” карте не видно ни одной улицы - только несколько домов. И все дома имеют номера типа 169 (других нет).
В таких случаях точка ориентации не ставится, подразумевая, что единица покажет, где у картинки верх. Так вот, я с трудом разобрал, что это 196, а не 691.