Navigace bez GNSS: Robustní vizuálně-inerciální odometrie a autonomní nasazení

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

Autonomní létající systémy (UAV) jsou čím dál častěji nasazovány v interiérech, městských kaňonech, pod překážkami a tunelech, kde je globální navigace satelitními systémy (GNSS) nedostupná nebo výrazně degradována multipath efektem a stíněním. Vizuálně-inerciální navigace (VIN), respektive vizuálně-inerciální odometrie a SLAM (VIO/VINS), kombinuje kameru a inerciální měřící jednotku (IMU) tak, aby využila komplementární vlastnosti: kamera poskytuje informace o poloze z vizuálních znaků s minimálním driftem ve 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 agresivní manévry.

Senzorický balíček: kamera, IMU a doplňkové zdroje

  • Kamera: 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í zorné pole a snižují počet ztrát znaků.
  • IMU: 6D (3× gyroskop + 3× akcelerometr) s rozsahem ≥ 2000 °/s a ≥ 16 g pro akrobatické trajektorie. Důležité parametry: šum, Allanova odchylka, teplotní závislost a stabilita biasu.
  • Doplňky: barometr (výška), magnetometr (heading – s opatrností ve 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: intriziky, extrinziky, časování

Přesnost VIN stojí na kalibraci:

  • Intriziky kamery: ohnisková vzdálenost, střed obrazu, model zkreslení (radiální/tangenciální, případně unified omnidirectional pro fisheye).
  • Extriziky 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. Nesoulad > 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čty, mírný drift v dlouhém horizontu.
  • VINS (VI-SLAM): faktorový graf s loop closure a relokalizací; zachycuje globální omezení a výrazně snižuje 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 slučky.

Matematika pro integraci IMU: preintegrovaní, 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á preintegrovaní mezi klíčovými snímky:

  • Preintegrované přírůstky komprimují tisíce IMU vzorků do jednoho faktoru, který je invariantní vůči následné aktualizaci biasů (prvního řádu linearizace).
  • Modely biasů: náhodná procházka (random walk) s teplotně závislými drifty; online odhad biasů je nezbytný.
  • Šum: dán 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 filtrováním odlehlých hodnot (RANSAC).
  • Stereoskopie vs. mono: stereo poskytuje metriku ihned při inicializaci; mono vyžaduje bootstrap měřítka (viz níže). Fisheye stereo snižuje slepá místa.
  • 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) pro potlačení odlehlých hodnot a dynamických objektů.

Inicializace a měřítko: klíčový krok pro mono VIO

Mono VIO potřebuje určit metriku:

  • Visual-only bootstrap: odhad trajektorie a mapy s měřítkem + využití průměrné gravitační normy z IMU k určení měřítka.
  • Observabilita: pro citlivé oddělení gravitačního vektoru a akcelerace jsou potřeba 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, rychlosti, orientace, biasy, případně body) a řeší se nelineární úloha nejmenších čtverců:

  • 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é prior jsou třeba 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

  • Rozpoznávání místa: 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í akumulovaný drift; slučování map (map merge) pro opakované mise.
  • Životní cyklus mapy: komprese, selekce klíčových snímků, vyhazování starých prvků, submapy a vícestupň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 na diverzenci a failsafe režimy (držení polohy, RTH po trajektorii).

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

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

  • Pipeline: IMU fronta (1–2 kHz), vizuální fronta (30–60 Hz), fúze (200–400 Hz stavový filtr + 10–30 Hz okenní 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 řídicí smyčku předpovídat 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é ranging; faktory vzdáleností kotví měřítko 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ě vevnitř; v exteriéru poskytne heading, který se promítá jako prior/faktor s adaptivní váhou.

Multikamera, stereo a omnidirekce

Vícekamerové 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ý rozdíl 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 mí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), kovariace/informační matice pro covariance-aware řízení.
  • Předikce a latence: poskytovat předikovaný stav k času aktuátoru, vystavovat časové značky a zpoždění do autopilota.
  • Fail-safe: přepnutí na IMU-only INS s 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 rojích je výhodné sdílet informace:

  • Distribuovaný pose-graph: každý UAV udržuje lokální mapu a výměnou keyframe deskriptorů hledá meziagentní 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 dle SoC. Zohlednit chlazení a EMI z motorů/regulátorů.
  • Umístění senzorů: IMU blízko