System Architecture

الطبقات المعمارية

  1. Presentation Layer: واجهات tkinter في App/main.py و App/main2.py.
  2. Orchestration Layer: تنسيق الـ Runtime، إدارة التشغيل المتوازي، وstate updates.
  3. Domain Layer:
    • Radar domain: waveform/channel/processing/detection.
    • Audio domain: preprocess/features/classifier/persistence/report.
    • Scenario domain: bundle + timeline parsing.
  4. Infrastructure Layer: logging، config loading، artifact paths.

مبررات التصميم

  • الفصل بين Radar وAudio وGUI يقلل coupling.
  • scenario_loader.py يعزل parsing والتوحيد normalization.
  • استخدام dataclasses يوفر contracts واضحة بين الوحدات.

Dependencies

  • TensorFlow/Keras للصوت.
  • PyTorch + YOLOv5 للرؤية.
  • NumPy/SciPy/Matplotlib/Librosa/OpenCV للإشارات والعرض.

Mermaid: علاقات الوحدات

graph TD
    A[App/main2.py] --> B[scenario_loader.py]
    A --> C[radar_sim.*]
    A --> D[audio.*]
    A --> E[yolov5 weights + torch.hub]

    C --> C1[waveform.py]
    C --> C2[channel.py]
    C --> C3[processing.py]
    C --> C4[detection.py]

    D --> D1[preprocess.py]
    D --> D2[features.py]
    D --> D3[classifier.py]
Built with LogoFlowershow