wowik, доброго дня!
Может упомянуть на вики в “Соглашение об именовании дорог” про Казахстан, раз были затронуты улицы и в Казахстане?
Я за человеческие названия, одумался, хоть и раньше лепил “переулок Зелёный”, а не “Зелёный переулок”.
wowik, доброго дня!
Может упомянуть на вики в “Соглашение об именовании дорог” про Казахстан, раз были затронуты улицы и в Казахстане?
Я за человеческие названия, одумался, хоть и раньше лепил “переулок Зелёный”, а не “Зелёный переулок”.
С Казахстаном достаточно сложно.
После небольшого эксперимента выяснилось, что разнобой полный, где слово улица строго сзади, где плавает как надо, где сокращено, а где опущено.
Народ будет в недоумении, если без оповещения переделать.
Хотя это и будет своего рода оповещением.
Много местных названий (в честь местных героев) словарь надо наполнять и выверять.
Есть и просто казахские названия в name.
Но это лучше обсуждать тут https://forum.openstreetmap.org/viewtopic.php?id=60595
Ну если бы Зеленин было фамилией, как Ленин, то наверное действительно «Большая улица Зеленина». Здесь уже скорее само название было бы странное, а не его представление.
Не уверен, что это чисто местное, в Москве, полной самых странных названий, ещё и не такое встречается. Но здесь список таких улиц приведен в Реестре:
Upd.: Вот и в Москве: https://ru.wikipedia.org/wiki/%D0%A3%D1%81%D0%B0%D1%87%D1%91%D0%B2%D0%B0_%D1%83%D0%BB%D0%B8%D1%86%D0%B0
Таки надо бы в OSM wiki это иметь.
Небольшая история, леденящая кровь.
Как вы все знаете, раньше периодически нормализовывали имена вот этой программкой https://wiki.openstreetmap.org/wiki/Streetmangler , но теперь ей никто не балуется.
В выдаче http://wowik.byethost7.com/ я замучился смотреть на весь бред, который лепят в имена улиц.
Посему решил дооснастить программку нормализатором названий улиц, тем более, что при работе с ФИАС там уже похожий код был написан и расставлял порядок слов.
В начале апреля начал писать. Программа анализирует, выдает кандидатов на исправление в .OSM фаил. Раскрываются сокращения типа ул., пер., а потом анализируется порядок слов.
Первоначально в ходе отладки механизма поиска и генерации .OSM файла программа работала аналогично тому, что делалось при определении порядка слов для улиц из ФИАС.
Но там я всегда имел еще и альтернативный порядок, так как порядок слов в ОСМ считается в валидаторе более правильным.
Для нормализатора же необходимо принимать единственное решение и сделать это поправками алгоритма не удается.
Результат приносит лишь работа по словарю.
Как сделать словарь?
Можно взять чужой, например от Streetmangler. Но это не путь настоящего программиста.
Решил сгенерить свой.
И мне подумалось, что раз когда-то названия улиц нормализовались, то скорее всего они в большинстве своем уже в правильном порядке.
Тогда я просто все встречающиеся названия стал заносить в табличку, причем попутно считая, сколько раз используется это название со словом улица спереди, а сколько сзади. Заодно я печатал по одному id для node way rel для левого и правого использования, чтобы при необходимости найти в OSM.
переулок Грибоедова 112 0 1730470139 123180901
545 33025 Набережная улица 2147483647 501252407 8901421 1680105009 137381198 3292482
0 158 Корпусная улица 2147483647 35843696 2075535
Имея такую статистику, я стал переносить потихоньку наиболее очевидных кандидатов в словарь.
Где-то приходилось статистику исправлять.
Например Набережная может иметь слово улица и слева и справа, поэтому в словарь оно пошло с равными весами, то есть программа в таком случае ничего местами не переставляет.
Прогоняя нормализатор, просматривал глазками кандидатов в поиске ложных срабатываний в JOSMе и выгружал.
При обнаружении ложного срабатывания исправляются соответствующие данные в словаре.
Потом добавлял новую порцию названий в словарь
Какие-то названия попадались как с буквой Ё, так и с Ё, пришлось вносить оба варианта, иначе нормализатор вставлял Ё, если в словаре название ее содержало.
Постепенно я в программу добавлял обработку не только улиц/переулков, но и других типов наименований, проезды, бульвары, шоссе… В общем еще кое-что осталось.
Сделал замену не только сокращений, но и коррекцию частых ошибок типа “1-ая” на “1-я” и т.п.
Вообще с числительными еще куча хлопот.
Сегодня утром 9 мая, приделав еще немного коррекций опечаток в программу и названий в словарь, который уже перевалил числом за 51000 названий, я этот словарь удалил.
Осталась резервная копия от 14 апреля размером в 1900 названий.
Самое интересное, что собственно словарь-то не погиб. Он теперь живет распределенно в ОСМ, по которому он уже нормализован.
И вот я теперь два часа дописываю фильтрацию выдачи кандидатов для словаря, чтобы выкинуть на первых порах то, что я раньше ручками отсеивал (микрорайоны, поселки…, какие-то названия с датами), ну и заодно чиню то, до чего руки не доходили.
Вот, кстати, локальный словарь наверное сделаю по замах для Питера, для Белоруссии и т.п.
Есть еще план сравнить свой новый словарь со словарем от Streetmangler.
Поэтому у меня пока пауза в выгрузке работы нормализатора.
P.S. Статья, хоть прямо в дневники
топ 10 левых по России
улица Ленина 132588 0 1489829216 121506230 9304705
улица Мира 65164 0 2147483647 137381210 7118951
улица Кирова 48460 0 2147483647 210884924 3651393
улица Гагарина 46616 0 2082860633 30623343 7748809
улица Калинина 45847 0 2147483647 93843030 2108431
улица Пушкина 41004 0 2147483647 39200353 8901422
улица Карла Маркса 34553 0 1624765014 93864374 2590280
улица Чапаева 28954 0 2147483647 170997113 1389255
улица Горького 27571 0 2147483647 30623338 4139933
улица Победы 23860 0 2147483647 248451959 3659844
улица Свердлова 22789 0 2147483647 48947461 3691729
топ (то есть боттом) 10 правых
0 32886 Красноармейская улица 2147483647 89238538 4234547
0 34306 Зелёная улица 2147483647 41741123 4137164
0 40994 Пролетарская улица 2147483647 30623333 5174857
0 41097 Новая улица 2147483647 41741124 3044592
0 50090 Первомайская улица 2147483647 25684101 4572655
0 55280 Комсомольская улица 2147483647 40419760 1236697
0 57623 Школьная улица 2147483647 135756648 3436516
0 61712 Садовая улица 2147483647 122603335 7243270
0 74022 Октябрьская улица 1562318769 30624229 3501077
0 88768 Центральная улица 2147483647 130166696 7737585
P.S. Это с домиками
P.P.S. Итого: Программка насобирала 61000 названий.
Если я раньше постепенно добавлял в словарь, то может теперь просто постепенно удалять из него?
Пара вопросов для ЕГЭ:
улица Ленина Таврическая vs Ленина Таврическая улица vs **Таврическая улица Ленина **
улица Ленина Фабричная vs Ленина Фабричная улица vs Фабричная улица Ленина
Кто-нибудь вообще думал, когда предлага соглашение?
улица Эльтавная 1-я 2-й тупик vs 1-я Эльтавная улица 2-й тупик vs 2-й тупик 1-й Эльтавной улицы
Так соглашение – это просто выдержка из вводной части Реестра названий СПб, а тут таких странных названий нет, максимум “3-я линия 2-й половины”.
Для конкретно этих я бы выбрал “улица Ленина Таврическая”, потому как, судя по всему, это две улицы Ленина исходно в двух поселках, которые потом склеились, так что “Таврическая” и “Фабричная” описывают скорее suburb и могли бы вообще писаться в скобках (а может когда-то так и писались).
С тупиками первый вариант всяко отпадает, потому что с самой улицей все однозначно: “1-я Эльтавная улица”. Из оставшихся наверное скорее “1-я Эльтавная улица 2-й тупик”.
Более-менее восстановился после краха https://forum.openstreetmap.org/viewtopic.php?pid=748256#p748256
Обработка наладилась. Из словаря вычищаю мусор.
Худо-бедно, но декоммунизация шагает по планете.
Процесс идет неудержимо. По крайней мере в молодых головах.
Столько ошибок, невообразимых при Советской власти.
Ну вот милый примерчик:
https://www.openstreetmap.org/way/93577497
А вот кто у кого списывал?
В Яндексе Малогвардейская улица, в НЯК написано, что создана 17 февраля 2015 (может это “перелецинзирование”, когда оно у них там было, раньше?)
В ОСМ была https://www.openstreetmap.org/way/103187893/history и даже еще есть немного https://www.openstreetmap.org/way/116797294/history
уже не понять наверное
Вполне возможно и перелицензирование, а я всё гадал что за фигня с моими правками в НЯКе.
Перед OSM немного мапил(через боль) в НЯК и сейчас все мои правки датированы около 2015 года, точнее значатся как импорт данных. Выбрал одну дорогу в няке и первая дата значится 10 февраля 2015 года с пояснением “импорт данных” от сотрудника яндекса(yndx-name). Хотя ранее я её сам рисовал в НЯК. Гугл и яндекс там так себе по покрытию картами, сам рисовал, карты бинга охватывали только главные дороги, до моего знакомства с OSM ещё год, в OSM я с октября 2015 года и данные там могли быть только мои из НЯКа, а теперь это какой-то импорт данных сотрудника.
Вот такие вот дела.
Только вроде все выяснили, что “Гусева улица” и т.п. - это в каком-то смысле исключения, и их не надо “нормализовывать”, и вот все по новой. Опять надо их откатывать… Сколько же можно.
Виноват, вспылил, был не прав.
А теперь гиперкоррекция – в Кронштадте, в отличие от Охты, просто “улица Гусева”. И в Полюстрово – “улица Жукова”.
О! Я там как-то парковался!
Ну если это всё, то я их вообще вычеркиваю из обработки.
“Их” – это весь проблемный регион?
Не, только эти улицы.
А проблемныя регионы это KRY и SEV, там сейчас что0то по одной схеме, а что-то по другой начинают мапить.
Про “службу 112” и их методы уже писали тут:
https://forum.openstreetmap.org/viewtopic.php?pid=671768#p671768
https://forum.openstreetmap.org/viewtopic.php?pid=685152#p685152
Я же столкнулся в Бурятии.
Последние обсуждения касаются “Строителей проспект”, мною перемапленного в “проспект Строителей”
https://www.openstreetmap.org/changeset/72398421
Но человек проявляет упорство, даже делает фейковый “Строителей Проспект” во имя своей системы
https://www.openstreetmap.org/changeset/72518594