Fix: [Spectrogram] Resample spectrogram at Mel frequencies without ch… #3861
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This changes
melFilterBank
such that power spectra are correctly resampled.Short description
The way that
melFilterBank
is computed now, the Mel spectrogram is not calculated by linearly interpolating the linear spectrogram at nearby frequencies. Instead, it computes a weighted average where the sum of weights depends on the frequency. One consequence of this is that the Mel spectrogram of white noise does not appear to be white.Implementation details
The Mel spectrogram is now calculated by resampling and linearly interpolating the linear spectrogram.
Screenshots
Spectrogram of Gaussian white noise before:
Spectrogram of Gaussian white noise after:
melFilterBank
before:melFilterBank
after:Checklist