Deep Learning Neural Network Signal Identification Software for the RTL-SDR
Recently GitHub user randaller released a piece of software that utilizes the RTL-SDR and neural networks for RF signal identification. An artificial neural network is an machine learning technique that is based on approximate computational models of neurons in a brain. By training the neural network on various samples of signals it can learn them just like a human brain could. A neural network trained on signal classification can then be used by anyone to identify unknown signals. Randallers neural network software can learn either from raw IQ data, FFT processed samples, slightly demodulated data, or demodulated audio data. The tensorflow machine learning library is used as the base code, and the deep learning technique is used.
At the moment the software is only really proof of concept, and the currently trained model is only able to identify WFM, TV SECAM Carriers and TETRA. It should be possible to train the network further by providing your own samples too, but a good graphics card is required for this as the software makes use of GPU processing for training. The output of the software is a percentage which shows how confident the neural network is that it is identifying a signal correctly.
If you are interested, there is also a Reddit thread discussing this software here.
Newest versions are at GitHub now: https://github.com/randaller/cnn-rtlsdr
Now it’s faster, smaller, and has more accuracy.
Randaller, you really, really should work with Marco (ARTEMIS, http://markslab.tk/project-artemis/) to develop a stand alone gui application (ideally with DDE to integrate with HDR, HDSDR etc.) to automatically identify digital modes in real time.
Hey, I’ve just took Stanford’s course example, that was adapted by one guy for image classification, and adapted it again, to signal classification. 🙂
Can you give a name of this Stanford’s course? I’m looking for good one on deep learning.
Appreciate the effort of developer put into it.