首先要了解下什么是白噪
白噪音是指一段声音中的频率分量的功率在整个可听范围(0~20KHZ)内都是均匀的。由于人耳对高频敏感,这种声音听上去是很吵耳的沙沙声。 摘自百度百科
换句话说就是,白噪的每一帧都是随机的值,如果要给一段音频加上白噪的话,给每一帧叠加一个随机大小的值就ok啦
Python处理音频,我比较常用librosa,官方文档:https://librosa.github.io/librosa/
工具全部代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/9/20 4:41 PM
# @Author : vell
# @Email : vell001@qq.com
import argparse
import json
import os
import librosa
import numpy as np
def add_noise(audio_path, out_path, percent=0.2, sr=16000):
src, sr = librosa.load(audio_path, sr=sr)
random_values = np.random.rand(len(src))
src = src + percent * random_values
librosa.output.write_wav(out_path, src, sr, norm=True)
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("--audio_dir", type=str)
parser.add_argument("--out_dir", type=str)
args = parser.parse_args()
if not os.path.exists(args.out_dir):
os.makedirs(args.out_dir)
for root, dirs, files in os.walk(args.audio_dir):
for file in files:
if not file.endswith(".wav"):
continue
audio_path = os.path.join(root, file)
out_path = os.path.join(args.out_dir, file + ".noise.wav")
add_noise(audio_path, out_path)
原始音频
加噪音频
加白噪是最简单的了,后面可以再混一些现有的噪音,思想都是一样的
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。