Komunikacja miejska dla niewidomych na terenie Śląska

Sprawa ma się tak.

Kiedy mapowane były pierwsze przystanki na Śląsku, to obecny schemat tagowania jeszcze nawet nie istniał. Co do tego czy highway=bus_stop tagować na drodze czy obok toczyły się dyskusje. Żeby każdy był zadowolony, zaproponowano tag public_transport, gdzie stop_position będzie zawsze dla węzła na drodze, a platform obok drogi, niezależnie od tego gdzie jest highway=bus_stop. Dopiero później wykrystalizował się podejście, że highway=bus_stop powinie być raczej zawsze obok drogi. Wtedy niektórzy stwierdzili nawet że highway=bus_stoppublic_transport=platform i zaczęli robić dziwne masowe edycje bez sprawdzania konkretnego przypadku. Co jest bez sensu, bo gdyby nowe tagi byłyby znaczeniowo 1:1 to nikt nie wymyślałby nowego tagowania. Z grubsza było tak jak @maro21 pisał.

Także po kolei.

Jeśli ten węzeł leży obok drogi, to public_transport=stop_position jest błędem i powinno być public_transport=platform. Jeśli jest na drodze, to lepiej usunąć tag highway=bus_stop z węzła na drodze i dodać go na osobnym węźle obok drogi.
Jeśli zastanawia Cię czemu dalej występuje pomieszane tagowanie, to spróbuj poprawić wszystkie kilka tysięcy przystanków i pogadamy jak się bawiłeś :smiley:

Jak dla mnie raczej węzeł highway=bus_stop, który jest w końcu „głównym” obiektem oznaczającym przystanek, a w modelowym przypadku powinien być też otagowany public_transport=platform który już wchodzi w skład relacji linii autobusowej. Oznaczanie platform jako obszary powoduje problemy wynikające z tego, że niektórzy przyjęli za założenie że highway=bus_stoppublic_transport=platform… Doszedłem do wniosku, że można z tego wybrnąć i sprostać założeniom różnych stron, tagując węzeł jako highway=bus_stop+public_transport=platform a linię/obszar jako highway=platform, ale chyba trochę to mało eleganckie… Mimo to lepszej opcji nie widzę.

1-2 znakowy kod przystanku powinien być w local_ref, to już chyba było nawet w tym wątku kilka razy poruszane?

A co powiesz, żeby się wyświetlił tutaj?

https://drive.google.com/file/d/1oazvhKLQYVazFRUbrxuvS97uCxDO6xke/view?usp=sharing

Zgadzam się, ale obecnie w ref jest to co powinno być w local_ref. Zastanawiałem się po co rmikke potrzebował refa, ale teraz już wiem :slight_smile:

Mam też dobrą wiadomość, ponieważ ZTM zgodził się nas wesprzeć trzema pracownikami z dostępem do najbardziej aktualnych baz przystanków. Dzięki temu możemy zaktualizować OSM najbardziej rzetelnymi danymi, a tym samym z tych danych skorzystają niewidomi.

Mam pewien pomysł.
W osmintegrator.eu wyświetlają się przystanki OSM (pozycja zatrzymania autobusu) i ZTM (pozycja słupka lub wiaty). Te drugie są pobrane z bazy danych ZTM i mają słabej jakości pozycję GPS.
Gdyby dodać do aplikacji możliwość poprawienia pozycji przystanków ZTM to czy nie warto byłoby je wgrać do OSM?

Ależ jak najbardziej, o ile nie jest to znacznie trudniejsze.

Tylko im dłużej o tym myślę, tym sensowniejsze wydaje mi się drugie rozwiązanie (łączenie z trybu podglądu).

Ok doałem ten ref do tooltipa. Przy okazji wyświetla się też local_ref zaraz po nazwie (jeżeli istnieje).
https://drive.google.com/file/d/17r3RK-J0Po_pd_EnbOVgRyNH2iGJHeQL/view?usp=sharing
Zmiana będzie dostępna wraz z wersją 0.10.0 pod koniec stycznia lub na początku lutego.

Nawet nie wiem czy licencja tego nie wymaga (a przynajmniej udostępnienia tych danych) :wink:

@dzamper dzięki, właśnie próbowałem to poprawiać i też wydaje mi się że to najlepsza opcja.

No i zastanawiam się czy jak ktoś poprawi te przystanki u nas (przeniesie highway=bus_stop) na węzeł nie na jezdni, to nie zepsuje waszej aplikacji.

https://www.openstreetmap.org/user/kubahahaha/diary/398500 - napisałem w jaki sposób ja poprawiam te przystanki, może komuś się przyda.

W przypadku, gdy jest tylko jeden słupek na dwa stanowiska, a po drugiej stronie nie ma jakiejkolwiek infrastruktury, mapujemy jeden czy dwa punkty? xD

W sensie po drugiej stronie drogi?

A gdzie stają autobusy?

Gdzie ludzie czekają?

Gdzieś tu wg https://rj.metropoliaztm.pl/mapa/
https://www.google.pl/maps/@50.1851573,18.8695533,3a,75y,128.13h,66.69t/data=!3m7!1e1!3m5!1s4MQ7COFx4oaaxRyZ6klgqA!2e0!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fpanoid%3D4MQ7COFx4oaaxRyZ6klgqA%26cb_client%3Dsearch.revgeo_and_fetch.gps%26w%3D96%26h%3D64%26yaw%3D131.29776%26pitch%3D0%26thumbfov%3D100!7i13312!8i6656

Na serwerze już jest wgrana i przetestowana wersja 0.10.0 programu OsmIntegrator.

Film z nowościami w wersji 0.10.0 jest dostępny pod tym linkiem. Dowiecie się w nim o nowo dodanych funkcjach takich jak:

  • nowy sposób przypisywania kafelków
  • pobieranie danych z OSM
  • wysyłanie danych do OSM (import)
  • nowe kolory połączeń
  • szczegóły kafelka
  • przyspieszenie działania połączeń
  • nowy sposób wyświetlania nazw przystanków OSM
  • usunięcie przypisywania kafelków przez Supervisora
  • usunięcie akceptacji połączeń
  • dodanie logo ZTM

Instrukcja obsługi jest dostępna dla chętnych pod tym linkiem.
Utworzyłem również dokument z najczęstszymi problemami podczas tworzenia połączeń oraz rozwiązaniami. Można go pobrać pod tym linkiem.

Zachęcam do korzystania z OsmIntegratora i zgłasznia uwag.

Wgraliśmy już kilka mniejszych grup przystanków (do 10 obiektów).

Nasze changesety można wyszukać po tagach #osmintegrator.
Przykładowe numery changesetów: 117638169, 117641639, 117958098.

Teraz planujemy wgrać całe centrum Katowic (ponad 300 przystanków).

Pod tym linkiem udostępniłem changeset oraz plik ze zmianami.
https://drive.google.com/drive/folders/1Aaljzm9M6uPTK5ryhRAnFXIPBpQIBG5a?usp=sharing

Dajcie znać, czy te zmiany są ok?

Natrafiliśmy również na omawianą już wcześniej w tym wątku sytuację z przystankami przypisanymi do więcej niż jednej linii.
Przykładowo przysatnek w Oświęcimiu
https://www.openstreetmap.org/node/2175680126
name = Stacja BP
ref = 1092

W systemie ZTM powinien mieć następujące dane:
name = Oświęcim Stacja BP
ref = 181146
local_ref = 17

Moglibyśmy nadpisać te dane danymi z ZTM, ale nie wydaje mi się to dobrym rozwiazaniem.
Czy macie jakieś pomysły jak rozwiązać ten problem?

@luktar

Czy mógłbym prosić o ponownie rozważenie wprowadzanych zmian?

Identyfikatory przystanków (znaczniki “ref”) nie pokrywają się z danymi w terenie i na stronie internetowej! Powinny być jednocyfrowe!

Dla działania nawigacji dla niewidomych ich kopia powinna być w “local_ref”, a ukryte wewnętrzne identyfikatory Zarządu Transportu Metropolitalnego powinny mieć własny osobny znacznik. “ref:ztm” jest już zajęty, proponuję użycie “ref:ztmetropolitalnego” lub “ref:ztm-śląsk”.

Twoje zestawy zmian modyfikują tylko punkty zatrzymania (public_transport=stop_position), a nie modyfikują platform przystankowych (public_transport=platform).

W tym wątku ustaliliśmy, że tag ref będzie zawierały 6-ści cyfrowy unikatowy identyfikator z systemu ZTM, a tag local_ref będzie zawierał numer przystanku np. 1, 1t, 2t.

Proponuję zastosować zasadę “ZTM First”, czyli:
Dla wszystkich przystanków ZTM uzupełnimy tag ref unikatowym identyfikatorem ZTM, nawet jeżeli przystanek jest współdzielony z innym dostawcą transportu publicznego.
W następnej wersji OsmIntegratora dodamy możliwość łączenia jednego przystanku z wieloma providerami transportu publicznego i wtedy wprowadzimy podział na ref:nazwa_dostawcy i zaktualizujemy istniejące dane.
Co sądzicie o tym pomyśle?

Zgadza się. Modyfikacja platform nie była przewidziana.

Teoretycznie można to dodać, ale potrzebowałbym chętnego programistę C# i React bo przy takim rozmiarze systemu doba jest za krótka :roll_eyes:

Wciąż nie otrzymałem odpowiedzi, dlaczego wprowadzamy nieoficjalne nieistniejące w terenie identyfikatory przystanków. Dlaczego do znacznika „ref” nie wprowadzamy prawdziwych danych z ZTM?

Hej Finvenkulo,

W pole ‘ref’ wprowadzamy najbardziej aktualne i rzeczywiste dane z systemu ZTM. Nie ma bardziej aktualnych danych ponieważ są one wprowadzane przez samych pracowników ZTM z ich wew. bazy danych.

Na początku marca odpowiedziałem na Twój komentarz do changeseta. Komentarz znajduje się pod tym linkiem:
https://www.openstreetmap.org/changeset/117495805#map=16/50.2677/19.0249

Przytoczyłem w nim link do postu z tego wątku, w którym szczegółowo wyjaśniłem dlaczego społeczność OSM umieszcza unikalny identyfikator w tagu ‘ref’, a zrozumiały dla użytkownika numer przystanku w tagu ‘local_ref’.
Link: https://forum.openstreetmap.org/viewtopic.php?pid=834516#p834516

Przykłady:
https://www.openstreetmap.org/node/334559649
https://www.openstreetmap.org/node/369231508
https://www.openstreetmap.org/node/469782076
W mniejszych miastach jak Szczecin, czy Toruń ref oraz local_ref nie są uzupełnione.
Wyjątek zstanowią Poznań i Łódź, w których przystanki nie mają krótkich 1 - 2 znakowych numerów, tylko długie alfanumeryczne identyfikatory.

Temat znacznkówk ref oraz local_ref również opisałem na WIKI pod tym linkiem: https://wiki.openstreetmap.org/wiki/OsmIntegrator#Stops_naming_convention

Mam nadzieję, że powyższe informacje są wystarczające :).
W razie czego możemy się spotkać i pogadać na ten temat.

Ps. Status prac:

  • poprawiliśmy już około 3501 przystanków. Pozostało około 3000.
  • dane cały czas są aktualizowane w systemie ZTM, w tym pozycje, numery oraz identyfikatory przystanków, co staramy się od razu aktualizować w OSM. ZTM również cały czas dodaje i usuwa przystanki
  • każdy przystanek jest starannie sprawdzany przez pracowników ZTM. Poprawiane są również pozycje przystanków na mapie OSM
  • efekty prac już są widoczne na openstreetmap.org, w szczególności okolice Tychów, Katowic i Chorzowa

Trafiłeś na tymczasowo nieistniejący przystanek (należy dodać prefiks «disused:»), ale na stronie internetowej sąsiedniego przystanku mamy:

Tutaj rzeczywiście nie znalazłem wartości ze znacznika «ref» na stronie, ale przystanek ten pojawia się po wpisaniu w wyszukiwarce.

Teraz przykład ze Śląska:
https://www.openstreetmap.org/node/2185700388
Znajdź proszę gdzieś na oficjalnej stronie z rozkładami jazdy lub na zdjęciu tabliczki przystankowej numer 159191:

Numer ten pojawia się tylko w adresie (url) strony i w bazie GTFS.

Wprowadzanie tego numeru do znacznika «ref» jest wprowadzaniem użytkowników w błąd, podążając za przykładami Gdańska i Berlina powinno się stworzyć dla nich nowy znacznik, proponuję użyć «ref:ztm_śląsk».

W takim razie to jednoznaczny błąd i nie powinien być do ref pchany.

Finvenkulo bardzo doceniam pracę jaką włożyłeś w zweryfikowanie podanych przeze mnie przykładów.
Z tego co się orientuję nikt w tym wątku nie wspomniał o tym, że zawartość tagu ref powinna przynajmniej znaleźć się na stronie internetowej z rozkładem jazdy. Gdybym to wiedział to inaczej zaprojektowałbym obecne rozwiązanie.

Dostarczone przez Ciebie informacje wprowadziły pewien chaos w obecnym rozwiązaniu. Z tego powodu mam dużo pytań.

Czy dodanie informacji o identyfikatorze do rozkładu jazdy ZTM przyczyni się do rozwiązania problemu?

Co z tagiem local_ref?

Pamiętajmy, że na podstawie naszych ustaleń firmy produkujące aplikacje dla niewidomych dokonały stosownych zmian w algorytmach i ich zmiana będzie bardzo trudna lub wręcz niemożliwa.

Wspomniany wyżej Londyński przystanek “Northumberland Avenue / Trafalgar Square” zaprzecza jednoznaczności.

W czym Gdańsk, czy Berlin są lepsze od Londynu?
Widzę, że mają standard ref:xxx, ale większość miast ma jednak standard z samym ‘ref’.

Nie mówię, że sam ‘ref’ jest lepszy, bo ref z dwukropkiem rozwiązuje problem wielu linii przypisanych do jednego przystanku, ale jednak ten drugi sposób jest stosowany rzadziej.

Czy na stronie Berlińskiego rozkładu jazdy sieci BVG identyfikator przystanku powinien się wyświetlać obok jego nazwy?
https://www.openstreetmap.org/node/3870475228
Niestety tak się nie dzieje: https://qr.bvg.de/h107167

Czy zasada z uzupełnianiem identyfikatora, po dwukropku, w tagu ref została gdzieś opisana?

Jaką mam pewność, że jutro ktoś nie powie, że powinniśmy jednak korzystać z jeszcze innej konwencji nazewniczej lub wrócić do zwykłych refów?

Podsumowując

Obecnie tag ref służy do tego, aby przystanki z OSM były połączone z przystankami GTFS, dzięki czemu możliwa będzie aktualizacja wszystkich przystanków na raz, a tym samym przeniesienie zawartości tagu ref do dowolnego innego tagu (jeśli będzie to konieczne).

Myślę, że naszym wspólnym celem jest sprawienie, aby mapa OSM była bardziej aktualna i zawierała więcej przydatnych dla użytkowników informacji. Żeby to zrobić musi powstać jedna spójna i uniwersalna wersja tego w jaki sposób dodatkowe informacje takie jak numer i identyfikator przystanku powinny zostać dodawane do przystanków.

Dopóki nie mamy wypracowanej wspólnej koncepcji będziemy poprawiać przystanki tak jak to ustaliliśmy we wcześniejszych postach w tym wątku.

Działam troszkę egoistycznie, zdarza mi się korzystać z aplikacji OsmAnd, dlatego też włożyłem trochę pracy w dodawaniu odnośników do rozkładów jazdy:

Przecież mamy ≈1000 przystanków! Chcesz drukować nowe tablice, aby wprowadzać nowe identyfikatory, zamiast zmienić kod Twojej aplikacji?!

Już to pisałem, nic. Może być on kopią znacznika «ref» i wszyscy będą zadowoleni!

Nie ma go na stronie i nie ma go na OSM w znaczniku «ref».

Władze różnych miast stosują różne sposoby oznaczania przystanków.

Na angielskiej wiki: https://wiki.openstreetmap.org/wiki/Key:ref#Key_variations
Polskie apteki mają poprzypisywany znacznik ref:csioz, jakoś autorowi nie przyszło do głowy dodać tego numeru do znacznika ref.
Numery z PRNG: wiki, taginfo.

Chwilowo robisz zamieszanie: na tablicy przystankowej i stronie internetowej mamy jeden numer, do znacznika «ref» miejsca zatrzymania wprowadzasz jakiś inny nieznany numer, a na platformach przystankowych jest znowu poprawny numer.

Przy okazji zauważyłem mój błąd: znacznik «website» służy do wprowadzenia oficjalnej strony obiektu, a «url» do nieoficjalnej, wkrótce to poprawię.

Zaproponowałem dodanie znacznika «ztm_śląsk», tymczasem znacznik ne te 6-cyfrowe identyfikatory przystanków już od dawna istnieje: https://wiki.openstreetmap.org/wiki/General_Transit_Feed_Specification i nawet został wprowadzony dla kilku śląsko-dąbrowskich przystanków: https://www.openstreetmap.org/node/3706546042/history

Nie rozwiązuje to problemu kilku przewoźników na jednym przystanku.