共计 2488 个字符,预计需要花费 7 分钟才能阅读完成。
摘要:轻量级神经网络降噪办法,解析 ZegoAIDenoise 的算法实现!
文|即构引擎开发团队
一、轻量级神经网络降噪——ZegoAIDenoise
当下,用户在进行音频通话时经常置身于各种不同的场景中,嘈杂的背景声音以及非稳态乐音往往会对通话产生烦扰,其中非稳态乐音是指在工夫散布上不间断,并有其状态特色的噪声,是绝对稳态噪声而言的,例如,鼠标点击声、键盘声、敲击声、空调声、厨房碗碟碰撞声等都属于非稳态乐音。
而基于信号处理的传统音频降噪算法对于安稳噪声有比拟好的降噪成果,然而对于非安稳噪声,低信噪比等简单场景,降噪成果较差,甚至生效。
随着目前深度学习的广泛应用,基于神经网络的音频降噪算法大量涌现,这些算法无论在降噪成果上,还是泛化能力上,都能获得比拟好的后果,很好的补救了传统算法的有余。
然而,这些计划大多是间接基于短时傅里叶变换后的频域信号或者时域信号的端到端计划,存在网络模型过于简单,性能耗费微小等问题,给实时场景交付提出了很大的挑战。
基于上述挑战,ZEGO 即构科技提出了一个轻量级的神经网络降噪办法 —— ZegoAIDenoise,对于安稳和非安稳噪声都有很好的降噪成果,保障了语音的品质和可懂度,同时将性能开销管制在一个很低的量级,与传统降噪算法相当,胜利笼罩大部分中低端机型。
那么明天将具体为大家介绍 ZegoAIDenoise 的实现原理,及如何在低性能开销的前提下,进步深度学习算法的降噪成果及泛化能力。
二、ZegoAIDenoise 算法原理解析
ZegoAIDenoise 采纳传统算法和深度学习相结合的 Hybrid 办法,为了升高性能开销,采纳频域分成子带计划,并有限放大深度学习网络模型,用尽量小的网络模型达到更好的降噪成果。
1、信号模型
如图 1 所示,传统降噪基本原理多采纳谱减法,即依据谱能量估算噪声能量及各频点增益,失去洁净语音。所以,只有 ZegoAIDenoise 能精确估算出频点增益 G,就能从带噪的麦克风信号中失去冀望的洁净语音信号 x(n)。
频点增益 G 的推导过程如下:
y(n) = x(n) + d(n) ……… (1)
公式 (1) 中,x(n) 代表洁净语音信号,d(n)代表噪声信号,y(n)代表麦克风采集的信号。
对公式 (1) 做 STFT 之后,失去公式 (2):
Y(i, k) = X(i, k) + D(i, k) ……… (2)
其中,Y(i, k),X(i, k) 和 D (i, k) 别离代表 y(n),x(n),d(n)的频域信号,i 代表第 i 个时域帧,k 代表频点,由此,失去公式(3):
G(i, k) = |S(i, k)| / |Y(i, k)| ……… (3)
G(i, k) 代表的是估算的频点增益。所以,只有估算出 G(i, k),就能通过带噪信号 Y(i, k),估算出语音信号 S(i, k)。
2、特征值
为了防止大量的输入,防止应用大量神经元,ZegoAIDenoise 决定不间接应用语音样本或者能量谱。作为代替,ZegoAIDenoise 思考一种合乎人类听觉感知的频率尺度 —— 巴克频带尺度,总共用了 22 个子带。
为了更好估算 G(i, k),须要抉择更能代表语音个性的特色,从而辨别语音和噪声,ZegoAIDenoise 引入了基于基因周期的梳状滤波器 (4)。式中,M 是核心抽头两侧的周期数,通过调整 M 值,扭转时延。
……… (4)
自适应指标增益,如果通过梳状滤波器失去的相干性能量低于洁净语音的相干性能量,则调整指标增益,限度最大衰减量,能无效地解决在大嘈杂的场景的过克制问题。
应用梳状滤波器,能无效地进步语音的谐波个性,升高谐波间噪声,用肯定时延的代价,换取更好的降噪成果。
3、CRNN 网络模型
如图 2 所示,ZegoAIDenoise 采纳传统算法和深度学习相结合的 Hybrid 办法,传统算法对实时数据进行特征提取及后处理,深度学习预计子带增益,Hybrid 不仅能满足实时性要求,同时能适应场景简单的噪声环境,给实时通信带来良好的用户体验。
如图 3 所示,CRNN 模型应用两个卷积层和多个 GRU 层。卷积层的应用能进一步地进步特征提取的有效性及泛化能力。
训练时,通过对语音和噪声利用不同的随机二阶零极点滤波器,ZegoAIDenoise 改良了模型的泛化性。ZegoAIDenoise 还对两个信号利用雷同的随机频谱歪斜,以便更好地概括不同的麦克风频率响应。为了实现带宽独立性,ZegoAIDenoise 采纳了一个低通滤波器,其随机截止频率在 3 kHz 和 16 kHz 之间。这使得在窄带到全波段音频上应用同一型号成为可能。
训练过程中,损失函数的设计也尤为重要。除了平方误差,ZegoAIDenoise 还引入四次方误差来强调训练预计谬误的代价。同时,还减少了注意力机制,用以缩小对语音的伤害。
三、ZegoAIDenoise 成果及性能比照
在比照项上,ZegoAIDenoise 次要和传统降噪及 RNNoise 降噪进行了比照,无论在 MOS,还是在可懂度上都有显著晋升。
如上成果展现,ZegoAIDenoise 针对不同的噪声类型及场景,均获得比拟现实的降噪成果。在实时处理的性能测试方面,默认采样率 32kHz,帧长 10ms,在 1.4G Hz 主频的 iPhone 6 上,CPU 性能开销为 1% 左右,与 WebRTC 的通用降噪相当。所以,ZegoAIDenoise 无论在降噪成果、泛化能力,还是性能开销上,都获得了长足的提高,实现了机型和场景的全笼罩。
ZEGO
综上所述,ZegoAIDenoise 实现了一个轻量级的神经网络降噪办法,无论是在稳态还是非稳态的噪声环境,都能获得比拟好的降噪成果,高质量的音频降噪可能无效晋升用户实时互动体验。
目前,ZEGO Express SDK 已正式提供 AI 降噪性能,开发者能够在应用麦克风采集声音时,对声音进行降噪解决,并在传统降噪(详情请参考 噪声克制)打消稳态噪声的根底上,同步解决非稳态噪声(包含鼠标点击声、键盘声、敲击声、空调声、厨房碗碟碰撞声、餐厅嘈杂声、环境风声、咳嗽声、吹气声等非人声噪声),保留污浊语音,晋升用户的通话体验。
将来,咱们会联合具体行业和场景,引入更多的深度学习算法,晋升产品的场景适应能力,给用户提供更好的音频体验!