Podczas jazdy, w otoczeniu pojazdu, znajduje się wiele innych obiektów. Obiekty te mogą, ale nie muszą mieć wpływ na trasę, po której pojazd się porusza. Statyczne obiekty mogą być punktami orientacyjnymi dla lokalizacji lub przeszkodami, a z poruszającymi się obiektami może dojść do kolizji. Aby właściwie ocenić, z jakim typem obiektu pojazd ma do czynienia, musi go właściwie rozpoznać.
Przykładowymi statycznymi obiektami są budynki, znaki drogowe, krawężniki, drogi czy skrzyżowania, natomiast dynamicznymi są np. inne samochody, ludzie, czy zwierzęta.
Rozpoznawanie obiektów może odbywać się na podstawie ich:
- lokalizacji
- modelu 3D (z lidaru)
- trajektorii ruchu
- obrazu 2D (np. z kamery)
klasyfikacja obiektów
Na przykład, znając pozycję obiektu na mapie i aktualną pozycję pojazdu względem niego, można rozpoznać, czy w danym miejscu znajduje się statyczny obiekt np. budynek. Podobnie, posiadając modele samochodów, można na ich podstawie rozpoznać znajdujące się w pobliżu pojazdy.
Rozpoznawanie obiektów jest potrzebne, aby pojazd potrafił uniknąć kolizji z innymi obiektami, a ponieważ jest ich w otaczającym środowisku bardzo wiele, trzeba znaleźć takie, które mogą znaleźć się na kolizyjnej trajektorii. Śledzenie wszystkich obiektów w otoczeniu może być zbyt obciążające obliczeniowo, dlatego najczęściej śledzone są tylko potencjalnie kolidujące obiekty, np. pojazd znajdujący się w gęstym otoczeniu (np. na rondzie w Paryżu, albo na drodze w Barcelonie) musi śledzić wiele obiektów w otoczeniu, nawet kosztem ograniczenia maksymalnej prędkości, tak aby był w stanie wcześniej zareagować na zagrożenie. Z drugiej strony uznanie wszystkich obiektów za nieruchome może doprowadzić do zderzenia z idącym pieszym, bądź jadącym pojazdem.
Aby wykryć obiekty, należy użyć odpowiednich algorytmów, które można podzielić na dwie grupy:
- klasyczne
- uczenie głębokie (ang. deep learning)
Algorytmy klasyczne, mimo iż są mniej zasobożerne, są rzadko stosowane ze względu na ich czas implementacji oraz często niższą skuteczność w rozpoznawaniu obiektów. Dlatego aktualnie stosowane algorytmy są w głównej mierze oparte o uczenie głębokie. Algorytmy klasyczne są stosowane głównie w celu fuzji danych z różnych sensorów.
Skuteczność rozpoznawania obiektów na poszczególnych sensorach można poprawić, dokonując ich integracji, uzyskując w ten sposób jeden spójny obiekt. Np. obiekt rozpoznany jako pojazd przez sieć neuronową lidaru oraz kamery, po fuzji może być z dużym prawdopodobieństwem uznany jako samochód, jednak jeśli klasyfikacja z lidaru uzna obiekt jako ciężarówkę, a klasyfikacja z kamery jako budynek to znaczy, że obiekt mógł być błędnie rozpoznany na jednym, bądź nawet na obu sensorach. W takiej sytuacji algorytm fuzji musi dokonać jakiegoś wyboru, bądź uznać obiekt jako „nierozpoznany”.
Algorytmy uczenia głębokiego wytrenowane na reprezentatywnych zbiorach danych mogą z dużą dokładnością sklasyfikować obiekt poprawnie i następnie przekazać do analizy. Poruszające się rozpoznane obiekty (człowiek, ciężarówka czy samochód) są często przekazywane do modułów śledzenia obiektów, a obiekty statyczne (np. znaki drogowe) rozpoznane i zinterpretowane przez system autonomii, w celu określenia (lub modyfikacji) parametrów ruchu pojazdu.
Rozpoznawanie przeszkód