DeepSig RadioML 2018.01A 处理为单信噪比单调制数据

原数据下载网址:RF Datasets For Machine Learning | DeepSig

 

该数据集包含24种调制样式:'OOK', '4ASK', '8ASK', 'BPSK', 'QPSK', '8PSK', '16PSK', '32PSK', '16APSK', '32APSK', '64APSK', '128APSK', '16QAM', '32QAM', '64QAM', '128QAM', '256QAM', 'AM-SSB-WC', 'AM-SSB-SC', 'AM-DSB-WC', 'AM-DSB-SC','FM', 'GMSK', 'OQPSK'

信噪比范围:SNR = -20:2:30

每个调制,每个信噪比有4096条数据,共计2555904条数据,IQ数据,数据格式为(1024, 2)

数据集参数详见论文:

Over-the-Air Deep Learning Based Radio Signal Classification | IEEE Journals & Magazine | IEEE Xplore

我在做调制识别的时候,用到了该数据集。首先该数据集进行拆分,再按照自己的任务需求进行拼接。在此,分享我的拆分程序,大家运行该程序后即可获得单信噪比单调制样式的信号数据集。

拆分程序:

# -*- coding: utf-8 -*-
"""
Created on Fri Jun  4 12:42:09 2021

@author: Fuxue
"""

import h5py

h5file = h5py.File('GOLD_XYZ_OSC.0001_1024.hdf5', 'r+')

X = h5file['X'][:]

Y = h5file['Y'][:]

Z = h5file['Z'][:] 

import numpy as np
import scipy.io as io

X_array = np.array(X) #IQ
Y_array = np.array(Y) #mod
Z_array = np.array(Z) #SNR

mod = ['OOK', '4ASK', '8ASK', 'BPSK', 'QPSK', '8PSK', '16PSK', '32PSK', '16APSK', '32APSK', '64APSK', '128APSK', '16QAM',  '32QAM', '64QAM', '128QAM', '256QAM', 'AM-SSB-WC', 'AM-SSB-SC', 'AM-DSB-WC', 'AM-DSB-SC','FM', 'GMSK', 'OQPSK']
snr  = range(-20,31,2)
n = 0
for i in range(0,24,1):
    for j in range(0,26,1): 
        IQ = X_array[n*4096:(n+1)*4096,:,:]
        path = mod[i]+"_SNR="+str(snr[j])+"dB.mat"
        io.savemat(path,{'name': IQ})
        n = n + 1

print('ending')

最终得到一系列.mat文件:

DeepSig RadioML 2018.01A 处理为单信噪比单调制数据_第1张图片

若该经验帖对您有用,请您引用我的论文,谢谢,祝各位学业顺利~

[1] X. Fu, G. Gui, Y. Wang, et al., "Lightweight Automatic Modulation Classification Based on Decentralized Learning," in IEEE Transactions on Cognitive Communications and Networking, vol. 8, no. 1, pp. 57-70, March 2022, doi: 10.1109/TCCN.2021.3089178.

[2] X. Fu, G. Gui, Y. Wang, H. Gacanin and F. Adachi, "Automatic Modulation Classification Based on Decentralized Learning and Ensemble Learning," in IEEE Transactions on Vehicular Technology, doi: 10.1109/TVT.2022.3164935.

你可能感兴趣的:(经验分享)