Skip to content

Python based tool that generates synthetic RF IQ recordings + optional steganographic payloads embedded via LSB

License

Notifications You must be signed in to change notification settings

tegridydev/rf-stego-dataset

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rf-stego-dataset [tegridydev]

Python based tool that generates synthetic RF IQ recordings (.sigmf-data + .sigmf-meta) with optional steganographic payloads embedded via LSB.

It also produces spectrogram PNGs and a manifest (metadata.csv + metadata.jsonl.gz).

Key Features

  • Modulations: BPSK, QPSK, GFSK, 16-QAM (Gray), 8-PSK
  • Channel Impairments: AWGN, phase noise, IQ imbalance, Rician / Nakagami fading, frequency & phase offsets
  • Steganography: LSB embedding into the I‑component
  • Outputs: SigMF files, spectrogram images, CSV & gzipped JSONL manifests
  • Configurable: via config.yaml or interactive menu

Dataset Contents

Each clip folder contains:

  1. clip_<idx>_<uuid>.sigmf-data
  2. clip_<idx>_<uuid>.sigmf-meta
  3. clip_<idx>_<uuid>.png (spectrogram)

The manifest lists:

  • Dataset name, sample rate
  • Modulation, impairment parameters, SNR, frequency offset
  • Stego method used
  • File name, generation time, clip duration

Use Cases

  • Machine Learning: train modulation classification or stego detection models
  • Signal Processing: benchmark algorithms under controlled impairments
  • Security Research: study steganography in RF domains

Quick Start

  1. Clone repo: git clone https://github.com/tegridydev/rf-stego-dataset.git
  2. Install dependencies: pip install -r requirements.txt
  3. Edit config.yaml or run: python rf-gen.py and choose Show config / Change param
  4. Generate data: select Generate all clips

~~Enjoy <3

About

Python based tool that generates synthetic RF IQ recordings + optional steganographic payloads embedded via LSB

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages