首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >实时语音降噪技术:结合信号处理与深度学习

实时语音降噪技术:结合信号处理与深度学习

原创
作者头像
用户11764306
发布2026-01-04 08:20:55
发布2026-01-04 08:20:55
2740
举报

实时语音降噪技术:结合信号处理与深度学习

一种结合了经典信号处理与深度学习的方法,使其足够高效,可在手机上运行。

背景与目标

PercepNet 是某中心语音通话“语音焦点”功能的核心技术之一。它旨在实时抑制语音信号中的噪声和混响,同时不占用过多CPU资源,使其能够在手机和其他功耗受限的设备上使用。在 Interspeech 2020 的深度噪声抑制挑战赛中,PercepNet 在实时处理类别中获得了第二名,仅使用了CPU单核4%的资源。

传统方法与挑战

语音增强的标准方法是使用短时傅里叶变换。然而,这存在两个主要问题:

  1. 相位估计困难:通常算法只估计干净的幅度谱,而使用带噪信号的相位进行重建,这会导致“粗糙感”的残留噪声。
  2. 计算复杂度高:为了覆盖人耳可闻的全频带(20 kHz),需要估计多达400个频点的幅度,这对神经网络而言计算成本高昂。

听觉感知引导的表示

为了降低复杂度,PercepNet 采用了基于人类听觉系统的表示方法:

  • 平滑谱包络:语音频谱的形状(谱包络)是平滑的。
  • 非线性频率分辨率:人耳通过听觉滤波器(临界频带)感知声音,对低频的分辨率高,对高频的分辨率低。

因此,PercepNet 使用等效矩形带宽滤波器组来表示语音频谱。它将频谱划分为34个重叠的频带(而非400个频点),这极大地简化了模型。每个频带只需估计一个介于0和1之间的增益值。

处理谐波与噪声

仅有谱包络信息还不够。语音中的元音主要由谐波(基频的整数倍)构成,而许多辅音(如 /s/)则更像噪声。为了增强谐波成分,PercepNet 引入了梳状滤波技术。

  • 梳状滤波:根据估计的语音基音频率,在时域应用梳状滤波器,可以保留谐波并滤除大部分噪声。
  • 混合控制:通过在频域进行混合,可以在每个频带上独立控制带噪信号与梳状滤波后信号的混合比例,从而精确控制输出语音中谐波与噪声的比率。

后置滤波

为了进一步提升感知质量,PercepNet 采用了后置滤波技术,即进一步衰减仍然过于嘈杂的频带。虽然这会使谱包络略微偏离理想状态,但人耳对此不太敏感,却能更明显地感觉到噪声的减少。

深度神经网络设计

在上述感知表示的框架下,深度神经网络的任务被大大简化。它只需要预测34个频带增益和34个梳状滤波强度(均为0到1之间的值)。模型采用跨时间的卷积层和具有长时记忆的循环层(如GRU)。该网络使用添加了各种噪声和混响的干净语音进行训练,以预测最优的增益和滤波强度。

实时性能

PercepNet 的 DNN 模型包含约800万个权重。通过将所有权重量化为8位,并利用现代CPU的SIMD指令,可以在实时运行中实现高效计算。在一台现代笔记本电脑CPU上,PercepNet 实时运行占用不到一个核心的5%。

算法引入的延迟约为30毫秒(包括STFT重建10毫秒和神经网络前瞻20毫秒),这在大多数实时通信场景中是可接受的。

应用与前景

PercepNet 的设计理念非常通用,可应用于其他问题,如声学回声控制和波束成形后置滤波。未来,该技术还能被进一步优化以在CPU上高效运行,甚至可以作为WebAssembly代码在浏览器中运行,用于基于WebRTC的应用。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实时语音降噪技术:结合信号处理与深度学习
    • 背景与目标
    • 传统方法与挑战
    • 听觉感知引导的表示
    • 处理谐波与噪声
    • 后置滤波
    • 深度神经网络设计
    • 实时性能
    • 应用与前景
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档