Sieć neuronowa w inteligentnym pojeździe

31
Sieć neuronowa w inteligentnym pojeździe Na podstawie pracy Mike’a Foedischa i Aya Takeuchi Adaptive Real-Time Road Detection Using Neural Networks Tomasz Kozakiewicz, Wrocław, 17.05.2005

description

Tomasz Kozakiewicz, Wrocław, 17.05.2005. Sieć neuronowa w inteligentnym pojeździe. Na podstawie pracy Mike’a Foedischa i Aya Takeuchi Adaptive Real-Time Road Detection Using Neural Networks. Sieć neuronowa w inteligentnym pojeździe , Tribolite – autonomous vacuum cleaner from Electrolux. - PowerPoint PPT Presentation

Transcript of Sieć neuronowa w inteligentnym pojeździe

Page 1: Sieć neuronowa  w inteligentnym pojeździe

Sieć neuronowa w inteligentnym pojeździe

Na podstawie pracy Mike’a Foedischa i Aya Takeuchi Adaptive Real-Time Road Detection Using Neural Networks

Tomasz Kozakiewicz,

Wrocław, 17.05.2005

Page 2: Sieć neuronowa  w inteligentnym pojeździe

Sieć neuronowa w inteligentnym pojeździe,Tribolite –

autonomous vacuum cleaner from Electrolux

Page 3: Sieć neuronowa  w inteligentnym pojeździe

Cel:Określenie czy określony obszar jest drogą (betonową) czy nie.

Główne cechy: wykorzystuje kamerę (przechwytującą obraz z punktu

widzenia kierowcy), działa w czasie rzeczywistym, niezależny od linii itp. oznaczeń drogowych.

Page 4: Sieć neuronowa  w inteligentnym pojeździe

Podstawowe kroki działania:

1. krótki krok inicjalizacyjny – zebranie próbek danych,

2. trening sieci neuronowej,

3. zastosowanie sieci do detekcji drogi.

Page 5: Sieć neuronowa  w inteligentnym pojeździe

Postać danych

- obraz jest w postaci RGB,

- cechy:

+ 3 x 8 bitów na kolory,

+ wartości współrzędnych x i y rozważanych punktów (znormalizowane).

Każdy wektor jest następnie ręcznie oznaczany jako droga lub nie-droga.

Page 6: Sieć neuronowa  w inteligentnym pojeździe

Trening sieci

Page 7: Sieć neuronowa  w inteligentnym pojeździe

Detekcja drogi

Page 8: Sieć neuronowa  w inteligentnym pojeździe

Przykładowy wynik

Page 9: Sieć neuronowa  w inteligentnym pojeździe

Zastrzeżenie do algorytmu

Mimo, że detekcja drogi przez otrzymaną sieć odbywa się automatycznie i może być wykonywana w czasie rzeczywistym,

to trenowanie wymaga ręcznych oznaczeń wprowadzanych przez człowieka

Obniża to nieco możliwości wykorzystywania tego rozwiązania w czasie rzeczywistym ;-)

Page 10: Sieć neuronowa  w inteligentnym pojeździe

przy podstawowych założeniach systemu bez zmian…

Adaptacyjne podejście rzeczywiście dla czasu rzeczywistego

Page 11: Sieć neuronowa  w inteligentnym pojeździe

Adaptacyjne podejście rzeczywiście dla czasu rzeczywistego

Dodatkowa obserwacja

Page 12: Sieć neuronowa  w inteligentnym pojeździe

Bazując na oczekiwanych obszarach wg poprzedniego obrazka, bierzemy punkty z tych obszarów i automatycznie oznaczamy je jako droga lub nie-droga.

A nieco dokładniej określamy to nie dla pojedynczych punktów a dla pewnych obszarów / okien…

Page 13: Sieć neuronowa  w inteligentnym pojeździe
Page 14: Sieć neuronowa  w inteligentnym pojeździe

Wykorzystanie okien z poprzedniego slajdu (wraz z oznaczeniami droga czy nie-droga) jako filtrów

Page 15: Sieć neuronowa  w inteligentnym pojeździe

Dlaczego nie powinno się cały czas uczyć sieci w ten sposób, czyli np. zakręt

Page 16: Sieć neuronowa  w inteligentnym pojeździe

Post processing, aby zwiększyć precyzję…

1. szumy są redukowane filtrami graficznymi erosion & dilationm,

2. jeśli droga na 2 kolejnych obrazach nie różni się znacznie, informacje z poprzednich obrazków o segmentacji mogą być wykorzystywane.

Page 17: Sieć neuronowa  w inteligentnym pojeździe

Implementacja – strona techniczna

• Dell Latitude laptop 2,2GHz, z Red Hatem 9,• Unibrain Fire-i (320x240 pixels) firewire camera (30

klatek / sek.),• aplikacja napisana w C++.

Page 18: Sieć neuronowa  w inteligentnym pojeździe

Implementacja – sieć neuronowa

• 26 inputs (24 bitów RGB + koordynaty x i y)

• sieć trzywarstwowa:

- dwie pierwsze warstwy zawierają po 4 neurony,

- ostatnia warstwa złożona z 1 neuronu zwraca wynik,

• wykorzystuje wsteczną propagację.

Page 19: Sieć neuronowa  w inteligentnym pojeździe

Implementacja c.d.

Dla umożliwienia działania w czasie rzeczywistym:

• każdy obrazek jest zmniejszany z 320x240 do 160x120,

• wybierany jest co trzeci piksel wraz z otoczeniem o rozmiarach 7x7 (więc nachodzą te okna na siebie trzema pikselami z każdej strony),

Aktualnie czas segmentacji drogi wynosi ok. 60 ms / ramkę

Page 20: Sieć neuronowa  w inteligentnym pojeździe

Wyniki

• testy na różnych rodzajach dróg,

• 4-sekundowe sekwencje wideo,

• wykresy błędów pokazują co 25 klatkę.

Page 21: Sieć neuronowa  w inteligentnym pojeździe

Test 1, prosta droga, wyniki

Page 22: Sieć neuronowa  w inteligentnym pojeździe

Test 2, droga z cieniami, wyniki

Page 23: Sieć neuronowa  w inteligentnym pojeździe

Test 3, łuk drogi, lekka zmiana otoczenia, wyniki

Page 24: Sieć neuronowa  w inteligentnym pojeździe

Test 4, duża zmiany otoczenia i drogi, wyniki

Page 25: Sieć neuronowa  w inteligentnym pojeździe

Podsumowanie wyników

Page 26: Sieć neuronowa  w inteligentnym pojeździe

Uwagi, pomysły, plany na przyszłość

• trening sieci zajmuje aktualnie ok. 600 ms,

• nowe dane – bufor FIFO,

• rozwiązanie dla dynamicznych zmian,

• wykorzystywanie informacji o ruchu pojazdu,

• zastosowanie algorytmów dla detekcji nadjeżdżających pojazdów.

Page 27: Sieć neuronowa  w inteligentnym pojeździe

Co jeszcze się dzieje w kierunku intelligent vehicles?

n.p. kilka skrótów:

• CC - (Cruise Control) system stabilizacji prędkości jazdy• iCCS - system utrzymujący stałą odległość od poprzedzającego pojazdu • DAS - system identyfikujący pasy ruchu, znaki drogowe i przeszkody • DSC - układ kontroli stabilności pojazdu• DTC - układ dynamicznej kontroli trakcji)• EOBD - (European On- Board Diagnostic) układ ten stanowi centrum

gromadzenia wszelkich funkcji diagnostycznych• ICC (Intelligent Cruise Control)- inteligentny system stabilizacji

prędkości jazdy• ICS - zespolony system kontroli układów samochodowych • PTS - system ułatwiający parkowanie (wyposażony w czujniki

odległości)• RDW - system informujący o zmianie ciśnienia w oponach • SRS - system bezpieczeństwa pasażerów• TPMS - układ monitorujący ciśnienie powietrza w ogumieniu

Page 28: Sieć neuronowa  w inteligentnym pojeździe

Czym to grozi?

Page 29: Sieć neuronowa  w inteligentnym pojeździe

Czym więc jeździć?

Page 30: Sieć neuronowa  w inteligentnym pojeździe

Wykorzystane materiały:

[1] Mike Foedisch, Aya Takeuchi, Adaptive Real-Time Road Detection Using Neural Networks, Waschington DC, 3-6.10.2004.

[2] Albert Schmidt, A Modular Neural Network Architecture with Additional Generalization Abilities for High Dimensional Input Vectors, Manchester Metropolitan University, Department of Computing, September 1996.

[3] Materiały informacyjne firmy Electrolux, m.in. www.electrolux.pl

[4] słowniczek ze strony http://motoryzacja.fazi.pl/

[5] BT Exact Technologies, Technology timeline, http://www.cs.uu.nl/people/jan/BT2002.pdf

Page 31: Sieć neuronowa  w inteligentnym pojeździe

koniec

dziękuję za uwagę