Repository navigation
System Overview
Thorkee edited this page Apr 14, 2025
·
2 revisions
FusionFly is an open-source toolkit for processing and fusing GNSS (Global Navigation Satellite System) and IMU (Inertial Measurement Unit) data with Factor Graph Optimization (FGO). The system provides a modern web interface for uploading, processing, visualizing, and downloading standardized navigation data.
The system consists of the following key components:
- React Frontend: Modern web interface for user interaction
- Express.js Backend: API server handling requests and file processing
- Redis Queue: Job queue for processing large files asynchronously
- AI Service: Integration with Azure OpenAI for enhanced data processing
- Storage Service: File storage for raw and processed data
- Processing Engine: Core logic for data conversion and fusion
Based on the latest codebase analysis:
| Component | Status | Details |
|---|---|---|
| Frontend UI | ✅ 90% | React app with file upload, progress tracking, and results display |
| Backend API | ✅ 85% | Express server with file handling, job queue integration |
| Data Processing | ✅ 75% | Basic format conversion, standardization pipeline |
| AI-Assisted Parsing | ✅ 80% | Three-stage LLM pipeline with validation and feedback mechanisms |
| Schema Conversion | ✅ 100% | Two-submodule approach fully implemented for the third LLM |
| GNSS+IMU Fusion | ❌ 0% | Not implemented, placeholder only |
| Visualization | ❌ 0% | Not implemented |
| Batch Processing | Basic infrastructure only |
The system uses a robust three-stage LLM (Large Language Model) pipeline for data processing:
- Format Conversion (First LLM): Converts raw data to JSONL format
- Location Extraction (Second LLM): Extracts location data from converted JSONL
- Schema Conversion (Third LLM): Converts location data to the target schema
The third LLM implements an enhanced two-submodule approach:
- Submodule 1: Direct sample conversion to schema format
- Submodule 2: Transformation script generation using examples from Submodule 1
Both submodules are fully implemented and integrated into the processing pipeline, with proper validation and error handling.
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ React Frontend │◄────────►│ Express Backend│◄────────►│ Redis Queue │
│ │ HTTP │ │ Jobs │ │
└────────┬────────┘ └────────┬────────┘ └────────┬────────┘
│ │ │
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ User Interface │ │ File Storage │ │ Data Processing│
│ - File Upload │ │ - Raw Files │ │ - Conversion │
│ - Visualization│ │ - Processed │ │ - FGO │
│ - Downloads │ │ - Results │ │ - Validation │
└─────────────────┘ └─────────────────┘ └─────────────────┘
- Architecture: Detailed system architecture
- Data Flow: End-to-end data processing flow
- AI Integration: Details of the AI-assisted processing pipeline
- Configuration: Configuration options and environment variables