知乎-AI大道理-AI大语音(二)| 语音预处理(深度解析)
一、基本概念¶
1.1 基频与语音能量¶
一、基频与语音能量的关系
基频的定义:基频是语音信号中的最低频率成分,是语音音调的决定因素。男性的平均基频值约为130Hz (7.7ms),而女性的平均基频值约为220Hz (4.5ms)。 正常成年男性的嗓音基频范围通常在110~160Hz左右,也有说法认为正常男性的基频在130Hz左右。正常成年女性的嗓音基频范围通常在220~270Hz左右,也有说法认为正常女性的基频在250Hz左右。正常儿童的基频相对较高,大致在340Hz左右。儿童的基频范围相对较广,并且会随着年龄增长而发生变化。随着年龄的增长,声带逐渐变长、变厚,基频可能会有所降低。
语音能量的分布:虽然基频是语音信号中的一个重要特征,但语音能量并不只集中在基频附近。实际上,语音能量在整个频谱范围内都有分布,但主要集中在某些特定的频段内。
主要能量频段:根据声学和通信领域的研究,语音的主要能量通常集中在250~4500Hz这一频段内。这一频段包含了语音的大部分清晰度和辨识度信息,是语音信号处理和传输中需要重点关注的部分。
二、为什么语音能量不主要集中在基频附近
谐波成分:语音信号不仅包含基频成分,还包含许多谐波成分。这些谐波成分是基频的整数倍,它们在频谱上形成了一系列离散的谱线。这些谐波成分共同构成了语音信号的复杂频谱结构。
频谱包络:语音信号的频谱包络包含了丰富的语音特征信息,如共振峰等。共振峰是语音信号中重要的频谱特征之一,它们通常位于频谱的高频部分,对语音的音质和清晰度有着重要影响。因此,语音能量在高频部分也有显著分布。
噪声和干扰:在实际语音信号中,还会受到各种噪声和干扰的影响。这些噪声和干扰可能会改变语音信号的频谱特性,使得语音能量在更宽的频段内分布。
1.2 滤波器¶
熟悉高通、低通滤波器的 R/C/S电路表达形式 、 频率表达式、时域差分表达式。
利用高频增强技术来抵消语音频谱的自然衰减。引入高频强调的一种简便方法是,计算输入信号的一阶差分的频谱。
一阶差分通过计算相邻数据点之间的差值,去除了信号或时间序列中的低频成分,相对地就同时突出了高频成分,从而实现了高频强调。
1.3 窗函数¶
吉布斯效应: 将具有不连续点的周期函数(如矩形脉冲)进行傅立叶级数展开后,选取有限项进行合成。当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%。这种现象称为吉布斯现象。
由于矩形窗的归一化截止频率是\(F_s/L\),它看起来仅需要一半的采样率;但在此采样率下,其相当差的频率选择性通常会导致严重的混叠现象。
为了避免吉布斯效应和混叠现象,设计了窗函数。
当a=0.5时,叫做汉宁(Hann)窗,时域的边沿幅值为0,故旁瓣会越来越小;当a=0.53836,称为汉明(Hamming)窗,时域的边沿幅值为0.5,故旁瓣均匀。 汉明窗的主旁瓣电平很低,所以汉明窗更受欢迎。
汉明窗的带宽约为相同长度矩形窗带宽的两倍。此外,在通带外部,与矩形窗的衰减(>14dB,旁瓣为-20dB左右)相比,汉明窗可提供更大的衰减(>40dB)。显然,两种窗的衰减基本上与窗长无关。因此,增加窗长L只会降低带宽。
| 窗类型 | 旁瓣峰值 | 主瓣宽度 | 最小阻带衰减 |
|---|---|---|---|
| 矩形窗 | -13 | \(4\pi / N\) | -21 |
| 汉明窗 | -31 | \(8\pi / N\) | -44 |
| 汉宁窗 | -41 | \(8\pi / N\) | -53 |
二、预处理流程¶
2.1 模拟信号预滤波¶
前端带宽为 300-3400Hz(语音能量主要集中在 250~4500Hz)的抗混叠滤波器。
截止频率 \(f_c = f_s / 2.56\)
具体来说,当采样频率为fs时,奈奎斯特频率为fs/2。但为了避免混叠,我们通常会使用一个低通滤波器(即抗混叠滤波器)来滤除高于奈奎斯特频率的信号成分。这个滤波器的截止频率通常设置为略低于奈奎斯特频率,以确保高于该频率的信号成分被有效滤除。
2.2 A/D转化¶
声音作为一种机械波,其能量通过空气分子的振动传递。当这种振动被麦克风等传感器捕获时,会驱动传感器的机械结构(如膜片)运动,进而通过电磁感应、压电效应或电容变化等原理,将机械能转换为电信号。
转换后的电信号是模拟信号,其幅度随声音的瞬时压力变化而变化。由于声音压力有正有负(相对于环境大气压),电信号的幅度也会相应地呈现正值和负值。例如,当膜片向某一方向运动时,输出正电压;向相反方向运动时,输出负电压。
2.2.1 消除趋势项和直流分量¶
传感器的放大温漂、唤醒干扰等,会使语音信号的零线偏离基线。趋势项误差的存在,会使相关函数、功率谱函数在处理计算中出现变形,甚至可能使低频段的谱估计完全失去真实性和正确性,所以应该将其去掉。
注:相对于IMU需要关注零偏、线性度、交轴耦合,语音只关注第一项,而且只使用了最小二乘(实时系统可以用递归最小二乘)的方法,未使用参数动态估计的方法。可以推测语音对信号误差的敏感性不高。
2.2.2 工频干扰¶
低通滤波器抑制50/60Hz的工频干扰。
2.3 预加重¶
大部分能量集中在低频范围内,就会使语音信号高频端的信噪比可能降低到不能容许的程度。
因为高频端大约在800Hz以上按6dB/oct (倍频程)衰减,频率越高相应的成分越小,为此要在对语音信号进行分析之前对其高频部分加以提升。
一般通过传递函数为高通数字滤波器来实现预加重,其中 a 为预加重系数,\(0.9<a<1.0\)。设 \(n\) 时刻的语音采样值为 \(x(n)\),经过预加重处理后的结果为 \(y(n)=x(n)-a x(n-1)\),这里取 \(a=0.97\)。
常用的预加重因子为 \(1-\frac{R(1)}{R(0)z^{-1}}\)。对于浊音来说 R(1)/R(0)≈0;对于清音来说,该值可取得很小。
2.4 分帧/分块¶
分帧基于随机信号的短时平稳特性。
音素长度限制 <=50ms;频率分辨率限制 >=10ms(基频 100Hz → 即频域分辨率至少为 100Hz,周期应为 1/100=10ms)。
csdn-sunshineywz-语音信号处理中怎么理解分帧
2.5 拼帧¶
拼帧的主要目的有两个,一是利用语音的短时平稳性,二是为了使用 FFT 来实现较高的计算效率。比如将 160 点的一帧数据与上一帧的后 96 点数据一起拼成 256 点的、实际的一帧算法处理的数据。
考虑下一步加窗的代价是一帧信号两端的部分被削弱了,没有像中央的部分那样得到重视。弥补的办法是,帧不要背靠背地截取,而是相互重叠一部分。相邻两帧的起始位置的时间差叫做帧移 / 步长(Frame Shift / Hop Size),常见的取法是取为帧长(Frame Length)的一半(25%~50%),或者固定取为 10 毫秒。
帧移不是随便选的,详见后续《语音编码》的"信号重建"一节。
2.5.1 加窗¶
其中:\(\Delta f\) 为频率分辨率,值越大,分辨率越低。可见,采样周期一定时,N 增大,\(\Delta f\) 减小,即频率分辨率相应地得到提升,但时间分辨率降低。
根据奈奎斯特采样定理,为保证频谱不混叠,采样率至少为最高频率的2倍,所以语音识别中一般最低采样率为8000Hz。实际上,在语音识别服务中,常用的采样率包括8000Hz和16000Hz两种。其中,8000Hz采样率一般在客服场景的电话业务中使用,而16000Hz采样率则用于需要更高音质和识别精度的场景。来源
一个窗函数内需要包含 1~7 个基音周期,故选取 10~20ms 持续时间。
- <1 个周期:无法检测周期性,频谱泄漏严重。
- >7 个周期:基频谐波重叠,频谱分辨率下降,时间局部性差。
即:在一个基音周期或更小的数量级上,\(Q_{\hat{n}}\) 的波动会很大,具体取决于波形的细节。如果 L 太大,即在 10 倍基音周期的数量级以上,\(Q_{\hat{n}}\) 变化缓慢而不足以反映语音信号的变化特性。
正常的语谱图应该能看出各个 F0~F5 的能量走势,有点类似于榴莲千层,因此如果频率分辨率不够的话,语谱图会比较糊。
三、回消降噪¶
一般信噪比范围(从大模型中复制):
- 低信噪比(< 0 dB):当信噪比低于 0 dB 时,噪声功率大于语音信号功率,语音信号通常会被噪声严重掩盖,难以辨识。这种情况常见于极端嘈杂的环境,如工厂车间、建筑工地等。
- 中等信噪比(0 dB - 20 dB):在这个范围内,语音信号虽然仍受到噪声的影响,但通常可以勉强辨识。信噪比越高,语音信号越清晰。例如,在办公室环境中,信噪比可能在 10 dB 到 20 dB 之间,语音交流相对清晰。
- 高信噪比(> 20 dB):当信噪比高于 20 dB 时,噪声对语音信号的影响较小,语音信号清晰可辨。这种情况常见于安静的室内环境,如图书馆、会议室等。
四、端点检测¶
[1] 曾剑飞. 低信噪比条件下的语音端点检测算法研究[D]. 华南理工大学, 2019.
四种常规端点检测算法:能量过零率、方差、谱熵、神经网络等(详见声学特征)。
在进行语音端点检测之前,对带有噪声的语音信号进行降噪处理,可以有效地提升端点检测的准确率。
端点检测,也叫语音活动检测,Voice Activity Detection,VAD,它的目的是对语音和非语音的区域进行区分。通俗来理解,端点检测就是为了从带有噪声的语音中准确的定位出语音的开始点,和结束点,去掉静音的部分,去掉噪声的部分,找到一段语音真正有效的内容。
VAD 算法可以粗略的分为三类:基于阈值的 VAD、作为分类器的 VAD、模型 VAD。
基于阈值的 VAD: 通过提取时域(短时能量、短期过零率等)或频域(MFCC、谱熵等)特征,通过合理的设置门限,达到区分语音和非语音的目的。这是传统的 VAD 方法。
作为分类器的 VAD:可以将语音检测视作语音/非语音的两分类问题,进而用机器学习的方法训练分类器,达到检测语音的目的。
模型 VAD:可以利用一个完整的声学模型(建模单元的粒度可以很粗),在解码的基础,通过全局信息,判别语音段和非语音段。
4.1 难点¶
咂嘴声或杂音,突发性干扰,弱摩擦声和鼻音。
五、混响¶
zhihu-谛听声学-什么是混响 csdn-卷心菜-语音信号去混响
混响的积极作用: 增加声音的丰满感和空间感:适当的混响效果可以使声音听起来更加自然、舒适,特别是在音乐演奏和录音中,混响能够营造特定的音乐氛围和情感表达。 提高空间感知能力:混响可以帮助听者定位声源的位置,增强空间感知能力,使听者能够更好地理解声音的空间布局。
混响的负面影响: 降低语音清晰度和可懂度:过多的混响会导致声音模糊、难以分辨,影响语音的清晰度和可懂度。在语音通信和语音识别应用中,混响可能降低系统的性能。 干扰特定场景下的音频质量:在某些特定场景下,如电话会议或录音室中,过多的混响会干扰音频信号的质量,需要采取措施减少混响。
说话声的合适混响时间:0.3-1.0秒,取决于房间大小和用途。 音乐厅的合适混响衰减时间:1.5-2.5秒,取决于音乐厅大小和用途。 在实际应用中,混响时间的控制需综合考虑房间的大小、形状、吸声材料等因素,以达到最佳的声学效果。
