Skip to content

System Overview

Thorkee edited this page Apr 14, 2025 · 2 revisions

System Overview

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.

Key Components

The system consists of the following key components:

  1. React Frontend: Modern web interface for user interaction
  2. Express.js Backend: API server handling requests and file processing
  3. Redis Queue: Job queue for processing large files asynchronously
  4. AI Service: Integration with Azure OpenAI for enhanced data processing
  5. Storage Service: File storage for raw and processed data
  6. Processing Engine: Core logic for data conversion and fusion

Current Implementation Status

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 ⚠️ 5% Basic infrastructure only

AI-Assisted Conversion Architecture

The system uses a robust three-stage LLM (Large Language Model) pipeline for data processing:

  1. Format Conversion (First LLM): Converts raw data to JSONL format
  2. Location Extraction (Second LLM): Extracts location data from converted JSONL
  3. 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.

System Architecture Diagram

┌─────────────────┐          ┌─────────────────┐          ┌─────────────────┐
│                 │          │                 │          │                 │
│  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   │
└─────────────────┘          └─────────────────┘          └─────────────────┘

For More Information

Clone this wiki locally