Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

✅Author Introduction: A Matlab simulation developer passionate about research, improving both mindset and technology. For code acquisition, paper reproduction, and research simulation collaboration, feel free to contact.

🍎Personal Homepage: Matlab Research Studio

🍊Personal Motto: Seek knowledge through investigation.

For more complete Matlab codes and simulation customization, click below 👇

Intelligent Optimization Algorithms Neural Network Prediction Radar Communication Wireless Sensors Power Systems

Signal Processing Image Processing Path Planning Cellular Automata Unmanned Aerial Vehicles

🔥 Content Introduction

1 Generate waveforms for training

Generate 10,000 frames for each modulation type, with 80% for training, 10% for validation, and 10% for testing. We use training and validation frames during the network training phase. The final classification accuracy is obtained using the test frames. Each frame has a length of 1024 samples, with a sampling rate of 200 kHz. For digital modulation types, eight samples represent one symbol. The network makes each decision based on a single frame rather than multiple continuous frames (like video). Assume the center frequencies for digital and analog modulation types are 900 MHz and 100 MHz, respectively.

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

1.2 Waveform Generation

Create a loop that generates frames with channel fading for each modulation type and stores these frames along with their corresponding labels in frameStore. Remove a random number of samples from the beginning of each frame to eliminate transients and ensure that the frames have random starting points relative to the symbol boundaries.

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

Modulation Classification Using Deep Learning – Testing with SDR

Use the sdrTest function to test the performance of the trained network through wireless signals. To perform this test, you must have two ADALM-PLUTO radios and the Communications Toolbox Support Package for ADALM-PLUTO Radio. sdrTest uses the same modulation functions as those used when generating training signals and transmits using the ADALM-PLUTO radio. Capture the channel-degraded signal with another ADALM-PLUTO radio without simulating the channel. Use the trained network and the same classify function to predict the modulation type. The network achieves an overall accuracy of 99%, with the two radios fixed approximately 2 feet apart.

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

📣 Code Snippet

function modulator = getModulator(modType, sps, fs)%getModulator Modulation function selector%   MOD = getModulator(TYPE,SPS,FS) returns the modulator function handle%   MOD based on TYPE. SPS is the number of samples per symbol and FS is%   the sample rate.
switch modType  case "BPSK"    modulator = @(x)bpskModulator(x,sps);  case "QPSK"    modulator = @(x)qpskModulator(x,sps);  case "8PSK"    modulator = @(x)psk8Modulator(x,sps);  case "16QAM"    modulator = @(x)qam16Modulator(x,sps);  case "64QAM"    modulator = @(x)qam64Modulator(x,sps);  case "GFSK"    modulator = @(x)gfskModulator(x,sps);  case "CPFSK"    modulator = @(x)cpfskModulator(x,sps);  case "PAM4"    modulator = @(x)pam4Modulator(x,sps);  case "B-FM"    modulator = @(x)bfmModulator(x, fs);  case "DSB-AM"    modulator = @(x)dsbamModulator(x, fs);  case "SSB-AM"    modulator = @(x)ssbamModulator(x, fs);endend
function src = getSource(modType, sps, spf, fs)%getSource Source selector for modulation types%    SRC = getSource(TYPE,SPS,SPF,FS) returns the data source%    for the modulation type TYPE, with the number of samples%    per symbol SPS, the number of samples per frame SPF, and%    the sampling frequency FS.
switch modType  case {"BPSK","GFSK","CPFSK"}    M = 2;    src = @()randi([0 M-1],spf/sps,1);  case {"QPSK","PAM4"}    M = 4;    src = @()randi([0 M-1],spf/sps,1);  case "8PSK"    M = 8;    src = @()randi([0 M-1],spf/sps,1);  case "16QAM"    M = 16;    src = @()randi([0 M-1],spf/sps,1);  case "64QAM"    M = 64;    src = @()randi([0 M-1],spf/sps,1);  case {"B-FM","DSB-AM","SSB-AM"}    src = @()getAudio(spf,fs);endend

⛳️ Run Results

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

Signal Modulation Recognition Based on Deep Learning CNN with MATLAB Code

🔗 References

O’Shea, T. J., J. Corgan, and T. C. Clancy. “Convolutional Radio Modulation Recognition Networks.” Preprint, submitted June 10, 2016. https://arxiv.org/abs/1602.04105

O’Shea, T. J., T. Roy, and T. C. Clancy. “Over-the-Air Deep Learning Based Radio Signal Classification.” IEEE Journal of Selected Topics in Signal Processing. Vol. 12, Number 1, 2018, pp. 168–179.

Liu, X., D. Yang, and A. E. Gamal. “Deep Neural Network Architectures for Modulation Classification.” Preprint, submitted January 5, 2018. https://arxiv.org/abs/1712.00443v3

🎈 Part of the theoretical references are from network literature. If there is any infringement, please contact the author for deletion.
🎁 Follow me to receive a wealth of Matlab e-books and mathematical modeling materials.

👇 Private message for complete code and data acquisition, as well as customized simulation of papers and models.

1 Various intelligent optimization algorithm improvements and applications

Production scheduling, economic scheduling, assembly line scheduling, charging optimization, workshop scheduling, bus departure optimization, reservoir scheduling, three-dimensional packing, logistics site selection, cargo location optimization, public transport scheduling optimization, charging station layout optimization, workshop layout optimization, container ship loading optimization, pump combination optimization, medical resource allocation optimization, facility layout optimization, visual domain base station and drone site selection optimization, backpack problem, wind farm layout, time slot allocation optimization, optimal distributed generation unit allocation, multi-stage pipeline maintenance, factory-center-demand point three-level site selection problem, emergency life material distribution center site selection, base station site selection, road lamp pole layout, hub node deployment, transmission line typhoon monitoring device, container ship loading optimization, unit optimization, investment portfolio optimization, cloud server combination optimization, antenna linear array distribution optimization.

2 Machine learning and deep learning aspects

2.1 BP time series, regression prediction and classification

2.2 ENS voice neural network time series, regression prediction and classification

2.3 SVM/CNN-SVM/LSSVM/RVM support vector machine series time series, regression prediction and classification

2.4 CNN/TCN convolutional neural network series time series, regression prediction and classification

2.5 ELM/KELM/RELM/DELM extreme learning machine series time series, regression prediction and classification
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU gated neural networks time series, regression prediction and classification

2.7 ELMAN recurrent neural network time series, regression prediction and classification

2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM long short-term memory neural network series time series, regression prediction and classification

2.9 RBF radial basis neural network time series, regression prediction and classification

2.10 DBN deep belief network time series, regression prediction and classification
2.11 FNN fuzzy neural network time series, regression prediction
2.12 RF random forest time series, regression prediction and classification
2.13 BLS broad learning time series, regression prediction and classification
2.14 PNN pulse neural network classification
2.15 Fuzzy wavelet neural network prediction and classification
2.16 Time series, regression prediction and classification
2.17 Time series, regression prediction and classification
2.18 XGBOOST ensemble learning time series, regression prediction and classification
Directions cover wind power prediction, photovoltaic prediction, battery life prediction, radiation source identification, traffic flow prediction, load prediction, stock price prediction, PM2.5 concentration prediction, battery health state prediction, electricity consumption prediction, water body optical parameter inversion, NLOS signal identification, subway stopping precise prediction, transformer fault diagnosis.

2 Image processing aspects

Image recognition, image segmentation, image detection, image hiding, image registration, image stitching, image fusion, image enhancement, image compressed sensing.

3 Path planning aspects

Traveling salesman problem (TSP), vehicle routing problem (VRP, MVRP, CVRP, VRPTW, etc.), drone 3D path planning, drone collaboration, drone formation, robot path planning, grid map path planning, multimodal transport problem, electric vehicle routing problem (EVRP), two-layer vehicle routing problem (2E-VRP), hybrid vehicle routing problem, ship track planning, full path planning, warehouse patrol.

4 UAV application aspects

UAV path planning, UAV control, UAV formation, UAV collaboration, UAV task allocation, UAV secure communication trajectory online optimization, vehicle collaborative UAV path planning.

5 Wireless sensor positioning and layout aspects

Sensor deployment optimization, communication protocol optimization, routing optimization, target location optimization, Dv-Hop positioning optimization, Leach protocol optimization, WSN coverage optimization, multicast optimization, RSSI positioning optimization.

6 Signal processing aspects

Signal recognition, signal encryption, signal denoising, signal enhancement, radar signal processing, signal watermark embedding and extraction, electromyography signals, electroencephalography signals, signal timing optimization.

7 Power system aspects

Microgrid optimization, reactive power optimization, distribution network reconstruction, energy storage configuration, orderly charging.

8 Cellular automata aspects

Traffic flow, crowd evacuation, virus spread, crystal growth, metal corrosion.

9 Radar aspects

Kalman filter tracking, track association, track fusion.

Leave a Comment

×