Skip to main content

Introduction

Spectrum Analyzer is a deep learning-based tool for detecting and classifying signals from spectrogram images. Built on the EMS-YOLO codebase, it provides a flexible framework for spectrum analysis with configurable parameters for different image sizes and use cases.

Repository: GitHub
Pre-trained Models: Google Drive

What is Spectrum Analyzer?

Spectrum Analyzer uses an enhanced YOLO (You Only Look Once) object detection framework to identify and classify various signal types in spectrogram images. The system is designed to be general-purpose, allowing users to configure it for different image sizes, model architectures, and detection scenarios.

Key Features

  • Multi-class Signal Detection: Detects and classifies multiple signal types simultaneously
  • Configurable Architecture: Support for different model backbones (ResNet-10, ResNet-18, ResNet-34)
  • Flexible Image Sizes: Configurable input image resolution (default: 512×512, configurable)
  • Time Window Processing: Temporal information integration using 5-frame time windows
  • High Precision: Achieves up to 100% precision at high confidence thresholds
  • Real-time Inference: Fast detection on spectrogram images
  • Model Quantization: Support for model quantization for deployment

Use Cases

Spectrum Analyzer can be used for:

  • Radar Signal Detection: Identifying various radar signal types in spectrograms
  • Communication Signal Analysis: Detecting and classifying communication signals
  • Spectrum Monitoring: Real-time spectrum analysis and signal detection
  • Research Applications: Custom signal detection tasks with configurable parameters

Demonstration: RadDet Dataset

This codebase has been demonstrated using the RadDet dataset, which contains 11 different radar signal types:

  • Rect, Barker, Frank, P1-P4, Px, ZadoffChu, LFM, FMCW

The model achieves:

  • mAP@0.5: 0.39
  • Precision: 0.39
  • Recall: 0.55-0.58
  • 100% precision at confidence threshold 0.932

Training Results

Architecture Overview

The system uses a modified YOLO architecture with:

  • Backbone: ResNet-based feature extractor (configurable)
  • Detection Head: Multi-scale YOLO detection layers
  • Time Window: 5-frame temporal processing
  • Output: Bounding boxes, confidence scores, and class predictions

Getting Started

To get started with Spectrum Analyzer:

  1. Install Dependencies: Follow the installation guide
  2. Configure Dataset: Set up your dataset configuration file
  3. Train or Use Pre-trained Model: Train on your data or use provided models
  4. Run Detection: Use the detection script for inference

For quick setup, see the Quick Start Guide. For detailed documentation keep following this guide and read through all the tabs.

Next Steps