From f06f295515b514e2c5d95259225cd91e5c1df5d0 Mon Sep 17 00:00:00 2001 From: moto <855818+mthrok@users.noreply.github.com> Date: Fri, 29 Jul 2022 14:04:27 -0700 Subject: [PATCH] Update data augmentation tutorial In https://github.com/pytorch/audio/pull/2285, the SNR calculation was fixed, but there was still one that was not fixed. This commit fixes it. Also following the feedback https://github.com/pytorch/tutorials/issues/1930#issuecomment-1199741336, update the variable name. --- examples/tutorials/audio_data_augmentation_tutorial.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/tutorials/audio_data_augmentation_tutorial.py b/examples/tutorials/audio_data_augmentation_tutorial.py index f3ac7917da..8bcc30cbf5 100644 --- a/examples/tutorials/audio_data_augmentation_tutorial.py +++ b/examples/tutorials/audio_data_augmentation_tutorial.py @@ -239,14 +239,14 @@ def plot_specgram(waveform, sample_rate, title="Spectrogram", xlim=None): noise, _ = torchaudio.load(SAMPLE_NOISE) noise = noise[:, : speech.shape[1]] -speech_power = speech.norm(p=2) -noise_power = noise.norm(p=2) +speech_rms = speech.norm(p=2) +noise_rms = noise.norm(p=2) snr_dbs = [20, 10, 3] noisy_speeches = [] for snr_db in snr_dbs: snr = 10 ** (snr_db / 20) - scale = snr * noise_power / speech_power + scale = snr * noise_rms / speech_rms noisy_speeches.append((scale * speech + noise) / 2) ###################################################################### @@ -376,7 +376,7 @@ def plot_specgram(waveform, sample_rate, title="Spectrogram", xlim=None): noise = noise[:, : rir_applied.shape[1]] snr_db = 8 -scale = math.exp(snr_db / 10) * noise.norm(p=2) / rir_applied.norm(p=2) +scale = (10 ** (snr_db / 20)) * noise.norm(p=2) / rir_applied.norm(p=2) bg_added = (scale * rir_applied + noise) / 2 plot_specgram(bg_added, sample_rate, title="BG noise added")