V-SLAM
Jak działa
Typowy potok V-SLAM dzieli się na frontend i backend działające zwykle w osobnych wątkach. Frontend (tracking) wyodrębnia cechy lub gradienty fotometryczne z kolejnych klatek i estymuje ruch kamery między nimi (odometria wizyjna). Wybrane klatki kluczowe (keyframes) trafiają do backendu (mapping), który optymalizuje spójną mapę punktów 3D i pozy kamer, zwykle metodą bundle adjustment minimalizującą błąd reprojekcji (feature-based) lub błąd fotometryczny (direct). Detekcja zamknięcia pętli (loop closure) rozpoznaje wcześniej odwiedzone miejsca (np. przez bag-of-words), a następnie optymalizacja grafu póz koryguje nagromadzony dryf. Mechanizm relokalizacji pozwala odzyskać pozę po utracie śledzenia. Warianty visual-inertial dołączają pomiary IMU w tzw. tight coupling, poprawiając estymację skali i stabilność.
Rozwiązany problem
Autonomiczny robot poruszający się w nieznanym środowisku musi jednocześnie wiedzieć, gdzie się znajduje, i rozumieć strukturę otoczenia — a oba te zadania są wzajemnie zależne. V-SLAM rozwiązuje ten problem typu „jajko i kura” wyłącznie z obrazu, eliminując zależność od GPS (niedostępnego w pomieszczeniach), kosztownych LiDAR-ów i uprzednio przygotowanych map.
Komponenty
Przetwarza kolejne klatki, wykrywa cechy lub gradienty fotometryczne i estymuje względny ruch kamery między klatkami.
Oficjalna
Optymalizuje globalnie spójną mapę 3D i pozy kamer, zwykle metodą bundle adjustment lub optymalizacji grafu póz.
Oficjalna
Rozpoznaje wcześniej odwiedzone miejsca i inicjuje korektę dryfu przez optymalizację grafu póz.
Oficjalna
Odzyskuje pozę kamery względem istniejącej mapy po utracie śledzenia.
Oficjalna
Implementacja
Ewolucja
Davison demonstruje lokalizację i mapowanie z pojedynczej kamery w czasie rzeczywistym (ICCV 2003), wersja czasopiśmiennicza w IEEE TPAMI 2007.
Klein i Murray (ISMAR 2007) wprowadzają keyframe'owy bundle adjustment w osobnym wątku, umożliwiając dokładne mapowanie w czasie rzeczywistym.
Engel, Schöps i Cremers (ECCV 2014) optymalizują błąd fotometryczny zamiast cech, tworząc semi-gęstą mapę.
Mur-Artal, Montiel i Tardós (IEEE T-RO 2015) łączą śledzenie, mapowanie, relokalizację i zamknięcie pętli na cechach ORB.
Engel, Koltun i Cremers łączą podejście bezpośrednie z rzadką optymalizacją fotometryczną (arXiv 2016, IEEE TPAMI 2018).
Mur-Artal i Tardós (IEEE T-RO 2017) rozszerzają system na kamery stereo i RGB-D jako open source.
Dodanie ścisłej fuzji wizyjno-inercyjnej oraz systemu wielu map (Atlas) dla większej odporności.
Równoległość
Kluczowa innowacja PTAM: rozdzielenie śledzenia i mapowania na osobne wątki działające równolegle. Bundle adjustment jest kosztowny i zwykle asynchroniczny względem śledzenia w czasie rzeczywistym.
Wymagania sprzętowe
Klasyczne feature-based V-SLAM (np. ORB-SLAM) jest zoptymalizowane pod CPU i działa w czasie rzeczywistym na procesorach, w tym w systemach wbudowanych.
Metody gęste oraz warianty oparte na sieciach neuronowych (deep/learned SLAM) korzystają z akceleracji GPU.