mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-04-23 02:46:36 +00:00
update tests
This commit is contained in:
@@ -8,12 +8,14 @@ Validate Acceptance Criterion 5 (partial): "System should try to operate when UA
|
||||
|
||||
## Preconditions
|
||||
1. System with "Atlas" multi-map capability (factor graph with native chunk support)
|
||||
2. F12 Route Chunk Manager functional
|
||||
3. F10 Factor Graph Optimizer with multi-chunk support
|
||||
4. L2 global place recognition functional (chunk semantic matching)
|
||||
5. L3 metric refinement functional (chunk LiteSAM matching)
|
||||
6. Geodetic map-merging logic implemented (Sim(3) transform)
|
||||
7. Test dataset: Simulate 3 disconnected route fragments
|
||||
2. F02.2 Flight Processing Engine running
|
||||
3. F11 Failure Recovery Coordinator (chunk orchestration)
|
||||
4. F12 Route Chunk Manager functional (chunk lifecycle)
|
||||
5. F10 Factor Graph Optimizer with multi-chunk support (subgraph operations)
|
||||
6. F08 Global Place Recognition (chunk semantic matching via `retrieve_candidate_tiles_for_chunk()`)
|
||||
7. F09 Metric Refinement (chunk LiteSAM matching)
|
||||
8. Geodetic map-merging logic implemented (Sim(3) transform via F10.merge_chunk_subgraphs())
|
||||
9. Test dataset: Simulate 3 disconnected route fragments
|
||||
|
||||
## Test Description
|
||||
Test system's ability to handle completely disconnected route segments (no overlap between segments) and eventually connect them into a coherent trajectory using global GPS anchors.
|
||||
@@ -141,24 +143,24 @@ Processing Mode: Multi-Map Atlas
|
||||
## Architecture Elements
|
||||
|
||||
**Multi-Map "Atlas"** (per solution document):
|
||||
- Each disconnected segment gets own local map
|
||||
- Local maps independently optimized
|
||||
- GPS anchors provide global reference
|
||||
- Geodetic merging aligns all maps
|
||||
- Each disconnected segment gets own local map via F12.create_chunk()
|
||||
- Local maps independently optimized via F10.optimize_chunk()
|
||||
- GPS anchors provide global reference via F10.add_chunk_anchor()
|
||||
- Geodetic merging aligns all maps via F10.merge_chunk_subgraphs()
|
||||
|
||||
**Recovery Mechanisms**:
|
||||
- **Proactive chunk creation** on tracking loss (immediate, not reactive)
|
||||
- Chunk semantic matching (aggregate DINOv2) finds location for chunk
|
||||
- Chunk LiteSAM matching (with rotation sweeps) refines GPS anchor
|
||||
- Factor graph creates new chunk subgraph
|
||||
- Sim(3) transform merges chunks into global trajectory
|
||||
- **Proactive chunk creation** via F11.create_chunk_on_tracking_loss() (immediate, not reactive)
|
||||
- Chunk semantic matching via F08.retrieve_candidate_tiles_for_chunk() (aggregate DINOv2)
|
||||
- Chunk LiteSAM matching via F06.try_chunk_rotation_steps() + F09.align_chunk_to_satellite()
|
||||
- F10 creates new chunk subgraph
|
||||
- Sim(3) transform merges chunks via F12.merge_chunks() → F10.merge_chunk_subgraphs()
|
||||
|
||||
**Fragment Detection**:
|
||||
- Large displacement (> 500m) from last image
|
||||
- Low/zero overlap
|
||||
- Low/zero overlap (F07 VO fails)
|
||||
- L1 failure triggers **proactive** new chunk creation
|
||||
- Chunks processed independently with local optimization
|
||||
- Multiple chunks can exist simultaneously
|
||||
- Multiple chunks can exist simultaneously (F10 supports multi-chunk factor graph)
|
||||
|
||||
## Notes
|
||||
- AC-5 describes realistic operational scenario (multiple turns, disconnected segments)
|
||||
|
||||
Reference in New Issue
Block a user