使用 RNNoise 进行语音去噪
RNNoise 是一种微小、快速的神经网络,可以实时去除语音中的背景噪声。
概述
Created by Xiph.Org's Jean-Marc Valin, it pairs classic signal processing with a small recurrent network so it runs on ordinary CPUs and even embedded devices.
深入探讨
RNNoise 于 2017 年发布,专为语音通话中的低延迟噪声抑制而设计。它不是端到端地学习所有内容,而是将语音分成大约 22 个模仿人耳的频带(类似树皮的音阶),并使用带有门控循环单元的循环神经网络来估计每帧每个频带的增益(0 到 1)。这些增益可以衰减噪声频带,同时保持语音主导频带完好无损。互补的音调滤波器可清除浊音谐波之间的残留噪声。整个模型有大约 85,000 个权重,在单个 CPU 内核上运行速度比实时更快,并且在 BSD 许可下开源,这就是它被集成到 Opus 编解码器生态系统、Mumble 和 OBS Studio 等项目中的原因。
技术洞察
关键的设计选择是基于感知频带增益而不是原始频谱箱进行操作。通过每帧仅预测约 22 个增益值,GRU 网络保持很小,并避免了旧式频谱相减方法中常见的音乐噪声伪影。手工制作的特征(频带能量、音调周期、音调相关性)输入网络,将 DSP 知识与学习相结合。单独的语音活动输出有助于在纯噪声帧期间控制增益。
战略影响
交通与覆盖范围
它通过转录、旁白和语音界面提高了可访问性。
成本与预算
媒体团队可以用更少的预算更快地交付精美的音频。
速度与规模
面向客户的系统可以处理更大规模的语音交互。
RNNoise 语音降噪的未来
RNNoise 激发了一波轻量级实时增强工作;其后续研究(PercepNet、DeepFilterNet)在保持较小 CPU 预算的同时提高了质量。预计降噪器将直接嵌入耳机、助听器和会议芯片中,与回声消除和混响去除相结合,并使用感知甚至生成目标。在低延迟、低功耗和开源许可比原始模型大小更重要的情况下,混合 DSP 加小型网络方案仍然具有影响力。
现实世界的实施
在捆绑 RNNoise 的应用程序中抑制视频通话期间的键盘碰撞声和风扇嗡嗡声。
通过内置的 RNNoise 噪声抑制过滤器在 OBS Studio 中清理主播的麦克风。
提高低功耗硬件上游戏和 Mumble 等 VoIP 工具中语音聊天的清晰度。
预处理嘈杂的现场录音,以便下游语音识别获得更清晰的信号。
风险与防护栏
如果未征得同意,语音滥用和冒充风险就会增加。
由于口音、方言或嘈杂的环境,准确性可能会下降。
如果没有明确的标签,合成音频可能会被误认为是真实的语音。
实施路线图
获得语音捕获、克隆和重用的明确同意。
测试不同扬声器和背景条件下的质量。
定义人员必须审查或批准输出的时间。
标记合成音频并保留来源记录以供问责。
不断探索
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Speech Denoising with RNNoise quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
常见问题
What is Speech Denoising with RNNoise?
RNNoise 是一种微小、快速的神经网络,可以实时去除语音中的背景噪声。它由 Xiph.Org 的 Jean-Marc Valin 创建,将经典信号处理与小型循环网络相结合,因此可以在普通 CPU 甚至嵌入式设备上运行。
RNNoise 对每个短音频帧主要预测什么?
RNNoise 估计每个频带的增益,这些增益会衰减噪声主导的频带,同时保留语音主导的频带,而不是在每个频谱段上工作。
RNNoise 的核心是什么类型的神经网络?
RNNoise 使用由门控循环单元构建的紧凑循环神经网络,在保持微小的同时赋予其时间记忆。
为什么 RNNoise 使用感知频带而不是原始频谱箱?
仅预测约 22 个频带增益可以使网络保持小型、快速,并且不易受到困扰 per-bin 方法的音乐噪声伪影的影响。
RNNoise 模型大约有多大?
RNNoise 具有大约 85,000 个权重,足够小,可以在单个 CPU 内核上比实时运行得更快。
RNNoise 中音调滤波器的作用是什么?
梳状/音调滤波器利用有声语音的谐波结构来抑制谐波之间的噪声,从而补充频带增益。