310 likes | 423 Vues
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.
E N D
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
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.
Podstawowe kroki działania: • krótki krok inicjalizacyjny – zebranie próbek danych, • trening sieci neuronowej, • zastosowanie sieci do detekcji drogi.
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.
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 ;-)
Adaptacyjne podejście rzeczywiście dla czasu rzeczywistego przy podstawowych założeniach systemu bez zmian…
Adaptacyjne podejście rzeczywiście dla czasu rzeczywistego Dodatkowa obserwacja
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…
Wykorzystanie okien z poprzedniego slajdu (wraz z oznaczeniami droga czy nie-droga) jako filtrów
Dlaczego nie powinno się cały czas uczyć sieci w ten sposób, czyli np. zakręt
Post processing, aby zwiększyć precyzję… • szumy są redukowane filtrami graficznymi erosion & dilationm, • jeśli droga na 2 kolejnych obrazach nie różni się znacznie, informacje z poprzednich obrazków o segmentacji mogą być wykorzystywane.
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++.
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ę.
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ę
Wyniki • testy na różnych rodzajach dróg, • 4-sekundowe sekwencje wideo, • wykresy błędów pokazują co 25 klatkę.
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.
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
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