Automatyczne znakowanie przejść dla pieszych oraz przejazdów rowerowych

Skąd wiesz, że uncontrolled? Na orto często nie widać (przynajmniej dla człowieka) sygnalizacji.
Można pewnie analizować, co jest zmapowane w okolicy. Często nie jest + część przejść nie ma sygnalizacji mimo sygnalizacji na głównej części skrzyżowania

Wytrenowałem na danych z OSM, które pobieżnie przejrzałem. Uncontrolled czy traffic signals będzie dodawane tylko w bardzo pewnych przypadkach, inaczej będzie samo highway crossing.

crossing:markings | Keys | OpenStreetMap Taginfo ?

Tak, to też będzie dodawane :-). Już prawie skończyłem merge z OSM więc dziś będzie najpewniej pierwszy zestaw do sprawdzenia.

Projekt skończony ale muszę jeszcze dopracować jakość podejmowanych decyzji przez AI. Przygotowałem małą infografikę co do całej procedury dodawania przejścia:

1 Like

Dodałem na wiki BDOT10k buildings import - OpenStreetMap Wiki

Przed testowym importem chciałbym szybko przedyskutować wstępną konfigurację.
Musimy ustalić akceptowalny poziom błędu dla 2 decyzji (obie podejmowane przez klasyfikację MobileNetV3 z wcześniej załączonej infografiki - ma to znaczenie):

1. czy jest to poprawny crossing

Proponuję granicę błędu na conajwyżej 0.5%. Oznacza to, że w najgorszym wypadku (gdy zarówno wykrywanie obiektów yolov8 (AI), jak i walidacja typu: droga w okolicy, zawiodą, to sama klasyfikacja będzie na poziomie błędu 0.5%. W rzeczywistości przy tej konfiguracji spodziewam się połowy tego, czyli 0.25%. Na danych testowych, przy takim ustawieniu, będziemy w stanie importować ~92% wykrytych przez yolov8 przejść. Klasyfikacja nie poradziła sobie z:

51_13450740,17_03668210

52_30331850,21_10234730

2. czy jest to uncontrolled vs traffic_signals

Proponuję granicę błędu ~0-1%, tzn. że dla tych przypadków zostanie oznaczone traffic_signals, zamiast uncontrolled. Nie jestem w stanie podać dokładnej granicy błędu bo mam trochę za mało danych dla takich przypadków. Przy takiej granicy, zostanie oznaczone 36% przejść z traffic_signals, pozostałe będą zwykłymi highway=crossing.

W odwrotnym przypadku, granica 0.5% oznaczy 46% przejść uncontrolled. Nie poradziło sobie z:

50_85642270,20_63782040

z tego miejsca.

moim zdanie za wysoko i lepiej nie tagować niż tagować z takim poziomem błędu

w sensie że co by bot tam dodał?

1 Like

Okej, no to na tą chwilę nie będzie oznaczało traffic_signals, w przyszłości się doda kiedy przygotuję więcej danych.

highway=crossing

Dziś jeszcze przygotuję trochę danych z crossing=unmarked co powinno pomóc w tych przypadkach.

a w jakim miejscu? na drodze bez podpięcia do chodników? Ogólnie, jak to sobie radzi z osobno zmapowanymi chodnikami?

Tak, na drodze. Założenie jest takie, że jeśli nie ma w okolicy oznaczonego przejścia to nie będzie też chodników więc na tą chwilę nie łączy i rozumiem, że nie jest to optymalne ale nie widzę aby dla takich przypadków był to błąd.

Takie łączenie to kolejny zestaw wyzwań aby zrobić to poprawnie, a uważam, że w znacznej większości przypadków nie będzie to wymagane.

Myślałem że w takich przypadkach warto by dać człowiekowi do przejrzenia: w przeciwnym razie będzie wisieć oderwane i wyszukiwanie trasy będzie na około dawać

Node z przejściem zawsze będzie przyłączony do drogi. Ja zgodzę się, że łączenie przejść z chodnikami może być spoko wyzwaniem na np. maproulette, ale byłoby to bardziej związane z ogólnym QA, bo z tego co wiem moja aplikacja nie byłaby jedynym winowajcom. Na prawdę nie uważam aby to był jakiś znaczny problem na tą chwilę.

większy problem że jak jest zmapowany chodnik osobno od drogi po obu stronach i przejście oderwane od chodnika to brakować będzie łącznika

tak, ale może to być dodawane na sporą skalę jak automat zacznie zasuwać

chodzi też np. o to by nowi mapujący wiedzieli że to błędne

Widzę 2 rozwiązania:

  1. Utworzyć maproulette dla tego typu przypadków
  2. Nie dodawać przejścia kiedy chodnik jest w pobliżu

Osobiście uważam że opcja 1. będzie najlepsza ponieważ nie sądzę aby przypadek, w który, został oznaczony chodnik, a nie zostało oznaczone przejście był często spotykany. Zdarzy się kilka przypadków wymagających korekty, ale większą stratą będzie nie oznaczanie takich przejść wcale.

1 Like

Tutaj, jeśli nie ma 100% pewności co do tagu, nie dodawałbym żadnego

Zgadzam się co do opcji 1, dodatkowo do takiego przejścia w pobliżu którego jest chodnik dodałbym tag fixme

Nigdy nie będzie 100% pewności, czy robot czy człowiek :slight_smile:.

1 Like

Człowiek który sprawdzi na miejscu będzie miał 100% pewności. Jeśli nie można mieć 100% pewności patrząc na ortofotomape, nie powinno się dodawać takich tagów na jej podstawie.
Samo dodawanie przejść popieram i podziwiam ilość pracy jaką wkładasz w usprawnianie OSM :slight_smile:

Pierwszy testowy upload, już widzę, że muszę sprawić aby te importy były trochę bardziej prostokątne :smiley:. Kolejny testowy będzie trochę większy jak dopracuje kilka rzeczy.

1 Like