def ideal_binary_mask(noisy_speech, clean_speech, snr, sr):
win_len = sr * 0.02
shift_len = sr * 0.01
noisy_spect = stft_extractor(noisy_speech, win_len, shift_len, 'hanning')
clean_spect = stft_extractor(clean_speech, win_len, shift_len, 'hanning')
spect_snr = np.power(np.abs(clean_spect), 2.0) / np.power(np.abs(noisy_spect - clean_spect), 2.0)
ibm = np.where(spect_snr > 10**(0.1*snr), 1, 0)
return ibm
评论列表
文章目录