资源简介
按照信噪比公式SNR=10lg(PS/PN),其中Ps和Pn分别代表纯语音和纯噪声的平均功率,对纯语音和纯噪声进行批量合成。只需要将纯语音和纯噪声设置好路径,代码修改路径和信噪比即可批量合成。其中纯语音和纯噪声得都是单声道并且采样率相同的.wav文件。 修改:为防止削波现象,建议将含噪语音除以(1+k)
代码片段和文件信息
import soundfile as sf
import os
import numpy as np
import math
import random
# 对纯语音数据添加噪声数据
def Get_Data(Voice noise Vn snr):
Data Fs = sf.read(Voice)
data fs = sf.read(noise)
if fs == Fs and len(Data)<=len(data):
Average_Energy = np.sum(Data ** 2) / len(Data)
average_energy = np.sum(data ** 2) / len(data)
k = math.sqrt(Average_Energy / average_energy / 10 ** (snr * 0.1))
print(Average_Energy average_energy k)
num = random.randint(8000len(data)-len(Data)-8000)
Data_new = Data + data[num:len(Data)+num] * k
print(Vn)
sf.write(Vn Data_new 8000)
return Data data Data_new
else:
print(‘error: fs!=Fs or len(Voice)>len(noise)‘)
return 0 0 0
def main(Voicedir Noisedir snr):
# 遍历噪声文件
for files in os.listdir(Noisedir):
Noise_wav = os.path.join(Noisedir files)
new_dir = Noisedir + ‘_‘ + files.split(‘.‘)[0] + ‘_‘ + str(
- 上一篇:EXCEL读取和写入
- 下一篇:Power world搭建的IEEE
相关资源
- PowerDesigner16.5汉化文件.rar
- jsgis.zip
- PinyinIME(关键代码写了注释).zip
- 锁相环设计、仿真与应用第5版中.pd
- novelOnLine.zip
- SingleSensorImagingMethodsandApplicationsforDi
- ControlSystemsEngineering7th(NormanS.Nise)
- ModernControlSystems13th(RichardC.Dorf).ra
- VectorMagic_1.15pojie.rar
- complexityoflattice__problems.pdf
- xnby_883749.zip
- TOGAF培训讲义-周金根.pdf
- OS12.2驱动,手机虚拟定位软件,Loca
- 大话系列-大话数据结构(pdf高清版)
- 梁宁产品经理思维30讲.pdf
- CHI760E辰华电化学工作站软件最新版
- SAPERPHCM葵花宝典系列之配置指南(电
- TangZhuoLin.rar
- Day3_NOI.zip
- 图解HTTP.pdf
- VisionProStandardv7.2(2Day).zip
- ElevatorSimulation.zip
- 14002454IPC-A-610DChinese(L).pdf
- SoftwareEngineering.pdf
- linfanrong_10164999.rar
- The.Art.Of.Unit.Testing.With.Examples.in.C.2nd
- myGame.rar
- 带手机版数据同步财税代理公司注册
- pdf课本及习题答案.rar
- 深度学习PDF非扫描版(中文版)麻省
评论
共有 条评论