# 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