一种基于变张成广义子空间的多通道频域语音增强算法

文档序号:9806 发布日期:2021-09-17 浏览:46次 英文

一种基于变张成广义子空间的多通道频域语音增强算法

技术领域

本发明属于适应信号处理以及语音信号处理领域,具体涉及一种基于变张成广义子空间的多通道频域语音增强算法。

背景技术

语音信号是生物之间交流的重要手段。语音信号凭借其丰富的信息含量,成为目前个体之间沟通的最有效的手段。语音信号技术的发展始于19世纪下半叶贝尔发明电话。电话的发明使人类的沟通能力越上一个台阶,社会的运转效率大大提高,并掀起信息科学技术发展的潮流。语音信号的处理通常借助声传感器,虚拟的声能量通过声传感器的震动从而将动能转化为计算机可识别的量化电信号。计算机程序将所获得电信号进行进一步处理解码声信号承载的信息或者获得特定的声效果。语音信号处理通常划分为几个阶段:

语音信号的采集:通过麦克风传感器阵列或手机内置麦克风采集说话人的声信号,并将声信号的特征转化为以电信号的形式存储。为了使原始记录的声信号不失真,需要设计声卡采集系统,包括采用分辨率高的模数转换器以及内存容量足够大的存储系统和无阻塞的数据传输系统。

语音信号的预处理:转化后的声能量以电信号的形式储存在数字计算机中。由于语音信号的短时平稳性,通常将语音信号分成截断成短帧并通过加窗函数平滑以便后续的时域处理或频域处理。

语音信号的处理:语音信号的技术处理内容包括了去回声,混响,噪声,分离等子任务。这些内容也是语音信号增强算法研究的核心关注点。为了使算法方便移植到数字信号处理器,通常对算法有实时性,鲁棒性,可扩展性,计算复杂度低等要求。

目前对语音增强算法有经典的维纳滤波器方法,最大信噪比算法以及最小方差无失真滤波器方法等。由于所述滤波器分别只考虑滤波后纯净分量最大保留以及输出信噪比最大,因此其扩展性的小的缺点限制这些算法在实际场景的应用效果。例如在信噪比低的情况下,采用最小方差无失真滤波器所获得的滤波语音信号输出信噪比一定概率下无法满足滤波要求。而在高信噪比情况下,采用最大信噪比算法可能会使语音信号失真从而导致听觉效果的下降。为了适应不同场景下的语音增强效果,一种扩展性高,能够在输出信噪比和语音失真协调的算法显得格外重要。

发明内容

本发明的目的在于克服上述不足,提供一种基于变张成广义子空间的多通道频域语音增强算法,解决了语音信号输出信噪比和语音失真之间协调的问题,并提供了一种在线高效快速的语音增强算法。

为了达到上述目的,本发明包括以下步骤:

S1,麦克风阵列采集多点带噪语音信号数据并得到多通道观测数据,布置麦克风阵列采集多点参考噪声信号,得到多通道噪声参考数据;

S2,将带噪语音信号和参考噪声信号进行分帧处理并对每一帧加窗函数,并对加窗后的函数进行离散快速傅里叶变换;

S3,将S2中进行离散快速傅里叶变换后的数据按照不同频带的多通道数据构建当前频带下协方差矩阵数据更新向量;

S4,利用S3的更新向量更新不同频带下的协方差估计矩阵;

S5,利用子空间追踪算法提取S4中更新后的协方差估计矩阵广义特征向量;

S6,选择广义特征向量的数目构建变张成滤波器并对该子频带下的语音数据滤波;

S7,将S6中滤波后的频域语音数据进行离散反傅里叶变换得到降噪后的纯净语音信号的时域估计。

S1中,麦克风阵列的布置阵元数目为M,采集N点带噪语音信号数据,得到多通道观测数据YM×N,多通道噪声参考数据VM×N

S2的具体方法如下:

将带噪语音信号和噪声信号进行大小一致的分帧操作,使加窗函数的长度一致;

将加窗后的每个通道数据进行离散快速傅里叶变换并得到时频数据:

y(k,n)=[Y1(k,n)Y2(k,n)…YM(k,n)]=x(k,n)+v(k,n)

其中,k为频带的索引,n为时间帧的索引,Y1,Y2,…,YM分别为麦克风1,…,M的时域观测数据经傅里叶变换后的频域数据,x为时域语音信号向量经傅里叶变换后的频域向量,v为参考噪声向量经傅里叶变换后的频域向量。

加窗函数的类型为凯塞窗或汉明窗。

S4的具体方法如下:

利用更新向量迭代更新带噪语音信号的协方差矩阵:

其中γy为遗忘因子,k为频带的索引,n为时间帧的索引,为观测信号的频域协方差矩阵,y为观测信号的频域数据的新息向量,yH为观测信号的频域新息向量的复共轭转置;

利用更新向量迭代更新参考噪声信号的协方差矩阵:

其中

γv为更新协方差矩阵的遗忘因子,其大小取值在(0,1)之间以追踪变化的协方差统计量;I为大小为M×M的单位矩阵;α更新协方差矩阵的中间变量;为噪声频域数据经过白化处理的向量;为噪声频域数据经过白化处理的向量的复共轭转置;为参考噪声的频域协方差矩阵的逆矩阵;v为参考噪声的频域数据向量;

估计纯净信号的协方差矩阵:

为参考噪声的频域协方差矩阵。

遗忘因子γy用于追踪时变的协方差统计量,遗忘因子γy的取值范围在0到1之间。

S5的具体方法如下:

对Q个权值向量进行独立更新并进行QR分解正交化:

for q=1,…,Q

end

为第q个归一化的权值向量;uq为第q个非归一化的权值向量;为参考噪声的频域协方差矩阵的逆矩阵;为纯净语音信号的频域估计协方差矩阵;为参考噪声的频域协方差矩阵的逆矩阵的转置;为第q个非归一化的权值向量复共轭转置;为Q个归一化后的权值向量;u1,…,uQ为非归一化的Q个权值向量;

对权值向量进行逆白化过程,得到广义特征向量的估计量:

w1,…,wQ为矩阵对的Q个广义特征向量。

S6的具体方法如下:

选取广义特征向量构造变张成滤波器:

其中,δ为对角加载因子,作用为使纯净信号的协方差矩为正定矩阵,为第q个广义特征向量的复共轭转置;wq为第q个广义特征向量;i为大小为M×M的单位阵第一个列向量。

与现有技术相比,本发明将时域的数据变换到频域,通过广义子空间追踪算法提取更新的信号协方差矩阵的广义特征向量构建变张成滤波器,该滤波器对频域数据不同子频带进行滤波处理,滤波后的信号取得了和纯净语音信号相近的统计量,取得了良好的滤波效果。本发明具有一定拓展性,可以协调语音输出信噪比和语音失真的平衡,同时可以应用在实时语音降噪处理场合。

附图说明

图1为本发明实施例的应用场景图;

图2为本发明的流程图;

图3为本发明在混响条件下滤波输出信噪比仿真结果示意图;

图4为本发明在混响条件下滤波输出信噪比仿真结果示意图。

具体实施方式

下面结合附图对本发明做进一步说明。

参见图2,本发明包括以下步骤:

步骤1:布置阵元数目为M的麦克风阵列采集N点带噪语音信号数据并得到多通道观测数据YM×N。布置布置阵元数目为M的麦克风阵列采集N点参考噪声信号,得到多通道噪声参考数据VM×N

步骤2.1:带噪语音信号和噪声信号进行大小一致的分帧操作,所加窗函数的长度一致并且类型可以是凯塞窗,汉明窗等;

步骤2.2:将加窗后的每个通道数据进行离散快速傅里叶变换并得到时频数据:

y(k,n)=[Y1(k,n)Y2(k,n)…YM(k,n)]=x(k,n)+v(k,n)

其中k代表了频带的索引,n代表了时间帧的索引Y1,Y2,…,YM分别为麦克风1,…,M的时域观测数据经傅里叶变换后的频域数据,x为时域语音信号向量经傅里叶变换后的频域向量, v为参考噪声向量经傅里叶变换后的频域向量。

步骤3:将步骤2所获得的数据按照不同频带的多通道数据构建当前频带下协方差矩阵数据更新向量;

步骤4.1:利用更新向量迭代更新带噪语音信号的协方差矩阵:

其中γy为遗忘因子,其大小在0到1之间,用于追踪时变的协方差统计量,k为频带的索引,n为时间帧的索引,为观测信号的频域协方差矩阵,y为观测信号的频域数据的新息向量,yH为观测信号的频域新息向量的复共轭转置。

步骤4.2:利用更新向量迭代更新参考噪声信号的协方差矩阵:

其中

γv为更新协方差矩阵的遗忘因子,其大小取值在(0,1)之间以追踪变化的协方差统计量;I为大小为M×M的单位矩阵;α更新协方差矩阵的中间变量;为噪声频域数据经过白化处理的向量;为噪声频域数据经过白化处理的向量的复共轭转置;为参考噪声的频域协方差矩阵的逆矩阵;v为参考噪声的频域数据向量;

步骤4.3:估计纯净信号的协方差矩阵:

为参考噪声的频域协方差矩阵。

步骤5.1:对Q个权值向量进行独立更新并进行QR分解正交化:

for q=1,…,Q

end

为第q个归一化的权值向量;uq为第q个非归一化的权值向量;为参考噪声的频域协方差矩阵的逆矩阵;为纯净语音信号的频域估计协方差矩阵;为参考噪声的频域协方差矩阵的逆矩阵的转置;为第q个非归一化的权值向量复共轭转置;为Q个归一化后的权值向量;u1,…,uQ为非归一化的Q个权值向量;

步骤5.2:对权值向量进行逆白化过程,得到广义特征向量的估计量:

w1,…,wQ为矩阵对的Q个广义特征向量。

步骤6:选取广义特征向量构造变张成滤波器:

其中δ为对角加载因子,其作用为使纯净信号的协方差矩为正定矩阵,为第q个广义特征向量的复共轭转置;wq为第q个广义特征向量;i为大小为M×M的单位阵第一个列向量。

步骤7:将步骤6中滤波后的频域语音数据进行离散反傅里叶变换得到降噪后的纯净语音信号的时域估计。

实施例:

实施场景:

应用场景如示意图图1所示,环境为大小尺寸5m×5m×3m的房间。该实验的麦克风阵列为均匀线列阵,阵元间的距离为0.04m。阵元数目为M=8,声时间的数目为1并处于麦克风阵列的正前端1.5m外。本次实验采用image model生成房间的脉冲响应。混响的时间大小为 150ms。语音数据从真实语音数据库TIMIT中选取。噪声数据从真实噪声数据库Noisex92中选取。在本例中,我们进行两次实验:分别提取Q=2和Q=4个广义特征向量对输入信噪比分别为-10dB,-5dB,0dB,5dB,10dBde的实验设置下进行语音增强,并画增强信号的输出信噪比对于不同输入信噪比的增强效果,同时比较提取不同个数的广义特征向量对实际增强效果的影响。

实施流程:

步骤1:根据实验设置,取麦克风数目M=8。采样频率设置为Fs=8000Hz。从真实语音数据库TIMIT选取N=32000点数据通过与image model生成的房间脉冲向量卷积得到多通道观测数据YM×N。布置布置阵元数目为M=8的麦克风阵列采集N=32000点参考噪声信号,得到多通道噪声参考数据VM×N

步骤2.1:带噪语音信号和噪声信号进行大小一致的分帧操作,每一帧的大小取32,所加窗函数的长度一致,大小均为128点。选取凯塞窗,参数为1.9π;

步骤2.2:将加窗后的每个通道数据进行离散快速傅里叶变换并得到时频数据:

y(k,n)=[Y1(k,n)Y2(k,n)…YM(k,n)]=x(k,n)+v(k,n)

其中k代表了频带的索引,其范围从1到128。n代表了时间帧的索引,其范围从1到1000。

步骤3:将步骤2所获得的数据按照不同频带的多通道数据构建当前频带下协方差矩阵数据更新向量;

步骤4.1:利用更新向量迭代更新带噪语音信号的协方差矩阵:

其中γy为遗忘因子,其大小设置为0.6,用于追踪时变的协方差统计量。

步骤4.2:利用更新向量迭代更新参考噪声信号的协方差矩阵:

其中

遗忘因子γv的大小设置为γv=0.6;

步骤4.3:估计纯净信号的协方差矩阵:

步骤5.1:对Q个权值向量进行独立更新并进行QR分解正交化:

for q=1,…,Q

end

步骤5.2:对权值向量进行逆白化过程,得到广义特征向量的估计量:

步骤6:选取广义特征向量构造变张成滤波器:

其中δ为对角加载因子,其大小设置为10-5

步骤7:将步骤6中滤波后的频域语音数据进行离散反傅里叶变换得到降噪后的纯净语音信号的时域估计。

步骤8:估计去噪语音的增强效果。

实验结论:

实验结果如图3和图4所示。图中标注为Fixed-point的曲线为本发明算法的性能图。图3 刻画了提取Q=2个广义特征向量进行语音降噪后的平均输出信噪比。图4刻画了提取Q=4个广义特征向量进行语音降噪后的平均输出信噪比。从图3可以看出,本发明算法在取得更小的计算复杂度的情况下其实验性能接近传统高复杂度的数值算法,并且性能好于其它的迭代算法。从图3可以看出,当提取数目更多的广义特征向量进行语音增强,本发明算法的实验性能越接近传统高复杂度的数值算法并且远好与其它迭代算法。基于以上仿真结果,验证了本发明算法的实际有效性及计算优越性。

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:人机交互方法、装置、存储介质及终端设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!