Prehľad: prečo spájať GNSS/RTK a vizuálnu odometriu
Centimetrová poloha a stabilná orientácia za letu sú základom pre katastrálne mapovanie, presné postrekovanie, inspekcie či autonómne pristátia. GNSS/RTK prináša absolútnu georeferenciu vo svete (WGS84/ECEF/ENU) a vizuálna odometria (VO/VIO) poskytuje husté, rýchle a robustné relatívne zmeny polohy a orientácie aj v prostrediach s oslabeným satelitným signálom. Fúzia oboch svetov v správnej architektúre dáva cm-level presnosť s odolnosťou voči výpadkom jedného zdroja.
Základné pojmy a cieľový stav presnosti
- GNSS – globálny satelitný systém (GPS, Galileo, GLONASS, BeiDou) poskytuje pseudovzdialenosti a fázy nosnej vlny.
- RTK – diferenciálna technika s korekciami z bázy (NTRIP/rádio), ktorá rieši integer ambiguity nosnej fázy a redukuje chyby atmosféry a hodin.
- VO/VIO – vizuálna (mono/stereo) alebo vizuálno-inertná odometria, ktorá odhaduje SE(3) transformácie medzi rámami z obrazu a IMU.
Cieľ: absolútna poloha v ENU s 1–3 cm (horizontálne) a 3–5 cm (vertikálne) pri 20–100 Hz odhade stavu a schopnosť prežiť krátkodobé výpadky RTK či degradovanú textúru v obraze.
Architektúry fúzie: voľné vs. tesné prepojenie
- Voľne (loosely) prepojené: RTK riešenie poskytuje pose + kovarianciu do fúzora (napr. rozšírený Kalmanov filter – EKF); VO/VIO dodáva relatívnu rýchlosť/pose. Jednoduchšia integrácia, rýchle nasadenie.
- Tesne (tightly) prepojené: surové merania (pseudorange/carrier-phase, vizuálne features, inercia) idú do spoločného faktorového grafu (BA/Smoothing) alebo do UKF/EKF s nelineárnym meracím modelom. Vyššia presnosť a robustnosť, vyššia zložitosť.
Koordinačné rámce a transformácie
- WGS84/ECEF → ENU: RTK dáva lat/lon/h; pre lokalnú navigáciu transformujeme do ENU (East-North-Up) okolo „home“ referencie.
- Body, senzory, drak: definujte pevné rámce base_link (teleso dronu), imu_link, camera_link, gnss_antenna. Udržujte kalibrované extrinsics (posun/rotácia).
- Časovanie: synchronizácia PTP/GPS-PPS; časové oneskorenie kamery, IMU a GNSS modelujte ako stav (latency bias), ak je >2–3 ms.
GNSS/RTK: zdroje chýb a prevádzkové náležitosti
- Integer fix: stav FIX vs. FLOAT – sledujte AR pomer, vek korekcií (<2 s), baseline k báze (<20 km pre L1/L2).
- Multipath a tieňovanie: vyhnite sa odrazivým povrchom pri štarte/pristátí, použite anténu s nízkym multipath (geodetická, správny ground-plane).
- Galileo E5/E1 a GPS L2C/L5: multikonštelácia a viac frekvencií znižujú ionosférické chyby a zvyšujú fix ratio.
- NTRIP/rádio link: garantujte QoS; ak age of corrections prekročí limit, fúzujte RTK s nižšou vahou alebo prepnite na PPP/float.
Vizuálna odometria a VIO: voľba a limity
- Monokulárna VO: lacná, ale nepozorovateľná absolútna mierka bez IMU/známych rozmerov; vhodná len s kvalitnou IMU.
- Stereo VO: priamy odhad mierky, menej driftu; náročnejšia kalibrácia a mechanická stabilita baseline.
- VIO (IMU+mono/stereo): najlepší kompromis pre dynamiku letu; IMU preklenuje rozmazanie a nízku textúru.
- Nepriateľské stavy: rolling-shutter, vysoké vibrácie, prudké zmeny expozície, hmla/prášok, homogénna tráva/voda.
Stavový vektor a meracie modely v EKF/UKF
Typický stav: pozícia pENU, rýchlosť v, orientácia (kvaternion), biasy IMU (gyro/acc), škála (pri mono), časové oneskorenie senzorov, prípadne lever-arm GNSS anteny voči base_link.
- Procesný model: strapdown inercia (IMU), integrácia v 200–1 000 Hz s odhadom biasov a kovariancií Q podľa Allanových parametrov.
- Merací model GNSS: absolútna pozícia v ENU s kovarianciou z RTK riešenia; pri tesnom prepojení fázové rezíduá podľa satelitných geometrií.
- Merací model VO/VIO: relatívne transformácie alebo priamo reprojekčné chyby features do kamery; robustné straty (Huber/Cauchy) pre outliery.
Faktorové grafy a smoothing (tightly-coupled)
Optimalizácia cez nonlinear least squares nad časovo pospájanými uzlami (stavy) a faktormi (IMU pre-integrácia, GNSS, reprojekcie). Výhody: lepšie zvládanie nekonzistentností (smyčky, oneskorenia), presnejšia orientácia a mierka. Nevýhody: výpočtová náročnosť a citlivosť na inicializáciu.
Kalibrácia: kľúč k centimetrom
- Intrinsics kamery: matica, skreslenia (radial/tangential); kalibrujte pri pracovných clonách a expozíciách.
- Extrinsics: camera↔imu, imu↔base_link, gnss_antenna↔base_link. Sledujte teplotnú stabilitu a mechanické „creep“.
- Timestamps: validujte latenciu pomocou „shake testu“ (krátke impulzy a korelácia medzi osami gyro a obrazom).
Váženie a tunning kovariancií
- Adaptívne váhy: znižujte váhu VO pri rýchlych zmenách expozície alebo nízkom počte inlierov; znižujte váhu RTK pri FLOAT, vysokom PDOP alebo starých korekciách.
- Gateovanie: Mahalanobisovo gateovanie pre GNSS/VO merania, aby sa outliery nepropagovali do stavu.
- Consistency check: NEES/NIS testy a innovation monitoring v reálnom čase.
Redundancia a fail-safe správanie
- Kratkodobá strata RTK (tiene, tunely): držanie cez VIO+IMU; pri návrate na otvorené nebo spätné „snapnutie“ na ENU s jemným pose-graph zarovnaním, aby nevznikol skok.
- Degradovaný obraz: prepnite na IMU+RTK, znížte rýchlosť, zvýšte výšku, upravte expozíciu/ISO; pre mono použite zero-velocity update (ZUPT) pri visení.
- Monitor kvality: stavový automat (FIX/FLOAT/DGNSS/NO-RTK) a metriky VO (inliers, reprojection RMS, parallax) mapujte na letové režimy.
Integrácia s autopilotom (PX4/ArduPilot) a ROS 2
- MAVLink ODOM/VISION: publikujte ODOMETRY/VISION_POSITION_ESTIMATE s presnými kovarianciami; autopilot (EKF2/EKF3) prevezme fúziu s barometrom a magnetometrom.
- ROS 2 graf: uzly pre kameru/IMU (timestamp-exact), VIO (napr. VINS-Fusion, Basalt), GNSS/RTK klient (RTKLIB, u-blox driver), fúzor (robot_localization UKF/EKF alebo vlastný faktorový graf), diagnostics.
- Real-time: QoS best effort pre obraz, reliable pre stavové správy; pinning vlákien a DMA pre kamery.
Hardvér: senzory, výkon a montáž
- IMU: stredná trieda s nízkym šumom (≤0,005 °/s/√Hz gyro, ≤80 µg/√Hz acc), pevná montáž blízko ťažiska.
- Kamery: global-shutter pri vysokých dynamikách; stereo s pevnou mechanikou; ND filtre pre jasný deň.
- GNSS: geodetická anténa s ground-plane, nízkošumový prijímač, pevný lever-arm voči IMU.
- Počítač: SBC (napr. Jetson/NUC) s HW akceleráciou pre SLAM a kódovanie videa; vibrácie tlmiť (Moongel/TPU).
Testovanie a validácia
- Laboratórne: IMU Allanova dev., latencia kamery, reprojection error po kalibrácii (<0,3 px).
- Poliace testy: statická konvergencia RTK (CEP95), letové trajektórie 8-čiek, rýchle yaw/pitch impulzy, hovering 2–5 min.
- Metodika metrík: ATE/RPE proti RTK-ground-truth; horizontálna/vertikálna CEP50/95; percento času vo FIX; priemerný inlier-ratio VO.
- Datasety: vlastné „range runs“ s geodetickou tyčou a prizmatom; opakovateľnosť v rôznych svetelných podmienkach.
Praktické nastavenia a „guardrails“ pre cm presnosť
- Expozícia kamery: auto-exposure s pevnými limitmi (napr. 1/500–1/2000 s), aby sa minimalizoval motion-blur.
- IMU bias handling: teplotná mapovacia tabuľka alebo on-line odhad; po štarte 30–60 s státia pre inicializáciu.
- RTK politika: publikujte „quality flag“ do fúzora; pri prechode FIX→FLOAT lineárne znižujte váhu počas 1–3 s.
- Outlier rejection: RANSAC pre essential matrix/stereo match, 3σ gate pre GNSS, robustné straty (Huber 1,0–1,5 px).
Škálovanie do priemyslu: údržba a prevádzkové štandardy
- Verzionovanie kalibrácií: udržujte históriu intrinsics/extrinsics viazanú na konkrétny rám dronu a kameru/IMU.
- Monitor kvality: dashboard (FIX ratio, PDOP, inlier ratio, reproj RMSE, CPU/GPU load, teploty senzorov); alarmy.
- Predletová kontrola: check-list antény (čistota, konektor), optiky (čistota), time-sync (PPS lock), baseline k báze <= definovaný limit.
Bežné zlyhania a rýchle riešenia
- Skoky v polohe pri návrate RTK: aplikujte „pose alignment“ s mäkkým prechodom (blend v čase, nie instantný switch).
- Rozbiehanie mierky pri mono-VIO: upevnite mierku cez barometer/altimeter, známe značky (Apriltags), alebo periodické stereo triangulácie.
- Vysoký drift pri vetre: skontrolujte vibrácie (IMU clipping), znížte gainy expozície, zvýšte FPS.
- Slabý FIX: skontrolujte age of corrections, PDOP, masku elevácie satelitov, prepnite na viacfrekvenčný profil.
KPI a cieľové hodnoty pre cm-navigáciu
| Ukazovateľ | Cieľ | Poznámka |
|---|---|---|
| Horizontálna CEP95 | ≤ 3 cm | Let v otvorenom teréne, FIX > 85 % času |
| Vertikálna CEP95 | ≤ 5 cm | S fúziou baro/VO/RTK |
| FIX ratio | ≥ 85 % | NTRIP s nízkym vekom korekcií |
| VO inlier ratio | ≥ 60 % | Pri rýchlosti < 12 m/s |
| Reproj. RMS | ≤ 0,5 px | Po dobrej kalibrácii |
Implementačný plán 30–60–90 dní
- 0–30 dní: výber hardvéru (IMU/kamera/GNSS), kalibrácia, základná VIO pipeline, RTK klient, voľne prepojený EKF.
- 31–60 dní: adaptívne váženie, kvalitatívne flagy, robustné straty, testy v rôznych svetelných podmienkach, integrácia s autopilotom.
- 61–90 dní: prechod na tesne prepojenú fúziu (faktorový graf), on-line kalibrácia extrinsics/time-delay, KPI dashboard a prevádzkové SOP.
Centimetrová presnosť na dronoch nie je len o „dobrom RTK“ ani o „šikovnom SLAMe“. Kombinácia multikonštelačného RTK a stabilnej VIO, kalibrované transformácie, časová synchronizácia a adaptívna fúzia meraní vytvárajú systém, ktorý zvládne reálne prekážky – multipath, vietor, horšie svetlo – a pritom drží cm-úroveň v horizontále aj vo vertikále. S jasnými KPI, testovacou metodikou a prevádzkovými štandardmi sa z prototypu stáva spoľahlivá navigačná platforma pripravená pre produkciu.