I have a predicted mel log spectrogram $S$ and I want to add a noise signal $\eta$ to it.

S = log(mel-filterbank(abs/real part of(stft(signal)))

The naive way would be to approximate the linear spectrogram, add the noise signal and then apply the log mel transform again. However, it seems to me that this approximation adds unwanted artifacts which would not show up in a natural signal.

Is there a way to combine the signal without doing the approximation, given that I want the combined signal to be a mel log spectrogram too?


Except Logarithmic operation, other operations could be done on combined signal or separate signals both will give same result.

  • $STFT$($n$) $+$ $STFT$($S$) $=$ $STFT$($n$ $+$ $S$)

  • $mel$$(STFT$($n$) $+$ $STFT$($S$)) = $mel$($STFT$($n$ $+$ $S$)))

so just removing effect of logarithm and adding should do. though I am not sure that artifacts will go or not, but you need not do reverse Mel(I am assuming that mel filter banks central frequencies and bandwidths are same for both $S$ and $n$).


Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.