0
$\begingroup$

I'm working on an audio dereverberation deep learning model, based on the U-net architecture. The idea of my project came from image denoising with autoencoders. I feed the reverberated spectrogram to the network, and the network should give me the cleaned version. I train the network with pairs of spectrograms, the clean version, and the reverberated version.

This is the link to one of the papers I'm following for this project: https://arxiv.org/pdf/1803.08243.pdf

My problem is, how to save spectrograms of audio data for the training. I have done two tests:

  1. I have saved spectrograms as RGB images, so they are 3D tensors, so exactly what a convolutional network wants in input from training. The trained model is then able to output a reconstructed version of the input spectrogram with less reverb. The problem with this solution is that, then I can't recover the audio from the cleaned spectrogram which is an RGB image.

  2. I have saved directly the spectrogram matrix with numpy.save(), and then reload with numpy.load(). With this solution I can obtain in output, directly the de-reverberated spectrogram matrix, which can be fed to the Griffin-lim algorithm to recover the audio (this because I consider just the magnitude of the spectrogram). The problem of this solution is that, I don't know if I can feed this 2D NumPy array (the stft matrix) directly to the convolutional network, or I need to do some kind of preprocessing.

$\endgroup$
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.