26 заметок с тегом

валидаторы

Модератор, вот как помочь

Неделю назад вы узнали про галочку «посмотрите на мои правки» и соответствующий тег у пакета правок, review_requested=yes. Найти такие пакеты тогда было непросто, но теперь есть пара способов.

Во-первых, OSMCha научился фильтровать по этому атрибуту. В панели фильтров выберите свой район для BBox и в списке Reasons for Flagging выберите самую последнюю (на сегодня) причину: «Review requested». Жмите Apply и узрите список ченджсетов от сознательных новичков.

Паскаль Найс не остался в стороне, подсказав, как с помощью его сервиса «поиск подозрительных пакетов правок» найти ченджсеты с нужным тегом. Это несложно: оказалось, там есть поле для поиска по тегам. Этот список содержит все ченджсеты по России с просьбой проверить. Я ткнул в случайный пакет и обнаружил точку на картинке выше.

Включая галочку с просьбой, пользователи вызывают вас, опытных осмеров, на диалог. Просматривайте иногда список по своему району, или по всей России (14 ченджсетов за сутки, пока что), исправляйте ошибки новичков и обязательно отвечайте им в комментарии к пакетам правок. Начните с приветствия и благодарности за правку: они узнали об OpenStreetMap, не поленились изучить редактор и готовы к общению, это дорогого стоит. И только потом указывайте на проблемы и давайте ссылки на вики и форум. Возможно, так мы получим больше заинтересованных активных редакторов, чем игнорируя новичков или с порога отчитывая их за поломанные проспекты.

Дополнено: в следующую версию JOSM добавили аналогичную галочку с просьбой проверить правки.

2017   pascal   валидаторы

Пакет не нужен

«Нельзя ли при отправке изменений из maps.me разделять объекты по континентам?» — в очередной раз спрашивают на форуме. А то bbox (ограничительный прямоугольник) слишком большой, неудобно. OpenStreetMap был зачат тысячу лет назад программистом, и это лезет изо всех щелей: удивительно, как самые бессмысленные атрибуты становятся мерилом качества.

Прямоугольник на карте — это миф. Минимальные и максимальные широта и долгота — так просто нарисовать фигуру в проекции меркатора, но на практике этих чисел не хватит даже чтобы нормально карту распечатать. Пакет правок, который покрывает полмира, мог добавить одну дорогу на Чукотке, но магия чисел и странных проекций заставит вздохнуть: опять эти импортёры делают ченджсеты на всю планету. От пакетов правок мы храним только bbox, поэтому нажмёшь в любом месте планеты на вкладку «история» и наблюдаешь всемирную историю, а не то, что ждал.

Но даже когда найдёшь нужный пакет правок, останется только бессильно смотреть на его bbox. И на стастраничный список точек, линий и отношений, каждая строчка которого по-своему бесполезна. Ченджсеты — это псевдоупорядочивание. Кажется, что они полезны присвоением метаданных группе объектов, своего рода над-отношения, но на самом деле — метки времени произвольны, их порядок не зависит от номера пакета, комментарии никто не пишет, источник часто врёт, географически, как видим, тоже никто не группирует. Остаётся один полезный атрибут: created_by. Всему остальному верить нельзя.

То есть, единственная польза от пакета правок — это посмотреть, каким редактором сделаны правки. Все остальные атрибуты: даты, bbox, список объектов — только отвлекают, создавая ложное впечатление группировки и упорядоченности. Которых нет, потому что техническое воплощение API не обещает порядка и не подразумевает удобства. Так, для правок maps.me я игнорирую пакеты и рассматриваю каждую правку отдельно. Правки на mmwatch — это поток объектов, у которых номер ченджсета лишь бесполезный атрибут. Увы, для сложных правок со взаимосвязанными изменениями (таких как сдвиг линии) такой подход не сработает.

Примерно об этом я говорил на схемотехнике год назад. О bbox нужно просто забыть: область применения этих прямоугольников ограничена и точно не касается ваших задач. А проблему пакетирования нужно как-то решать. Развязать топологические структуры, группировать по времени и географии, не давать пользователям и приложениям свободы в объединении правок. Это настоящая тема для какого-нибудь будущего API 0.8. А пока приходится работать с тем, что есть.

Следить за изменениями в регионе можно (нужно!) через WhoDidIt, искать их — в его более быстром форке. Пакет правок из интерфейса этого сайта можно открыть в Achavi, но иногда может не повезти. Если bbox окажется слишком велик, загрузки правок вы можете не дождаться. Потому что даже лучшие инструменты полагаются на bbox, который, повторюсь, плох примерно для всего.

Загружать геометрию ченджсетов часто приходится команде по работе с данными в Mapbox. Для этого они сделали и постоянно улучшают сайт OSM Changeset Analyzer, где есть фильтры по любому атрибуту, вплоть до причины для подозрений. Но самые подозрительные пакеты накрывают весь мир, Achavi тут бессилен. Поэтому в этом месяце они сделали то, что давно было пора: кэширование ченджсетов.

Каждую минуту скрипт скачивает свежие дополненные диффы и складывает их в хранилище Amazon S3. Затем он раздербанивает эти диффы на пакеты правок и результат тоже загружает туда же. И теперь сервис визуализации Changeset Map, встроенный в OSMCHA, загружает пакеты мгновенно. Обновите ваши букмарклеты: Changeset (перетащите в закладки).

Проблемы, конечно, есть, но с ними борются. Например, дополненные диффы не окончательны из-за чехарды с транзакциями в базе данных OSM. Их приходится обновлять и обновлять. То же касается и пакетов правок, которые возможно держать открытыми целые сутки, понемногу доливая в них новые объекты. Наконец, история там только новейшая: пакеты старее марта этого года можно не найти. Их загружают, но медленно. Проблему поиска по региону архив тоже не решает, как показывает опыт фильтрации на сайте OSMCHA. Поэтому пользуйтесь им для просмотра недавних правок, а историю ищите на WhoDidIt и Achavi. Неидеально — но пока мы не избавились от концепции пакетов правок, ничего лучше не сделать.

2017   javascript   mapbox   валидаторы   проекты

Большой ремонт мультиполигонов

Мультиполигон — это отношение с тегом type=multipolygon, содержащее линии в ролях inner и outer, образующие один или несколько замкнутых контуров. Их используют, чтобы нарисовать полигон с дыркой (например, дом со двором-колодцем) или не рисовать смежные полигоны по одним и тем же точкам. В принципе, если взять любой обычный полигон и навесить на него отношение с тегом type, он превратится в мультиполигон. Но так делать не стоит.

Если поставить теги на внешний контур, а не на отношение, такой мультиполигон будет считаться нарисованным в «старом стиле». Рендерер или osm2pgsql должны будут просмотреть все линии с ролью outer, убедиться, что теги совпадают, и использовать их для отрисовки. Теги на линиях внутренних контуров относятся к содержимому дырок, хотя иногда там можно встретить те же теги, что на внешнем контуре. Обрабатывать старые мультиполигоны сложно и долго.

«Новый» стиль тегирования мультиполигонов — это когда все теги на отношении. Что там висит на линиях контура — не важно. Рендерер сразу видит, что к чему, и не обязан просматривать каждый член отношения. Мультиполигоны в новом стиле нравятся всем, поэтому технари ратуют за истребление старых. Нужно перетегировать «всего» около 250 тысяч отношений, из 13 миллионов.

Йохен Топф предлагает делать это по ходу исправления сотен тысяч более важных ошибок в полигонах и мультиполигонах. К этому можно было приступить и раньше, взяв в помощь OSM Inspector, но планомерное истребление — не для всех. Иногда проще не видеть фронт работ, исправляя по ошибке за раз и имея выбор: нажать «следующая» или закрыть вкладку браузера. То есть, пойти в MapRoulette.

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

2017   валидаторы

Он проехал — ты поправил

У компании Scout много автомобильных треков: их навигатор, кажется, отправляет их на сервер по умолчанию, если не отключить. Для нас это хорошо, потому что хотя компания и не выдаёт весь архив, её сотрудники анализируют весь массив треков и сравнивают его с данными OpenStreetMap. И время от времени мы получаем новые валидаторы.

Первый проект Мартайн показал месяц назад: это результат сравнения треков с дорогами, слой Missing Roads. Его можно посмотреть в браузере, или добавить в JOSM, установив плагин «missingRoads». На низких масштабах там «тепловая карта» всех ошибок, а с 15-го подгружаются квадраты с точками треков. Дальше всё очевидно: если под треком нет дороги, её нужно дорисовать.

На прошлой неделе мы получили второй проект, который тоже про сравнение треков с дорогами, но чуть сложнее: слой Traffic Flow Direction находит потенциально односторонние дороги, где в OSM обозначены двусторонние. Его также можно посмотреть и подключить в JOSM (плагин «trafficFlowDirection»). Неожиданным было отсутствие oneway прямо в центре Москвы, хотя в европейских столицах и американских городах таких ошибок больше — за счёт распространённости навигатора Scout.

Распространённость Scout — главный недочёт этого валидатора: восточнее Германии у них треков очень мало, и проблем сервис почти не видит. Недочёт вытекает из закрытости исходников: мы не можем, например, обработать базу треков OpenStreetMap. Мартайн пишет, что готов сделать это сам, но сначала нужно выдавить из Гранта, нашего админа, обновление дампа GPX: последний делали больше двух лет назад.

2015   валидаторы

Под арки

Водители грузовиков не всегда используют карты OpenStreetMap, но когда используют, они смотрят на редкие теги у дорог: в частности, maxheight и maxweight. Немцы давно озабочены вопросом расстановки этих значений на дороги под и над путепроводами, но только в феврале участник Mmd сделал валидатор на основе Overpass API: карту maxheight. Даже в центре Москвы эта карта пустовата, хотя казалось бы — посмотреть на панорамах или в записях видеорегистратора значения высоты и занести в OSM. Даже в Петербурге грузовикам поспокойнее: там, помимо ограничений высоты, проставлены полтора десятка тегов maxweight на мостах.

2013   валидаторы
Ctrl + ↓ Ранее