计算机应用   2017, Vol. 37 Issue (4): 1212-1216  DOI: 10.11772/j.issn.1001-9081.2017.04.1212
0

引用本文 

徐文超, 王光艳, 陈雷. 改进的变步长最小均方误差电子耳蜗语音增强算法[J]. 计算机应用, 2017, 37(4): 1212-1216.DOI: 10.11772/j.issn.1001-9081.2017.04.1212.
XU Wenchao, WANG Guangyan, CHEN Lei. Speech enhancement algorithm based on improved variable-step LMS algorithm in cochlear implant[J]. Journal of Computer Applications, 2017, 37(4): 1212-1216. DOI: 10.11772/j.issn.1001-9081.2017.04.1212.

基金项目

国家自然科学基金资助项目(61401307);天津市应用基础与前沿技术研究计划项目(14JCZDJC32600);天津商业大学青年科研基金资助项目(150111);国家级大学生创新创业训练计划项目(201610069085)

通讯作者

徐文超 (1981-), 男, 河北衡水人, 实验师, 硕士, 主要研究方向:模式识别、智能控制, E-mail:xuwenchao@tjcu.edu.cn

作者简介

王光艳 (1975-), 女, 河北邯郸人, 副教授, 博士, 主要研究方向:语音信号处理;
陈雷 (1980-), 男, 河北唐山人, 副教授, 博士, 主要研究方向:盲信号处理, 智能计算

文章历史

收稿日期:2016-09-14
修回日期:2016-12-27
改进的变步长最小均方误差电子耳蜗语音增强算法
徐文超, 王光艳, 陈雷    
天津商业大学 信息工程学院, 天津 300134
摘要: 针对外部强噪声环境下电子耳蜗语音质量受损、适应性差等问题,提出了基于谱减法和变步长最小均方误差(LMS)自适应滤波算法联合去噪的改进方法,并以该方法构建了一个电子耳蜗前端语音预处理系统。利用变步长LMS自适应滤波算法输出误差的平方项来调节步长,采用步长值固定与变化相结合的方法,解决了自适应滤波算法收敛速度慢、稳态误差大的问题,适应性得到提高,提高了语音信号通信质量。该系统以TMS320VC5416和音频编解码芯片TLV320AIC23B为核心,通过多通道缓冲串口(McBSP)和串行外设接口(SPI)实现了语音数据的高速采集和实时处理。实验仿真和测试结果表明该算法消除噪声性能好,信噪比在低输入信噪比情况下提高约10 dB,语音质量感知评价(PESQ)分值也得到较大提高,能有效提高语音信号质量,且该系统性能稳定,能进一步提高耳蜗前端语音的清晰度和可懂度。
关键词: 电子耳蜗    噪声抑制    最小均方误差    自适应滤波    语音增强    
Speech enhancement algorithm based on improved variable-step LMS algorithm in cochlear implant
XU Wenchao, WANG Guangyan, CHEN Lei     
College of Information Engineering, Tianjin University of Commerce, Tianjin 300134, China
Abstract: In order to improve the quality of speech signal and adaptability of cochlear implant under strong noise background, an improved method was proposed based on the combination of spectral subtraction and variable-step Least Mean Square error (LMS) adaptive filtering algorithm, and a speech enhancement hardware system for cochlear implant was constructed with this method. Concerning the problem of slow convergence rate and big steady-state error, the squared term of output error was used to adjust the step size of variable-step LMS adaptive filtering algorithm; besides, the combination of fixed and changed values of step was also considered, thus improved the adaptability and quality of speech signal. The speech enhancement hardware system for cochlear implant was composed of TMS320VC5416 and audio codec chip TLV320AIC23B, high-speed acquisition and real-time processing of voice data between TMS320VC5416 and TLV320AIC23B were realized by the interface of Muti-channel Buffered Serial Port (McBSP) and Serial Peripheral Interface (SPI).The Matlab simulation and test results prove that the proposed method has good performance in eliminating noise, the Signal-to-Noise Ratio (SNR) can be increased by about 10 dB in the case of low input SNR, and Perceptual Evaluation of Speech Quality (PESQ) score can be also greatly enhanced, the quality of the voice signal is improved effectively, and the system based on the proposed algorithm has stable performance which further improves the clarity and intelligibility of voice in cochlear implant.
Key words: cochlear implant    noise suppression    Least Mean Square error (LMS)    adaptive filtering    speech enhancement    
0 引言

环境中噪声普遍存在, 特性各异, 语音信号在电子耳蜗传输中不可避免地受到噪声干扰, 尤其是周围环境噪声增强时, 其语音信号受到污染, 通信质量急剧下降, 语音增强的目的就是为了去除背景噪声, 提高抗干扰能力, 从带噪语音信号中提取出有效的语音信号[1]。谱减法具有运算量小,可以有效衰减带噪信号中噪声的优点, 但局限于处理平稳噪声, 而电子耳蜗背景噪声多为非平稳噪声。自适应滤波技术可以根据输入信号和噪声统计特性自动跟踪输入信号和噪声的时间变化, 并不断更新滤波器参数, 减小残留噪声达到最优的滤波效果。

近些年许多学者针对固定步长最小均方误差 (Least Mean Square error, LMS) 自适应滤波算法的缺点进行了变步长LMS自适应滤波算法改进。文献[2]提出的利用Sigmoid函数改进变步长算法, 同时提高了收敛速度和跟踪速度, 获得较小的稳态误差, 但误差函数在曲线底部步长变化太大, 不具有缓慢变化的特点;文献[3]对测量噪声的方差函数进行了改进, 步长值能够及时随测量噪声变化;文献[4]利用反正切函数来调整步长值;文献[5]在MVSS_LMS算法的基础上, 对误差功率函数进行了改进。文献[2-9]提出的算法均对步长值进行了改进, 在收敛速度和稳态误差性能方面都得到很大改善, 但仍存在计算量太大、收敛速度慢和跟踪性能不足等问题。

本文先后使用谱减法和变步长LMS自适应滤波算法联合去噪的方法应用到电子耳蜗前端预处理系统中, 对变步长LMS自适应滤波算法误差函数的平方项进行|e(ke(k-1)|改进, 暂态时步长值固定, 稳态时步长值变化, 提高了收敛速度的同时收敛精度得到提高, 信号的信噪比 (Signal-to-Noise Ratio, SNR) 和语音质量感知评价 (Perceptual Evaluation of Speech Quality, PESQ) 分值也得到较大提高。硬件系统以TMS320VC5416和TLV320AIC23B为核心, 实现了语音信号的高速采集和实时处理, 实验测试结果表明该算法消除噪声性能好, 能有效提高语音信号质量, 使刺激电极重构出纯净的声音信号, 证明了电子耳蜗前端预处理系统的可行性。

1 算法原理分析 1.1 基本谱减法

算法原理分析如下:

假定s(k) 为原始纯净的语音信号, n(k) 为噪声信号, y(k) 为带噪语音信号, 则带噪语音可表示为:

$ \mathit{\boldsymbol{y}}(k)=\mathit{\boldsymbol{s}}(k)+\mathit{\boldsymbol{n}}(k) $ (1)

将式 (1) 两端信号y(k)、s(k)、n(k) 进行傅里叶变换后有

$ \mathit{\boldsymbol{Y}}(w)=\mathit{\boldsymbol{S}}(w)+\mathit{\boldsymbol{N}}(w) $ (2)

将式 (2) 两端进行取模后再平方, 得到

$ |\mathit{\boldsymbol{Y}}(w){{|}^{2}}=|\mathit{\boldsymbol{S}}(w){{|}^{2}}+|\mathit{\boldsymbol{N}}(w){{|}^{2}}+2\operatorname{Re}[\mathit{\boldsymbol{S}}(w){{\mathit{\boldsymbol{N}}}^{*}}(w)] $ (3)

式 (3) 两端分别取数学期望, 得到:

$ \begin{align} & E(|\mathit{\boldsymbol{Y}}(w){{|}^{2}})=E(|\mathit{\boldsymbol{S}}(w){{|}^{2}})+E(|\mathit{\boldsymbol{N}}(w){{|}^{2}})+ \\ & 2E\{\operatorname{Re}[\mathit{\boldsymbol{S}}(w){{\mathit{\boldsymbol{N}}}^{*}}(w)]\} \\ \end{align} $ (4)

由于假设s(k) 和n(k) 相互独立, 所以S(w) 和N(w) 相互独立, 且假定噪声服从零均值高斯分布, 即:

$ \left\{ \begin{align} & 2E\{\operatorname{Re}[\mathit{\boldsymbol{S}}(w){{\mathit{\boldsymbol{N}}}^{*}}(w)]\}=0 \\ & E(|\mathit{\boldsymbol{Y}}(w){{|}^{2}})=E(|\mathit{\boldsymbol{S}}(w){{|}^{2}})+E(|\mathit{\boldsymbol{N}}(w){{|}^{2}}) \\ \end{align} \right. $ (5)

所以, 可以得到

$ |\mathit{\boldsymbol{Y}}(w){{|}^{2}}=|\mathit{\boldsymbol{S}}(w){{|}^{2}}+|\mathit{\boldsymbol{N}}(w){{|}^{2}} $ (6)

噪声模型基于宽平稳假设, 可以根据发音前的无声段来逼近发声段的噪声功率谱|N(w)|2, 得到原始语音信号功率谱:

$ |\mathit{\boldsymbol{S}}(w){{|}^{2}}=|\mathit{\boldsymbol{Y}}(w){{|}^{2}}-|\mathit{\boldsymbol{N}}(w){{|}^{2}} $

即纯净语音信号的估计值为:

$ |\mathit{\boldsymbol{S}}(w)|={{[|\mathit{\boldsymbol{Y}}(w){{|}^{2}}-|\mathit{\boldsymbol{N}}(w){{|}^{2}}]}^{\frac{1}{2}}} $ (7)

将估计后的语音信号相位谱去代替原始带噪语音信号Y(w) 的相位谱, 再进行傅里叶逆变换即得到降噪后的语音时域信号。

1.2 自适应滤波算法

背景噪声是不确定的随机信号, 自适应滤波器通过跟踪信号的变化来调整滤波器结构和参数, 使滤波器的特性随语音信号和噪声的变化而变化, 使算法达到最优的滤波效果。自适应滤波算法最为关键的是求得噪声的最佳估计, 利用滤波器前一时刻的参数去调整后一时刻滤波器控制参数, 即通过前一时刻获得的误差函数e(k) 来控制滤波器参数[10-12]。自适应滤波算法原理框图如图 1所示。

图 1 自适应滤波算法原理框图 Figure 1 Principle of adaptive filtering algorithm

带噪语音信号y1(k) 由语音信号s(k) 和噪声信号N(k) 表示, x(k) 表示输入参考噪声, N1(k) 和N(k) 相关, N1(k) 与s(k) 不相关。自适应滤波算法分析如下:

$ \mathit{\boldsymbol{e}}\left( k \right)={{\mathit{\boldsymbol{y}}}_{1}}\left( k \right)-\mathit{\boldsymbol{d}}\left( k \right)=\mathit{\boldsymbol{s}}\left( k \right)+\mathit{\boldsymbol{N}}\left( k \right)-\mathit{\boldsymbol{d}}\left( k \right) $ (8)
$ \begin{align} & {{\mathit{\boldsymbol{e}}}^{2}}\left( k \right)={{\mathit{\boldsymbol{s}}}^{2}}\left( k \right)+{{\left[\mathit{\boldsymbol{N}}(k)-\mathit{\boldsymbol{d}}(k) \right]}^{2}}+ \\ & \ \ \ \ \ \ \ \ \ 2\mathit{\boldsymbol{s}}(k)\left[\mathit{\boldsymbol{N}}(k)-\mathit{\boldsymbol{d}}(k) \right] \\ \end{align} $ (9)

式 (9) 两端分别进行数学期望后:

$ \begin{align} & E\left[{{\mathit{\boldsymbol{e}}}^{2}}(k) \right]=E\left[{\mathit{\boldsymbol{{s}}}^{2}}(k) \right]+E{{\left[\mathit{\boldsymbol{N}}(k)-\mathit{\boldsymbol{d}}(k) \right]}^{2}}+ \\ & \ \ \ \ \ \ \ \ \ \ 2E\left[\mathit{\boldsymbol{s}}(k)\cdot (\mathit{\boldsymbol{N}}(k)-\mathit{\boldsymbol{d}}(k)) \right] \\ \end{align} $

由于s(k) 与N(k) 不相关、s(k) 与N1(k) 不相关, 所以有

$ 2E\left[\mathit{\boldsymbol{s}}(k)\cdot (\mathit{\boldsymbol{N}}(k)-\mathit{\boldsymbol{d}}(k)) \right]=0 $ (10)

得到

$ E\left[{{\mathit{\boldsymbol{e}}}^{2}}\left( k \right) \right]=E\left[{{\mathit{\boldsymbol{s}}}^{2}}\left( k \right) \right]+E{{\left[\mathit{\boldsymbol{N}}(k)-\mathit{\boldsymbol{d}}\left( k \right) \right]}^{2}} $ (11)

LMS自适应滤波器经过调整权系数后, 可以得到非线性函数E[e2(k)]的极小值点, 式 (11) 左端E[e2(k)]值取最小时, 式 (11) 右端取值也为最小, 即E[N(k)-d(k)]2的值也同时为最小, 而E[s2(k)]的值不变, 所以自适应滤波器的输出d(k) 可以表示为N(k) 的最佳估计, 系统输出为:

$ \mathit{\boldsymbol{e}}\left( k \right)={{\mathit{\boldsymbol{y}}}_{1}}\left( k \right)-\mathit{\boldsymbol{d}}\left( k \right)=\mathit{\boldsymbol{s}}\left( k \right)+\mathit{\boldsymbol{N}}\left( k \right)-\mathit{\boldsymbol{d}}\left( k \right) $ (12)

从而LMS自适应滤波器的输出在最佳估计值d(k) 最接近N(k) 值时, 有e(k)=s(k)。

1.3 变步长LMS自适应滤波算法改进

基本LMS自适应滤波算法的迭代关系式为:

$ \mathit{\boldsymbol{e}}(k)={{\mathit{\boldsymbol{y}}}_{1}}\left( k \right)-{{\mathit{\boldsymbol{X}}}^{\rm{T}}}\left( k \right)\mathit{\boldsymbol{W}}\left( k \right) $ (13)
$ \mathit{\boldsymbol{W}}\left( k+1 \right)=\mathit{\boldsymbol{W}}\left( k \right)+2{{\mu }_{0}}\mathit{\boldsymbol{e}}(k)\mathit{\boldsymbol{X}}(k) $ (14)

步长因子μ0可控制滤波器的自适应速度和稳定性能。式 (13) 中W(k) 为时刻k的滤波器权向量, 式 (14) 表示抽头权向量更新公式。降低步长因子μ0的大小, 可以减少稳态失调噪声, 算法收敛变慢, 提高算法的收敛精度, 但是会降低算法的收敛和跟踪速度, 所以采用变步长LMS自适应滤波算法[13-15]。近些年一些学者相继提出了几种变步长LMS自适应滤波算法, 如基于正弦函数、反正切函数、箕舌线函数的变步长LMS自适应滤波算法。本文如式 (15) 所示的步长公式进行了改进:

$ \mathit{\boldsymbol{\mu }}(k)=\beta (1-\exp (-\alpha |\mathit{\boldsymbol{e}}(k){{|}^{2}})) $ (15)

将|e(ke(k-1)|代替输出误差的平方项e2(k) 来调节步长, 调整后为:

$ \mathit{\boldsymbol{\mu }}(k)=\beta \left( 1-\exp \left(-\alpha \left| \mathit{\boldsymbol{e}}\left( k \right)\mathit{\boldsymbol{e}}\left( k-1 \right) \right| \right) \right) $ (16)

以此来提高算法对不相关噪声的抑制能力, 并且将步长公式采取固定和变化相结合的方法, 在暂态时采用固定值μ1, 且μ1的取值范围应满足收敛条件:λMAX>μ1>0, λMAX为输入信号x(k) 的自相关矩阵R的最大特征值, 在稳态时采用变化的步长值β(1-exp (-α|e(k)e(k-1)|)), 即步长公式为:

$ \mathit{\boldsymbol{\mu }}(k)=\left\{ \begin{align} & {{\mu }_{1}}, \ \ \ \ \ \ \ \ \ k < {{N}_{0}} \\ & \beta \left( 1-\exp \left(-\alpha \left| \mathit{\boldsymbol{e}}\left( k \right)\mathit{\boldsymbol{e}}\left( k-1 \right) \right| \right) \right) \\ & \ \ \ \ \ \ \ \ \ \ \ \ \ \ k\ge {{N}_{0}} \\ \end{align} \right., $ (17)

由谱减法处理后得到纯净语音信号s(k), 然后进行改进的变步长LMS自适应滤波算法处理。算法迭代过程中, 将所处理语音段以滤波器长度进行分段, 分别计算每段自相关矩阵RλMAX, 找出其中最大值;然后N0的大小根据所处理语音信号长度和LMS自适应滤波算法收敛到稳态解反复实验后适当选取。如果迭代次数k < N0, 滤波处理过程中步长因子μ(k) 采用固定步长值μ1;如果迭代次数kN0, 步长因子μ(k) 采用变化的值β(1-exp (-α|e(k)e(k-1)|)), 达到减小自适应滤波算法中的稳态失调噪声、提高算法收敛精度的目的。

输出误差的平方项e2(k) 调整为|e(ke(k-1)|后算法分析:

LMS自适应滤波器的输出误差项:

$ \mathit{\boldsymbol{e}}(k)={{\mathit{\boldsymbol{y}}}_{1}}\left( k \right)-{{\mathit{\boldsymbol{X}}}^{\rm{T}}}\left( k \right)\mathit{\boldsymbol{W}}\left( k \right) $ (18)

期望得到的理想信号y1(k):

$ {{\mathit{\boldsymbol{y}}}_{1}}\left( k \right)={{\mathit{\boldsymbol{X}}}^{\rm{T}}}\left( k \right){{\mathit{\boldsymbol{W}}}^{*}}\left( k \right)+\mathit{\boldsymbol{\xi }}\left( k \right) $ (19)

ξ(k) 与输入噪声无关, 为零均值的独立干扰项, W*(k) 为自适应滤波器时变的最优权矢量。

ψ(k) 表示权系数的偏差矢量:

$ \mathit{\boldsymbol{\psi }}\left( k \right)=\mathit{\boldsymbol{W}}\left( k \right)-{{\mathit{\boldsymbol{W}}}^{*}}\left( k \right) $ (20)

则可以得到

$ {{\mathit{\boldsymbol{e}}}^{2}}\left( k \right)={{\left[\mathit{\boldsymbol{\xi }}\left( k \right)-{{\mathit{\boldsymbol{X}}}^{\rm{T}}}\left( k \right)\mathit{\boldsymbol{\psi }}\left( k \right) \right]}^{2}} $ (21)

将式 (21) 代入式 (17), 步长公式μ(k) 中则会出现ξ2(k) 项, 将使得自适应算法得到最优解变得困难;而且步长μ(k) 不能够准确反映自适应算法收敛前的自适应状态, 只能在最优解范围内上下变化, 如果波动较大则会出现较大的失调。将误差的平方项e2(k) 调整为|e(ke(k-1)|后,

$ \begin{align} & |\mathit{\boldsymbol{e}}(k)\times \mathit{\boldsymbol{e}}(k-1)|={{\mathit{\boldsymbol{\psi }}}^{\rm{T}}}(k)\mathit{\boldsymbol{x}}(k)\mathit{\boldsymbol{\xi }}(k-1)+ \\ & \ \ \ {{\mathit{\boldsymbol{\psi }}}^{\rm{T}}}(k)\mathit{\boldsymbol{x}}(k){{\mathit{\boldsymbol{x}}}^{\rm{T}}}(k-1)\mathit{\boldsymbol{\psi }}(k)+ \\ & \ \ \ \mathit{\boldsymbol{\xi }}(k){{\mathit{\boldsymbol{x}}}^{\rm{T}}}(k-1)\mathit{\boldsymbol{\psi }}(k)+\mathit{\boldsymbol{\xi }}(k)\mathit{\boldsymbol{\xi }}(k-1) \\ \end{align} $ (22)

其中:ξ(k) 是均值为0的噪声, 且ξ(k) 和x(k) 不相关。所以有

$ E[\mathit{\boldsymbol{e}}(k)\times \mathit{\boldsymbol{e}}(k-1)]=E[{{\mathit{\boldsymbol{\psi }}}^{\rm{T}}}(k)\mathit{\boldsymbol{x}}(k){{\mathit{\boldsymbol{x}}}^{\rm{T}}}(k-1)\mathit{\boldsymbol{\psi }}(k)] $ (23)

从式 (23) 可看出, 采用|e(ke(k-1)|调整步长后, ξ2(k) 项对步长μ(k) 的影响可以忽略, 减小了ξ(k) 对μ(k) 的影响, 噪声基本可以忽略, 滤波器自适应状态能得到更准确的反映, 使权系数更加接近最优值; 而且由于不同的变步长LMS自适应滤波算法计算复杂度关键区别为步长因子的计算时间, 本文的变步长公式计算简单, 只用了少量的乘法运算, 降低了所需要的计算量。

1.4 系统语音增强算法实现

算法在CCS (Code Composer Studio) 集成开发环境下进行C语言改写。系统软件设计包括语音增强算法和语音数据输入输出两部分, 语音增强算法部分完成谱减法和LMS自适应滤波算法等功能, 语音数据输入输出部分完成数据的采集、A/D和D/A转换、数据的发送等功能。输入输出语音数据采样速率为8 000 Hz, CPU以帧的形式处理语音数据。

系统程序实现流程如图 2所示。系统上电后, 将程序存储器和数据存储器中的数据引导至CPU的RAM中, 首先进行硬件初始化, 设置串口中断寄存器和其他外部中断源等, 设置各个运行分支的运行标志, 然后分帧进行各分支程序的处理。语音数据每接收满一帧后执行语音增强算法模块程序, 每发送完一帧后, 都将发送缓冲区新数据写入发送寄存器。

图 2 系统程序实现流程 Figure 2 Flow chart of system program
2 电子耳蜗前端语音增强系统硬件设计

硬件系统以TI公司的TMS320VC5416和音频编解码芯片TLV320AIC23B为核心构建, 片外扩展了容量为8 MB的AM29F800作为存储数据和程序的Flash。TLV320AIC23B接收音频模拟信号, 经外部带通滤波器、内部抗混叠滤波后进入A/D转换模块, 将采样信号转换为16 bit的串行数字信号, 进入TMS320VC5416的多通道缓冲串口 (Muti-channel Buffered Serial Port, McBSP0)。TMS320VC5416完成语音增强算法处理后, 数据再经McBSP0传回TLV320AIC23B进行DA转换、重构滤波, 通过TPA4681功率放大模块, 最后经耳机输出语音增强后的模拟音频信号[16-17]图 3是基于DSP的电子耳蜗前端语音增强系统硬件实现框图。

图 3 语音增强系统硬件实现框图 Figure 3 Hardware diagram of speech enhancement system

TLV320AIC23B通过芯片MODE管脚将控制接口设置为串行外设接口 (Serial Peripheral Interface, SPI) 方式, 与TMS320VC5416的SPI进行通信, TMS320VC5416连续发送11个16位数据配置TLV320AIC23B的11个寄存器, 对其进行初始化, 设置工作状态、时钟模式、采样速率等, 输入输出信号增益由程序中修改dB值来调节音频增益。TLV320AIC23B数据通信由DIN和DOUT和TMS320VC5416的McBSP0进行通信, 将Digital Audio-Interface Modes配置为DSP模式 (0X0043), TLV320AIC23B为主模式, 提供时钟源, 产生串行时钟信号和帧同步信号, 由BCLK向CLKR、CLKX发送时钟同步信号, FSX、LRCOUT分别向LRCIN、FSR发送帧同步信号。McBSP0为从模式, 由SPCR1、SPCR2、XCR1、XCR2、PCR1、PCR2、RCR等寄存器配置, TLV320AIC23B发出的时钟同步信号同步McBSP0的收发器, 进行数据的收发。McBSP0默认设置通信格式为16 bit/字的单相位通信方式, 数据无压缩串行通信。

3 实验仿真与测试结果分析 3.1 Matlab仿真分析

为评估本文提出的改进后的语音增强方法的性能, 利用Matlab在不同信噪比下进行测试, 并与分别单独使用谱减算法和本文改进后的算法进行对比, 客观测试方法将输出信噪比SNR和语音质量感知评价PESQ作为评价语音质量的评价指标, 输出信噪比定义如下:

$ SNR=10\lg \frac{\sum\limits_{k=1}^{N}{{{\left[\mathit{\boldsymbol{s}}(k) \right]}^{2}}}}{\sum\limits_{k=1}^{N}{{{\left[\mathit{\boldsymbol{d}}(k)-\mathit{\boldsymbol{s}}(k) \right]}^{2}}}} $ (24)

其中:k为采样点数, N为被测语音信号的总长度, d(k) 为语音增强算法处理后的信号, s(k) 为原始纯净的语音信号。输出信噪比能反映全局噪声衰减、整体的语音质量情况。语音质量感知评价算法计算被测信号和参考信号的差异值,二者的差异值越小,得分就越高,得分取值范围为[0.5, 4.5],取值越高表明语音质量越好,可懂度越高。

语音数据采用夜间实验室环境下录制的标准女生声音作为语音信号源, 录制信号源语速正常, 在信道输出端加入高斯白噪声, 将语音和噪声按比例线性叠加成生成不同信噪比 (-5 dB, 0 dB, 5 dB, 10 dB) 的带噪信号分别进行降噪处理, 语音信号采样速率为8 kHz, 采样精度为16 bit量化, λMAX最大约为2.55, N0=200, 对带噪信号使用汉明窗进行分帧, 并且每帧512个采样点, 帧间叠加128个采样点。SNR=0 dB时的处理结果如图 4所示, 可看出不同算法的提升效果。

图 4 SNR=0 dB时实验仿真结果 Figure 4 Simulation results of SNR=0 dB

为了进一步验证本文改进后算法的实验效果, 表 1列出了语音信号在加入白噪声后不同信噪比下分别使用三种算法降噪处理后的输出信噪比和PESQ得分。

表 1 不同信噪比下降噪处理后性能对比 Table 1 Performance comparison under different SNR of input signal

图 4的实验效果中可以得到:本文提出的谱减法和变步长LMS自适应滤波联合去噪的方法在信噪比0 dB时降噪效果比基本谱减法要更加明显, 可较好地还原语音信号, 有效去除语音信号的噪声成分。由表 1中仿真结果显示, 本文方法信噪比得到了进一步提高, 低输入信噪比情况下提高约10 dB, PESQ仿真结果得分有较大的提高, 增强后的语音质量要优于分别单独使用其他两种算法, 尤其是在低信噪比情况处理后语音更为清晰, 表明本文改进方法对提高语音质量有一定的效果, 达到了算法的目的。

3.2 硬件系统测试效果分析

完成算法Matlab仿真测试后, 在DSP硬件系统进行测试效果分析, 验证算法的有效性。测试中将含噪语音信号通过带通滤波后输入TLV320AIC23B音频输入端, 经过A/D转换后进入TMS320VC5416, 在CCS集成开发环境下进行实时仿真测试。通过菜单选项View→Graph→Time/Frequency进入图形观察窗口, 在窗口Graph Property Dialog中设置语音段的起始地址、显示数据长度等参数。运行后在图形显示窗口显示波形如图 5所示。其中图 5(b)为加入白噪声后含噪信号 (信噪比为0 dB)。

图 5 语音增强前后信号对比 Figure 5 Speech signal comparison before and after enhancement

通过对比图 5可知, 本文采用的改进算法有效地降低了语音信号的噪声成分, 取得明显降噪效果, 实时测试结果接近于Matlab仿真效果, 系统可以可靠地进行语音信号实时处理。系统语音输出端通过功率放大模块后接入耳机进行主观听觉测试, 语音信号中的噪声成分明显减弱, 听觉明显清晰, 可以较好地应用于电子耳蜗前端预处理系统中。

4 结语

本文将谱减法和变步长LMS自适应滤波算法联合去噪的方法应用到电子耳蜗前端预处理系统中, 算法处理上对步长值采用固定和变化相结合的方法, 收敛速度和收敛精度得到提高, 降低了自适应滤波算法的稳态失调噪声, 权系数更加接近最优值。系统硬件以TMS320VC5416和TLV320AIC23B为核心, 通过多通道缓冲串口McBSP0和SPI进行数据通信和命令控制, 实现了语音信号的高速采集和实时处理, 系统运行稳定可靠。大量实验测试结果表明, 本文算法应用于电子耳蜗前端预处理系统中能有效抑制含噪语音信号的噪声成分, 信噪比和PESQ分值有较大的提高, 可以获得更多可懂度的声音信息, 明显提高了电子耳蜗的抗噪性能。

参考文献
[1] 胡航. 现代语音信号处理[M]. 北京: 电子工业出版社, 2014 : 15 -20. ( HU H. Modern Speech Signal Processing[M]. Beijing: Publishing House of Electronics Industry, 2014 : 15 -20. )
[2] 覃景繁, 欧阳景正. 一种新的变步长LMS自适应滤波算法[J]. 数据采集与处理, 1997, 12 (3) : 171-172. ( QIN J F, OUYANG J Z. A novel variable step size LMS adaptive filtering algorithm based on sigmoid function[J]. Journal of Data Acquisition & Processing, 1997, 12 (3) : 171-172. )
[3] 倪锦根, 李峰. 一种新的变步长最小均方自适应滤波算法[J]. 信息与电子工程, 2008, 6 (1) : 10-13. ( NI J G, LI F. A novel variable step-size LMS adaptive filtering algorithm[J]. Information and Electronic Engineering, 2008, 6 (1) : 10-13. )
[4] 朱斌, 马艳. 一种新的变步长LMS算法分析[J]. 计算机仿真, 2008, 25 (9) : 93-95. ( ZHU B, MA Y. Performance analysis of a novel variable step size LMS algorithm[J]. Computer Simulation, 2008, 25 (9) : 93-95. )
[5] 任志钊, 徐建成, 闫永鹏. 一种改进的变步长LMS自适应滤波算法及性能分析[J]. 计算机应用研究, 2011, 28 (3) : 954-956. ( REN Z Z, XU J C, YAN Y P. Improved variable step size LMS adaptive filtering algorithm and its performance analysis[J]. Application Research of Computers, 2011, 28 (3) : 954-956. )
[6] 高榕, 张仕凯, 李靖, 等. 自适应滤波器消除语音信号中混合噪声[J]. 河南科技大学学报 (自然科学版), 2012, 33 (4) : 42-45. ( GAO R, ZHANG S K, LI J, et al. Adaptive filter to eliminate mixed noise in speech signal[J]. Journal of Henan University of Science & Technology (Natural Science), 2012, 33 (4) : 42-45. )
[7] 彭军, 王忠. 基于多窗谱相关加权语音增强[J]. 计算机仿真, 2011, 28 (3) : 142-145. ( PENG J, WANG Z. Correlation weighting enhancement of speech based on multitaper spectrum[J]. Computer Simulation, 2011, 28 (3) : 142-145. )
[8] 高鹰, 谢胜利. 一种变步长LMS自适应滤波算法及分析[J]. 电子学报, 2001, 29 (8) : 1094-1097. ( GAO Y, XIE S L. A variable step size LMS adaptive filtering algorithm and its analysis[J]. Acta Electronica Sinica, 2001, 29 (8) : 1094-1097. )
[9] 华强, 夏哲雷, 祝剑英. 一种改进的变步长LMS自适应滤波算法及仿真[J]. 中国计量学院学报, 2012, 23 (3) : 304-308. ( HUA Q, XIA Z L, ZHU J Y. A modified variable step size LMS adaptive filtering algorithm and its simulation[J]. Journal of China University of Metrology, 2012, 23 (3) : 304-308. )
[10] 代少升, 马东鸽. 基于DSP的语音信号自适应滤波系统的设计与实现[J]. 重庆邮电大学学报 (自然科学版), 2011, 23 (4) : 432-435. ( DAI S S, MA D G. Design and realization of the voice signal self_adaptive filtering system based on DSP[J]. Journal of Chongqing University of Posts and Telecommunications (Natural Science Edition), 2011, 23 (4) : 432-435. )
[11] DAWSON P W, MAUGER S J, HERSBACH A A. Clinical evaluation of signal-to-noise ratio based noise reduction in nucleus cochlear implant recipients[J]. Ear and Hearing, 2011, 32 (3) : 382-390. doi: 10.1097/AUD.0b013e318201c200
[12] DERAKHSHAN N, AKBARI A, AYATOLLAHI A. Noise power spectrum estimation using constrained variance spectral smoothing and minima tracking[J]. Speech Communication, 2009, 51 (11) : 1098-1113. doi: 10.1016/j.specom.2009.04.008
[13] MACHEREY O, DEEKS J M, CARLYON R P. Extending the limits of place and temporal pitch perception in cochlear implant users[J]. Journal of the Association for Research in Otolaryngology, 2011, 12 (2) : 233-251. doi: 10.1007/s10162-010-0248-x
[14] SUN Y B, HU Y L. Communication mechanism based on test platform for cochlear chip[J]. Computer Measurement & Control, 2013, 21 (12) : 3309-3313.
[15] 王瑜琳, 田学隆, 高雪利. 自适应滤波语音增强算法改进及其DSP实现[J]. 计算机工程与应用, 2015, 51 (1) : 208-212. ( WANG Y L, TIAN X L, GAO X L. DSP realization of modified speech enhancement algorithm based on adaptive filters[J]. Computer Engineering and Applications, 2015, 51 (1) : 208-212. )
[16] 陈勇, 田金鹏, 刘燕平. 一种新的变步长LMS自适应滤波算法[J]. 电子测量技术, 2015, 38 (4) : 27-31. ( CHEN Y, TIAN J P, LIU Y P. New variable step size LMS adaptive filtering algorithm[J]. Electronic Measurement Technology, 2015, 38 (4) : 27-31. )
[17] 陈兆岭, 刘国海, 杨晨星. 提高谐波电流检测性能的LMS/LMF自适应滤波器[J]. 仪器仪表学报, 2014, 34 (5) : 1036-1042. ( CHEN Z L, LIU G H, YANG C X. LMS/LMF adaptive filter for harmonic current detection performance improvement[J]. Chinese Journal of Scientific Instrument, 2014, 34 (5) : 1036-1042. )