语音识别-信号处理篇
本文主要介绍了语音识别(ASR)、声源定位(DOA估计)、波束形成以及去混响(de-reberation)的相关技术。在ASR系统中,传统方法采用MFCC特征但对噪声敏感,在深度学习中常用FBANK特征;VAD方法包括能量法、高阶统计量等,并结合麦克风阵列进行声源检测;DOA估计通过麦克风时间差实现方向估计,并应用于波束形成以增强目标声音信号;去混响技术采用MMSE和MINT等算法减少混响对ASR识别的影响。这些技术的结合与优化是提升语音处理系统性能的关键方向。
我的书:

ASR的核心要素在于向后端系统传递与其判定词/句相关的特征类型与质量保障。具体而言,在传统语音识别系统中主要依赖MFCC(mel-frequency ceptral coefficients)作为核心特征,在高斯白噪声及回声环境中表现出色;针对有色噪声与相干干扰情况,则通过一阶与二阶微分处理来减少对MFCC系数的影响程度;相较于其他方法而言,其计算负担较为轻盈;在深度学习框架中,则更倾向于选择FBank作为基础特征替代方案而非直接使用MFCC进行离散余弦变换。
##VAD
###VAD方法
-
基于能量的方法
-
基于波形和谱估计法
- 音调和谐波检测
- 周期测量
- 过零率
-
高阶统计量
由于噪声会因环境而变化其值并非固定不变在ASR系统中通常不采用基于能量的方法WebRTC则采用了基于高斯混合模型的高阶统计量同时用于前端特征提取和后端处理VAD则广泛应用于AEC NS模块以及作为前端与后端之间信息传递的重要工具。
DOA 估计
在波束形成过程中, DOA 扮演着十分重要的角色。
波束成形技术旨在增强接收信号的方向信息的同时有效抑制其他方向的噪声干扰。
现有的 DOA 估计方法主要依赖于麦克风阵列各传感器接收到的时间差信息来进行方位计算。

基本原理如上图,

在近场环境下该方法表现出较高的有效性(即实现清晰度较高),但在远场场景中由于其回响程度显著高于近场情况(即混响度较大),从而会对声源的空间位置分布产生较大影响(即导致声源定位误差增大)。这种现象主要由声源与麦克风在空间中的布局所决定(即相关参数不同),因此当声源位置发生变动时(即移动麦克风或改变房间布局),相应的会导至声学传递特性发生变化(即响应特性变化),最终引起回响程度也会随之改变(即造成系统性能波动)。基于此,在单个统计模型难以达到足够准确性的情况下(即无法满足复杂场景需求),建议采用多个统计模型结合的方式作为语音活动检测器(VAD)的判别标准(而非采用经验性方法)。
需要注意的是:统计模型的概率分布特性主要由帧长、DFT长度以及所选窗函数等因素共同决定。

语音概率密度分布图
如上图可以看到,和统计模型相比填充的幅度直方图的概率密度函数主瓣较窄,使用多统计模型的混合分布可以增加算法本身的健壮性。
##波束形成
很多地方采用了MVDR(Minimum Variance Distortionless Response)算法,如该算法的名称,该算法是无失真的。该算法的目标是最小化麦克风采集到的信号的方差,通常麦克风采集到的信号的语音和噪声成分是不相关的,所以最小方差是语音信号最小方差和噪声信号最小方差之和,这样经过MVDR后可以获得消除噪声影响后的语音信号。
MVDR的权重最优解是:
KaTeX parse error: \tag works only in display equations
其中\bf R_{xx}是输入信号的自相关矩阵,C是约束矩阵, \bf f是期望的响应向量。
权重递归跟新如下:
KaTeX parse error: \tag works only in display equations
###MVDR波束
MVDR波束方向图依赖于麦克风阵元和FIR滤波器阶数,



根据时间轴将混响分为“早”和“晚”两种类型。“早”与直达声音的时间差相关联。人耳对声音的时间分布存在感知掩蔽特性,在这种情况下,“早”混响会强化直达信号的效果。因此,在处理去混响问题时,我们主要关注的是后者的影响。在此基础上展开讨论。
基于信道和均衡技术
###MMSE(最小均方误差)算法

该方法通过减少平均平方误差和最小二乘法原理进行优化;MMSE(最小均方误差)目标函数被定义为:
MMSE(e) = E[e^2(m)] = \sum_{m=0}^{M-1} e^2(m)
其中M表示观测到的信号长度,
而误差项则由以下两部分组成:
e(m) = s(m-k) - \underline{s}(k) = s(m-k) - h(m) * x(m)
需要注意的是,
这种方法要求参考通道的信号必须是纯净无噪声的,
但在实际应用中这一条件往往难以满足。
基于谱减法
