update GPS-denied onboard research docs

This commit is contained in:
Oleksandr Bezdieniezhnykh
2026-04-29 17:03:57 +03:00
parent 8fcdbd4cf6
commit af5eb13ecb
22 changed files with 1938 additions and 6 deletions
+244
View File
@@ -0,0 +1,244 @@
# Fact Cards
## Fact #1
- **Statement**: ArduPilot MAVProxy GPSInput requires `GPS1_TYPE=14` to accept MAVLink GPS input.
- **Source**: Source #1
- **Phase**: Phase 2
- **Target Audience**: ArduPilot v1 integration
- **Confidence**: High
- **Related Dimension**: Flight-controller output
- **Fit Impact**: Supports `GPS_INPUT` v1 selection
## Fact #2
- **Statement**: MAVLink `GPS_INPUT` is a raw GPS sensor input message, not the global position estimate of the system.
- **Source**: Source #2
- **Phase**: Phase 2
- **Target Audience**: MAVLink integrators
- **Confidence**: High
- **Related Dimension**: Output semantics and covariance
- **Fit Impact**: Requires careful accuracy/covariance fields and FC EKF configuration
## Fact #3
- **Statement**: ArduPilot issue #30076 documented EKF3 instability when external navigation and GPS were fused unexpectedly; the issue is version-specific and marked closed, but it proves the risk class is real.
- **Source**: Source #3
- **Phase**: Phase 2
- **Target Audience**: ArduPilot v1/v1.1 release planning
- **Confidence**: Medium
- **Related Dimension**: Autopilot source fusion
- **Fit Impact**: Supports GPS_INPUT-only v1 and SITL gate before ODOMETRY
## Fact #4
- **Statement**: Jetson Orin Nano Super officially provides 67 sparse TOPS, 8 GB LPDDR5, 102 GB/s memory bandwidth, and a 25 W mode.
- **Source**: Source #4
- **Phase**: Phase 2
- **Target Audience**: Onboard runtime sizing
- **Confidence**: High
- **Related Dimension**: Hardware envelope
- **Fit Impact**: Supports feasibility, but memory/thermal profiling remains mandatory
## Fact #5
- **Statement**: NVIDIA reports TensorRT FP16 ViT benchmark rates on Orin Nano 8 GB Super Mode, including DINOv2-base-patch14 around 126 FPS in the published table.
- **Source**: Source #5
- **Phase**: Phase 2
- **Target Audience**: VPR runtime planning
- **Confidence**: Medium
- **Related Dimension**: VPR model feasibility
- **Fit Impact**: Supports conditional DINOv2 VPR, not per-frame full pipeline guarantee
## Fact #6
- **Statement**: A TensorRT issue report measured DINOv2-S on Jetson Orin at roughly 22-23 ms GPU compute with limited INT8 speedup.
- **Source**: Source #19
- **Phase**: Phase 2
- **Target Audience**: Jetson VPR deployment
- **Confidence**: Medium
- **Related Dimension**: Model optimization risk
- **Fit Impact**: Requires project benchmark; INT8 speedup must not be assumed
## Fact #7
- **Statement**: NVIDIA cuVSLAM is a GPU-accelerated stereo-visual-inertial SLAM and odometry library; it can use IMU fallback but is designed around stereo camera input.
- **Source**: Source #6
- **Phase**: Phase 2
- **Target Audience**: VO/VIO component selection
- **Confidence**: High
- **Related Dimension**: Required camera inputs
- **Fit Impact**: Reject as lead v1 VO for a single fixed monocular nav camera
## Fact #8
- **Statement**: ORB-SLAM3 and VINS-Fusion support monocular-inertial modes, but both are GPL-family licensed.
- **Source**: Source #7, Source #8
- **Phase**: Phase 2
- **Target Audience**: Product dependency selection
- **Confidence**: High
- **Related Dimension**: Licensing and integration
- **Fit Impact**: Experimental/reference only unless legal approval is obtained
## Fact #9
- **Statement**: A 2024 fixed-wing UAV study used satellite imagery to reduce visual odometry accumulated error over missions above 1000 m and over 17 km.
- **Source**: Source #12
- **Phase**: Phase 2
- **Target Audience**: Architecture feasibility
- **Confidence**: High
- **Related Dimension**: Satellite-aided VO
- **Fit Impact**: Supports hybrid VO + satellite anchor architecture
## Fact #10
- **Statement**: Recent UAV-to-satellite cross-view localization research targets source-domain appearance differences and similar-scene interference, confirming these are core risks.
- **Source**: Source #13
- **Phase**: Phase 2
- **Target Audience**: Cross-view matching design
- **Confidence**: High
- **Related Dimension**: False-match risk
- **Fit Impact**: Requires top-K VPR, local geometric verification, covariance gating, and stale-tile controls
## Fact #11
- **Statement**: Airbus Pléiades Neo advertises native 30 cm imagery and 3.5 m CE90 location accuracy.
- **Source**: Source #14
- **Phase**: Phase 2
- **Target Audience**: Satellite Service SLA
- **Confidence**: High
- **Related Dimension**: Reference imagery resolution
- **Fit Impact**: Supports 0.3 m/px ideal cache target
## Fact #12
- **Statement**: Vantor/Maxar states its constellation provides 30 cm-class imagery and native <5 m CE90 accuracy.
- **Source**: Source #15
- **Phase**: Phase 2
- **Target Audience**: Satellite Service SLA
- **Confidence**: High
- **Related Dimension**: Reference imagery resolution
- **Fit Impact**: Supports 0.3 m/px ideal cache target
## Fact #13
- **Statement**: OpenStreetMap zoom-level math gives meters-per-pixel at the equator and requires multiplying by cosine(latitude); zoom alone does not define physical pixel size.
- **Source**: Source #16
- **Phase**: Phase 2
- **Target Audience**: Cache engineering
- **Confidence**: High
- **Related Dimension**: Tile resolution convention
- **Fit Impact**: Supports explicit pixel-size cache contract
## Fact #14
- **Statement**: FastAPI automatically exposes interactive API docs and an OpenAPI schema.
- **Source**: Source #17
- **Phase**: Phase 2
- **Target Audience**: Local API design
- **Confidence**: High
- **Related Dimension**: OpenAPI documentation
- **Fit Impact**: Supports Python/FastAPI for local health/session/object API
## Fact #15
- **Statement**: FAISS GPU packages should not be assumed on Jetson ARM64; CPU FAISS or source-built GPU FAISS must be validated.
- **Source**: Source #11
- **Phase**: Phase 2
- **Target Audience**: VPR index deployment
- **Confidence**: Medium
- **Related Dimension**: Index runtime
- **Fit Impact**: Select CPU FAISS/HNSW-flat as v1 baseline; GPU FAISS is optimization only
## Fact #16
- **Statement**: COG is a standard GeoTIFF profile useful for geospatial processing, while MBTiles-style SQLite tile packages are better aligned with local offline tile lookup.
- **Source**: Source #18 plus offline cache search
- **Phase**: Phase 2
- **Target Audience**: Cache storage
- **Confidence**: Medium
- **Related Dimension**: Cache format
- **Fit Impact**: Select COG/GeoTIFF for Satellite Service exchange and SQLite/MBTiles-like package for onboard lookup/index sidecars
## Fact #17
- **Statement**: Official Magic Leap SuperPoint pretrained weights are restricted to academic or non-profit noncommercial research use.
- **Source**: Source #20
- **Phase**: Mode B Assessment
- **Target Audience**: Product dependency selection
- **Confidence**: High
- **Related Dimension**: Local matcher licensing
- **Fit Impact**: Reject official SuperPoint weights as a v1 product dependency unless a commercial license is obtained
## Fact #18
- **Statement**: LightGlue's Apache-2.0 license does not automatically license upstream feature extractors; extractor weights must be reviewed separately.
- **Source**: Source #21
- **Phase**: Mode B Assessment
- **Target Audience**: Product dependency selection
- **Confidence**: High
- **Related Dimension**: Local matcher licensing
- **Fit Impact**: Select LightGlue only behind a license-cleared extractor interface
## Fact #19
- **Statement**: AnyLoc DINOv2 VLAD examples produce 49,152-dimensional descriptors, so a large multi-scale VPR gallery can become a memory/storage problem if descriptors are stored uncompressed.
- **Source**: Source #22
- **Phase**: Mode B Assessment
- **Target Audience**: VPR/cache developers
- **Confidence**: High
- **Related Dimension**: VPR descriptor footprint
- **Fit Impact**: Requires PCA/quantization or smaller descriptors before the approach can satisfy the 8 GB memory and 10 GB cache budgets
## Fact #20
- **Statement**: NVIDIA describes cuVSLAM as stereo-visual-inertial SLAM/odometry and documents IMU-only degraded tracking as suitable only for short intervals around one second.
- **Source**: Source #23
- **Phase**: Mode B Assessment
- **Target Audience**: VO/VIO component selection
- **Confidence**: High
- **Related Dimension**: Required camera inputs and fallback duration
- **Fit Impact**: Keep cuVSLAM rejected as a v1 lead dependency for the fixed monocular navigation camera, but keep it as a Jetson benchmark/reference if hardware changes
## Fact #21
- **Statement**: COG supports tiled storage, overviews, and multiple compression profiles, but the docs do not define a universal bytes-per-pixel budget for 0.3 m satellite imagery.
- **Source**: Source #24
- **Phase**: Mode B Assessment
- **Target Audience**: Cache engineers
- **Confidence**: High
- **Related Dimension**: Satellite cache storage
- **Fit Impact**: Treat the 10 GB cache as a measured acceptance gate, not as proven by zoom-level math
## Fact #22
- **Statement**: AerialVL provides public aerial localization trajectories with RGB imagery, GNSS, and satellite reference patches, but it is only a partial match for the fixed-wing/ArduPilot/IMU deployment target.
- **Source**: Source #25
- **Phase**: Mode B Assessment
- **Target Audience**: Validation planning
- **Confidence**: Medium
- **Related Dimension**: Dataset realism
- **Fit Impact**: Use public datasets for early VPR and cross-view benchmarks, but require SITL or real FC IMU traces for final fusion validation
## Fact #23
- **Statement**: UAV-VisLoc provides UAV images, satellite maps, and metadata such as coordinates, altitude, heading, and capture date, but does not replace the need for project-specific IMU/camera timing traces.
- **Source**: Source #26
- **Phase**: Mode B Assessment
- **Target Audience**: Validation planning
- **Confidence**: Medium
- **Related Dimension**: Dataset realism
- **Fit Impact**: Add dataset adapters for retrieval/localization tests while keeping final acceptance tied to project replay and ArduPilot SITL
## Fact #24
- **Statement**: LightGlue supports ALIKED, DISK, SIFT, and other extractors, so the local matcher can name concrete license-cleared candidates instead of an abstract "license-cleared extractor."
- **Source**: Source #27
- **Phase**: Mode B Round 2
- **Target Audience**: Local matcher productization
- **Confidence**: High
- **Related Dimension**: Local feature selection
- **Fit Impact**: Select ALIKED + LightGlue and OpenCV SIFT/AKAZE as concrete v1 candidates; keep SuperPoint rejected unless licensed
## Fact #25
- **Statement**: DeDoDe is MIT-licensed and has ONNX/TensorRT deployment ports, making it a plausible learned-feature fallback, but its model size and DINOv2-related variants still require Jetson validation.
- **Source**: Source #28
- **Phase**: Mode B Round 2
- **Target Audience**: Local matcher productization
- **Confidence**: Medium
- **Related Dimension**: Local feature selection
- **Fit Impact**: Mark DeDoDe as experimental fallback until runtime and cross-domain accuracy are measured
## Fact #26
- **Statement**: SIFT is available in OpenCV's main features2d module after patent expiration, supporting its use as a commercial-safe classical baseline.
- **Source**: Source #29
- **Phase**: Mode B Round 2
- **Target Audience**: Local matcher productization
- **Confidence**: High
- **Related Dimension**: Classical matching baseline
- **Fit Impact**: Select OpenCV SIFT/AKAZE as the legal baseline for local geometric verification and regression tests
## Fact #27
- **Statement**: With 3 Hz camera input and <400 ms p95 output latency, a FIFO frame queue can violate latency even when every component is individually fast enough.
- **Source**: Derived from AC-4.1 and AC-4.4 timing constraints
- **Phase**: Mode B Round 2
- **Target Audience**: Real-time pipeline design
- **Confidence**: High
- **Related Dimension**: Runtime scheduling
- **Fit Impact**: Add a bounded latest-frame scheduler and explicit drop/backpressure policy to the architecture