Skip to content

atomuno/diplom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Сделал максимально подробный и «академичный» README.md, объединив твой прошлый опыт с новым функционалом (Wide Scan, HackRF Engine и Mega-Dataset). Теперь это не просто скрипт, а полноценный научно-технический проект.

Копируй этот текст в файл README.md в корне папки DIPLOM.


📡 RadioPulse AI: Комплекс автоматизированного радиомониторинга (v3.0)

Интеллектуальная система обнаружения и классификации радиоизлучений в реальном времени. Проект объединяет классическую цифровую обработку сигналов (DSP) и гибридные архитектуры нейронных сетей для идентификации 24 типов модуляции.


🏛 Архитектура решения

Проект реализует двухуровневый алгоритм анализа радиоэфира, что позволяет эффективно работать в широком диапазоне частот:

1. Уровень обнаружения (Detection Layer)

Использует модуль WideScanner для быстрого поиска активных сигналов:

  • Алгоритм: Быстрое преобразование Фурье (FFT) с окном Хэмминга.
  • Порог: Адаптивный энергетический порог ($SNR_{threshold} = 16$ dB).
  • Селективность: Минимальный частотный разнос пиков (150 кГц) для исключения дублирования широкополосных FM-станций.

2. Уровень классификации (Neural Engine)

Использует гибридную модель HybridRadioNet, работающую в двух доменах:

  • IQ-Polar Branch (1D): Глубокая ResNet-архитектура (Residual Blocks) обрабатывает амплитудно-фазовые характеристики. Преобразование в полярные координаты позволяет сети лучше выделять фазовые сдвиги (PSK/QAM).
  • Spectrogram Branch (2D): Сверточная ветка анализирует спектрограммы (STFT), выявляя визуальные паттерны распределения энергии в частотной области.
  • Fusion Layer: Слияние признаков (Feature Fusion) в вектор размерностью 1536 и классификация через полносвязную сеть с Dropout-регуляризацией.

🚀 Технические характеристики

  • Hardware: HackRF One (поддержка частот от 1 МГц до 6 ГГц).
  • Датасет: RadioML 2018.01 (GOLD_XYZ_OSC.0001) — 2.5 млн примеров.
  • Производительность: Полная поддержка ускорения Apple Silicon (MPS) и NVIDIA CUDA.
  • Точность: До 94%+ при высоком соотношении сигнал/шум.

📂 Структура проекта

Файл Описание
receiver.py Основной запуск. Цикл сканирования, управления HackRF и вывода данных.
train.py Скрипт обучения модели с использованием AdamW и Label Smoothing.
generator.py Препроцессор для создания сбалансированной обучающей выборки (10k/класс).
models/ Директория с весами нейросети (.pth) и описанием классов (.json).
v1/ Архив предыдущих версий и экспериментов.

🛠 Установка и развертывание

1. Системные зависимости

Для работы с железом HackRF на Mac или Linux:

# macOS
brew install hackrf

# Linux
sudo apt install hackrf

2. Python-окружение

pip install torch torchvision numpy scipy h5py tqdm matplotlib

3. Настройка данных

Поместите файл GOLD_XYZ_OSC.0001_1024.hdf5 в папку data/ и запустите генератор:

python generator.py

📈 Методы повышения стабильности (Stability)

В проекте реализованы механизмы фильтрации ложных срабатываний, критически важные для дипломной работы:

  • Мажоритарное голосование (Majority Voting): Для каждой частоты собирается 10 независимых выборок. Итоговое решение принимается только при совпадении >50% результатов.
  • Нормализация IQ-потока: Динамическая нормализация амплитуды и фазы перед подачей в сеть, что делает систему устойчивой к разным уровням входного усиления.
  • Label Smoothing (0.1): Техника сглаживания меток при обучении, предотвращающая чрезмерную «уверенность» модели в зашумленном эфире.

📋 Инструкция по эксплуатации

  1. Wide Scan: Проверьте scan_points в receiver.py (по умолчанию 93.0 и 103.0 МГц).
  2. Усиление: Настройте параметры -l (LNA) и -g (VGA) в коде под вашу антенну.
  3. Запуск:
python receiver.py

🎓 Научная новизна (для защиты)

Разработанный программный комплекс реализует кросс-доменный анализ радиосигналов. В отличие от классических методов, использующих только один вид представления данных, данная система одновременно анализирует мгновенные значения комплексной огибающей и спектрально-временную плотность мощности, что позволяет достичь высокой точности классификации даже в условиях городской многолучевой интерференции.


Удачной тренировки! Если завтра нужно будет подготовить таблицы с метриками или графики обучения (Loss/Accuracy) для вставки в пояснительную записку — дай знать, сделаем красиво.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages