Vizuálně-inerciální navigace

Proč vizuálně-inerciální navigace v GNSS-denied prostředí

Autonomní létající systémy (UAV) jsou čím dál více nasazovány v interiéru, městských kaňonech, pod překážkami a v tunelech, kde je globální navigace satelitními systémy (GNSS) nedostupná nebo výrazně degradována multipathem a stíněním. Vizuálně-inerciální navigace (VIN), resp. vizuálně-inerciální odometrie a SLAM (VIO/VINS), kombinuje kameru a inerciální měřicí jednotku (IMU), aby využila komplementární vlastnosti: kamera poskytuje informaci o poloze z vizuálních znaků s minimálním driftem v nízkých frekvencích, IMU přináší robustní krátkodobé odhady s vysokou frekvencí a nízkou latencí. Výsledkem je přesná, nízkolatenční a energeticky efektivní lokalizace, vhodná pro GNSS-denied mise i pro agresivní manévry.

Senzorový balík: kamera, IMU a doplňkové zdroje

  • Kamery: globální závěrka (GS) pro přesná měření bez rolling-shutter zkreslení; pokud se použije RS, modelování rolling-shutter v optimalizaci je nutností. Objektiv: pinhole/fisheye; širokoúhlé a fisheye rozšiřují pole záběru a snižují počet ztrát znaků.
  • IMU: 6D (3× gyro + 3× akcelerometr) s rozsahem ≥ 2000 °/s a ≥ 16 g pro akrobatické trajektorie. Důležité parametry: šum, Allanova deviace, teplotní závislost a stabilita biasu.
  • Doplňky: barometr (výška), magnetometr (heading – opatrně v ocelových konstrukcích), UWB/LPS (relativní vzdálenosti), altimetr (LiDAR/ToF) na krátké vzdálenosti, případně event kamera pro extrémně dynamické scény.

Kalibrace: intrinziky, extrinziky, časování

Přesnost VIN stojí na kalibraci:

  • Intrinziky kamery: ohnisková vzdálenost, střed obrazu, model zkreslení (radiální/tangenciální, případně unified omnidirectional pro fisheye).
  • Extrinziky kamera↔IMU: 6-DoF transformace (rotace a posun). Doporučuje se offline kalibrace (kalibrační tabule + excitační manévry) a online doladění v SLAM grafu.
  • Časová synchronizace: hardwarový trigger, PTP/1588 nebo softwarové časování s odhadem posunu. Neshoda > 2–3 ms se výrazně projeví při vysokých úhlových rychlostech.

Formulace problému: VIO vs. VINS vs. SLAM

  • VIO (odometrie): lokálně konzistentní, bez explicitního uzavírání smyček. Nižší paměťová stopa, menší výpočetní náročnost, mírný drift v dlouhém časovém horizontu.
  • VINS (VI-SLAM): faktorový graf s loop closure a relokalizací; zachycuje globální omezení a výrazně redukuje drift.
  • Filtr vs. optimalizace: (i) MSCKF/EKF pro nízkou latenci, (ii) Sliding-window bundle adjustment s preintegrovanou IMU pro vyšší přesnost, (iii) Full pose-graph BA pro mapování a smyčky.

Matematika pro integraci IMU: preintegrace, model šumu a biasy

IMU poskytuje měření úhlových rychlostí a lineárních zrychlení. Přímé integrační schémata jsou citlivá na krok a časování; proto se používá preintegrace mezi klíčovými snímky:

  • Preintegrované inkrementy komprimují tisíce IMU vzorků do jednoho faktoru, který je invariantní vůči následné aktualizaci biasů (první řády linearizace).
  • Modely biasů: náhodná procházka (random walk) s teplotně závislými drifty; online odhad biasů je nezbytný.
  • Šum: daný spektrální hustotou (gyro/acc noise density) a random walk; Allanova analýza slouží k určení parametrů do filtru/optimalizace.

Vizuální fronta: detekce, sledování a rekonstrukce prvků

  • Výběr znaků: FAST/ORB pro robustnost a rychlost; pro přesnost BA preferovat SHI-TOMASI + L2 patch tracking (KLT) s filtrací odlehlých hodnot (RANSAC).
  • Stereo vs. mono: stereo poskytuje metriku ihned při inicializaci; mono vyžaduje bootstrap škály (viz níže). Fisheye stereo snižuje slepé zóny.
  • Inverzní hloubka: parametrizace bodů inverzní hloubkou stabilizuje optimalizaci u vzdálených struktur.
  • Vizuální faktory: reprojekční chyby s robustními ztrátovými funkcemi (Huber/Cauchy) na potlačení odlehlých hodnot a dynamických objektů.

Inicializace a škála: klíčový krok pro mono VIO

Mono VIO potřebuje určit metriku:

  • Visual-only bootstrap: odhad up-to-scale trajektorie a mapy + využití průměrné gravitační normy z IMU k určení škály.
  • Observabilita: pro citlivé rozlišení gravitačního vektoru a akcelerace jsou nutné excitační manévry (otáčení, změna rychlosti).
  • Alternativy: krátkodobé stereo, známý rozměr objektu, výška z barometru nebo rangefinder pro one-shot metriku.

Sliding-window optimalizace a marginalizace

V praxi se udržuje okno posledních N stavů (pozice, rychlost, orientace, biasy, případně body) a řeší se nelineární úloha nejmenších čtverců (least squares):

  • Faktory: reprojekce, preintegrované IMU, prior z marginalizace starých stavů, případně baro/UWB.
  • Marginalizace: vytváří kompaktní prior; pozor na „drift“ způsobený změnou linearizačních bodů (staré priory musí být relinearizovatelné nebo řízené přes IMM/first-estimate Jacobians).
  • Řešiče: Schur-komplement pro body, sparsity-aware QR/Cholesky; inkrementální řešiče (iSAM2-like) zkracují latenci.

Loop closure, relokalizace a mapový management

  • Místo-rozpoznávání: Bag-of-Words/NetVLAD/DELF pro kandidáty smyček; geometrická verifikace esenciální/fundamentální maticí.
  • Pozorovací omezení: pose-graph faktory mezi klíčovými snímky snižují kumulovaný drift; slučování map (map merge) pro opakované mise.
  • Životní cyklus mapy: komprese, selekce klíčových snímků, odstraňování starých prvků, submapy a víceúrovňové mapování (lokální vs. globální).

Robustnost v nepříznivých podmínkách

  • Osvětlení a HDR: automatická expozice s omezeními, HDR snímání, fotometricky invariantní deskriptory, direct methods s fotometrickou kalibrací.
  • Rozmazání pohybem: kratší expozice, vyšší ISO, deblur filtry; nebo event kamery, které zvládají >1 kHz časové rozlišení.
  • Nízká textura a opakující se vzory: kombinovat rohové a hraniční prvky, semi-dense direct přístup, doplnit UWB/rangefinder pro pevné ukotvení výšky.
  • Vibrace a aliasing: mechanická izolace IMU, softwarové filtrování (notch), správné nastavení antialias filtru a vzorkování.
  • Detekce selhání: testy konzistence inovací, monitor reprojekčních reziduí, watchdogy proti divergenci a failsafe režimy (držení pozice, RTH po trajektorii).

Časování, latence a real-time pipeline

Autonomní řízení potřebuje nízkou latenci a determinismus:

  • Pipeline: IMU fronta (1–2 kHz), vizuální fronta (30–60 Hz), fúze (200–400 Hz stavový filtr + 10–30 Hz oknová optimalizace).
  • On-board výpočty: ARM CPU + NPU/GPU pro front-end (detekce, sledování), DSP pro předzpracování. Kritické úlohy pinovat na jádra, používat lock-free fronty.
  • Předikce stavu: pro řídící smyčku predikovat do času aktuátoru (např. +5–15 ms) s využitím IMU a posledních odhadů.

Fúze s doplňkovými senzory

  • Barometr: stabilizace pomalých driftů ve výšce, robustní vůči vizuální degeneraci nad homogenním povrchem (sníh, voda).
  • UWB/LPS: jednocestné časování nebo obousměrné měření vzdálenosti; faktory vzdáleností ukotvují škálu i v mono konfiguraci a zlepšují observabilitu yaw.
  • LiDAR altimetr/ToF: přesné výškové body a detekce terénu pro přistání; jednoduché 1D faktory do okna.
  • Magnetometr: opatrně v interiéru; venku poskytuje heading, který se promítá jako prior/faktor s adaptivní váhou.

Multikamera, stereo a omnidirekce

Viackamerové sestavy snižují slepá místa a zvyšují robustnost:

  • Synchronizované stereo: okamžitá metricky kalibrovaná hloubka, menší závislost na excitačních manévrech při inicializaci.
  • Omnidirekce (fisheye, katadioptrické): více znaků v každé scéně, vyšší redundance při prudkých rotacích, nutnost odpovídajícího modelu projekce.
  • Rolling-shutter stereo: při vysoké dynamice – model RS v BA nebo zkrátit expozici, snížit časové rozpětí mezi levým/pravým snímkem.

Event kamery a přímé metody

Event-based senzory emitují asynchronní události při změnách jasu, vhodné pro rychlé manévry a slabé osvětlení. Přímé (fotometrické) metody optimalizují nad intenzitami/pseudogradienty namísto bodových korespondencí. Kombinace s IMU poskytuje extrémně nízkou latenci a vysoký dynamic range.

Metodika hodnocení: metriky a datové sady

  • ATE/RPE: absolutní a relativní chyba trajektorie; hodnotit medián a 95. percentil.
  • Vzorkovací latence a jitter: E2E latence od snímání po stav použitý v řízení (< 30–50 ms pro rychlé lety).
  • Robustnost: procento úspěšných běhů bez divergence při degradovaných podmínkách (tma, kouř, nízká textura).
Metrika Cíl (BVLOS/Indoor) Poznámka
ATE (m / 100 m) < 1.0 Po smyčkách < 0.3 m/100 m
RPE (%, 1–5 m baseline) < 1.0 % Bez driftu rotace > 0.5°/min
Latence E2E < 40 ms Při 60 Hz vizuální frekvenci

Integrace do řízení letu: odhad stavu a fail-safe

  • Rozhraní: odhad stavu v tělovém nebo mapovém rámci (SE(3) pozice/orientace, rychlost, biasy), kovariance/informační matice pro covariance-aware řízení.
  • Předikce a latence: poskytovat predikovaný stav k času aktuátoru, exponovat časové značky a zpoždění do autopilota.
  • Fail-safe: přepnutí na IMU-only INS se zero-velocity updates při přistání, hover-hold s barometrickou výškou, spouštět RTH při divergenci lokalizace.

Kooperativní VIN pro roje a multi-UAV

V roji je výhodné sdílet informace:

  • Distribuovaný pose-graph: každý UAV udržuje lokální mapu a výměnou keyframe deskriptorů hledá mezi-agentové smyčky.
  • UWB/relativní ranging: faktory vzdáleností/DOA mezi UAV doplňují vizuální omezení při vzájemné viditelnosti.
  • Komunikační omezení: komprimované deskriptory, gossip protokoly, covisibility-guided výměna; konflikt s latencí řízení řešit prioritizací lokální smyčky.

Energetika a hardwarový design

  • Spotřeba: kamera 0,5–2 W, IMU < 0,2 W, výpočet 2–8 W podle SoC. Zohlednit chlazení a EMI z motorů/regulátorů.
  • Umístění senzorů: IMU blízko těžiště, kamery s minim