Final project for "Deep Learning for Acoustic Signal Processing".
This is a C++ application capable of training neural networks able to recognize sustained vowels.
The signal is acquired through the microphone and the user can:
- Stream the audio and see the waveform and spectrum in real time
- Record a short clip and analyze its waveform and spectrogram
- Record samples to be used for training the neural network
- Use the neural network to recognize vowels
The application includes:
- A custom GUI module based on OpenGL
- FFT and IFFT utilities
- An event system
- A neural network training algorithm based on gradient descent and genetic algorithms