mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-04-27 16:46:36 +00:00
9eba1689b3
- Revised acceptance criteria in the acceptance_criteria.md file to clarify metrics and expectations, including updates to GPS accuracy and image processing quality. - Enhanced restrictions documentation to reflect operational parameters and constraints for UAV flights, including camera specifications and satellite imagery usage. - Added new research documents for acceptance criteria assessment and question decomposition to support ongoing project evaluation and decision-making.
7.7 KiB
7.7 KiB
Question Decomposition — AC & Restrictions Assessment
Mode: A (Initial Research) — Phase 1 (AC Assessment, BLOCKING) Domain: Onboard GPS-denied UAV navigation via downward-facing camera + satellite reference imagery + VO/IMU on Jetson Orin Nano Super. Question type: Multi-criterion feasibility + technology positioning + benchmark validation. High-novelty intersection (defense-grade UAV CV/SLAM + low-power edge inference + active-conflict region operational constraints), so timeliness is high — prefer 2023–2026 sources.
Project context (locked-in user answers)
| # | Item | Value |
|---|---|---|
| C1 | Fresh research run; ignore deleted prior artifacts | yes |
| C2 | Operational area per mission | 150 km² mission box + 50 km × 1 km corridor; ~10 GB satellite tile cache; persistent across flights |
| C3 | Flight envelope | Fixed-wing, 1 km AGL ceiling, ~60 km/h cruise, up to 8 h endurance, sunny weather, eastern/southern Ukraine |
| C4 | GCS | QGroundControl over MAVLink/MAVSDK |
| C5 | AI camera pose | Only gimbal angle + zoom (no airframe IMU fusion onto AI cam frame) |
| C6 | Latency budget | <400 ms p95 end-to-end; frame skipping allowed under load |
| C7 | IMU dev/test data | Use public UAV datasets — research and recommend |
| C8 | Onboard compute | Jetson Orin Nano Super (67 TOPS sparse INT8 / 33 TOPS dense, 8 GB shared LPDDR5, 25 W TDP) |
| C9 | Output channel | MAVLink GPS_INPUT to flight controller; telemetry to GCS for situational awareness |
Sub-questions (drives Phase 1 web research)
A. Position accuracy realism
- A1. Hybrid VO + satellite-anchored geolocalization accuracy on fixed-wing UAVs at ~1 km AGL — what's state-of-the-art (CIRCLE, AnyLoc, UAV-VisLoc benchmark, OpenIBL, AerialVL, GPS-denied papers 2023–2026)?
- A2. Are AC values "80% within 50 m, 60% within 20 m" achievable with non-stabilized monocular nadir camera + Google Maps tile reference?
- A3. Monocular VO drift rates (m per 100 m travelled) for aerial imagery — feasibility of <100 m cumulative drift between satellite anchors.
- A4. Confidence-score schemes for visual geolocalization (covariance, top-K retrieval similarity, photometric consistency).
B. Image registration & feature matching
- B1. Registration rate >95% for non-overlapping flight + viewpoint changes — SOTA matchers (LoFTR, LightGlue+SuperPoint, RoMa, OmniGlue, MASt3R, XFeat) on aerial-vs-satellite domain gap.
- B2. Mean Reprojection Error <1.0 px — typical for aerial homography vs full PnP at 1 km AGL?
- B3. Cross-modality matching (off-nadir aerial photo vs ortho satellite tile) — what works in 2024–2026 literature, what fails?
C. Resilience — sharp turns, off-nadir, re-localization
- C1. Place recognition / tile retrieval for re-localization after sharp turn (no overlap) — NetVLAD, AnyLoc, CosPlace, EigenPlaces, MixVPR.
- C2. Aerial pose recovery under up to 70° heading change and 350 m position outlier — practical pipelines.
- C3. Multi-segment trajectory stitching (disconnected SLAM sessions) — pose-graph relocalization via global descriptor + RANSAC.
D. Onboard real-time performance on Jetson Orin Nano Super
- D1. Memory & compute envelope of LightGlue / SuperPoint / LoFTR / RoMa / XFeat at 6200×4100 → typical downsampled resolution; can the matcher + VO run within ~400 ms on Jetson Orin Nano Super (67 TOPS sparse INT8)?
- D2. TensorRT-accelerated implementations available for the 2025-class matchers?
- D3. Hot-cache satellite tile lookup (precomputed descriptors) for ~10 GB tile budget — index size and lookup latency.
- D4. Concurrent VO + tile registration scheduling under 8 GB shared CPU/GPU memory.
- D5. Sustained-load thermal throttle threshold of Jetson Orin Nano Super (25 W mode) and effective duty cycle for 8-hour flight.
E. Satellite imagery — sourcing, freshness, legality, preprocessing
- E1. Google Maps satellite tile usage in defense / offline UAV context — terms-of-service status; alternatives.
- E2. Sub-meter-resolution providers (Maxar, Airbus Pleiades, Planet SkySat, Capella, ICEYE, Vexcel, Maxar Vivid) — pricing tiers, license for tactical reuse, freshness over Ukraine.
- E3. Free / open alternatives: Sentinel-2 (10 m), USGS, Mapbox, Bing — usable as fallback at 1 km AGL?
- E4. Pre-flight tile preprocessing (descriptor extraction, MBTiles packaging, persistent on-disk cache between flights) — best practice.
- E5. Imagery age — how stale before registration fails for active-conflict regions (Ukraine 2022+ rapid landscape change)?
F. Camera, optics, sensor model
- F1. 6252×4168 sensor at 1 km AGL — typical GSD per pixel for the implied focal lengths of fixed-down sUAS payloads.
- F2. Camera intrinsics calibration — pre-flight checkerboard vs factory cal vs self-calibration.
- F3. Rolling-shutter compensation for ~3 fps mid-altitude photogrammetry.
G. MAVLink / MAVSDK / flight controller integration
- G1. MAVLink GPS_INPUT message — fields, supported autopilots (PX4 vs ArduPilot vs Cube), expected rate, rejection criteria.
- G2. MAVSDK on Jetson Orin Nano Super (JetPack 6.x / Ubuntu 22.04) — versions, async IO patterns.
- G3. QGroundControl integration — re-localization request UI / NAMED_VALUE / STATUSTEXT / custom message conventions.
H. Object localization (AI camera)
- H1. Trigonometric ground point intersection accuracy under unknown airframe attitude (gimbal-angle-only) — error budget analysis at 1 km AGL.
- H2. Flat-terrain assumption error contribution over eastern/southern Ukraine (relief amplitude, riverbanks, urban areas).
- H3. Best-practice for graceful degradation when attitude is missing.
I. Hardware envelope, power, thermals
- I1. Jetson Orin Nano Super 25 W mode sustained load — 8-hour fixed-wing power budget (battery + solar?), cooling solutions for 25 W onboard.
- I2. Storage: persistent ~10 GB tile cache + flight logs on Jetson — recommended SSD/NVMe.
J. Failsafe & resilience
- J1. Reasonable failsafe timeout
Nfor "no estimate produced" before flight controller falls back to IMU-only — typical practitioner values. - J2. Companion computer reboot mid-flight — recovery patterns from PX4/ArduPilot field reports.
K. Public datasets for VO/IMU dev & test
- K1. Aerial UAV datasets with synchronized IMU + downward camera + GPS ground truth — list and assess (UAV-VisLoc, AerialVL, MidAir, EuRoC MAV, NPU Drone, USC, Senseable City Lab, AERIAL-D, GeoText, AmsterTime, VPAir, DenseUAV).
- K2. Are there datasets covering eastern European agriculture / mixed-terrain at altitudes 300–1000 m? If not, what's the closest analogue.
L. Acceptance criteria gaps (potential missing AC)
- L1. Operational temperature, vibration, shock — military/UAV environmental standards (MIL-STD-810, RTCA DO-160 lite).
- L2. Time-to-first-fix on cold-start (boot to first valid GPS_INPUT message).
- L3. Maximum tolerable spoofing detection latency (system promotes its own estimate over flight controller GPS) — security AC.
- L4. Logging / black-box requirement for post-mission forensics.
- L5. Safety AC: false-position rate budget (geolocation off by >X km) — dangerous for waypoint/RTL behavior.
M. Restriction soundness
- M1. Photo count "up to 3000 per flight" vs "8 hour flight × 3 fps" → 86,400 photos. Hard contradiction — needs user resolution.
- M2. Camera "FullHD to 6252×4168" — wide range; processing must accommodate worst case.
- M3. "Eastern/southern Ukraine, mostly sunny" — operational implications: shadow direction, season, vegetation cycle (seasonal mismatch with stale satellite imagery).
Output
Each sub-question feeds into:
01_source_registry.md— sources consulted and tier02_fact_cards.md— facts with citations- The Phase 1 deliverable:
00_ac_assessment.md(BLOCKING gate)