语音端点检测即在包含语音的信号流中区分语音和非语音信号,确定有效语音段的起始点,是语音信号处理中的关键技术。随着人工智能技术的兴起,准确的端点检测技术能提高语音识别系统的精度。目前,语音端点检测方法主要有基于特征阈值、基于人工神经网络、基于模式识别的检测技术[1]。但由于基于人工神经网络[2]和模式识别[3]的检测需要事先训练建立模型,且运算量大不易实时实现,所以特征阈值检测成为实时语音检测的研究热点[4]。目前,语音端点检测较常用的方法有基于时域的短时能量[5]、对数能量、过零率[6]等;基于频域的频带方差;基于熵信息论的谱熵法[7];以及基于以上参数结合改进的特征,如子带谱熵[8],能熵比[9],这些参数只在高信噪比及平稳噪声环境下有较好的检测结果。基于距离测度的特征参数,如对数倒谱距离[10],以及基于人耳特性提取的MFCC距离特征[11]等,它们在较低信噪比平稳背景下有较好的检测性能但在高信噪比下会出现较多的扩展错误。基于统计模型的似然检验[12]在较低信噪比下非平稳噪声背景有较好的检测性能,但低信噪比下检测正确率和稳定性仍需提高。由于语音处理系统的工作环境是不同的,因此检测算法必须能够稳定地工作在不同的噪声环境下,这就需要算法具有较强的鲁棒性。
基于上述考虑,本文提出一种多参数融合的自适应语音端点检测方法。该方法首先从变换域、熵信息论、距离测度以及统计模型类型入手,分别提取改进的子带谱方差、能熵比、梅尔倒谱距离以及似然比四种特征参数,并自适应动态更新各参数阈值。然后通过监测噪声段能熵比值来确定投票判决机制进行语音端点的检测。此方法虽然比传统单一参数提取增加了一定的计算量,但是可以在不同噪声环境下,尤其是低信噪比下得到更好的判决结果,有更好的鲁棒性。
语音能量随频带有较大变化,而噪声分布更均匀,变化更缓慢。因此常用频带方差作为端点检测特征参数。多窗谱估计能用较短数据获得更小方差,更高分辨率的功率谱,更能体现信号谱的特征[13]。所以本文用多窗谱估计代替传统傅里叶变换进行均匀子带谱方差特征提取。
设语音信号序列x(n),帧长为N,L为数据窗个数,则第i帧的多窗谱定义[14]如下:
(1)
(2)
其中ak(n)为第k个数据窗,各数据窗相互正交,满足下列公式:
(3)
将谱线均匀分割为q个子带(各含p条谱线),则第i帧的第m个子带SSi(m)为:
(4)
则第i帧子带均值Ei和方差Di分别为:
(5)
(6)
语音信号能量大起伏激烈,方差值就大;而噪声较语音来说能量小起伏平缓,方差值更小。
设加窗分帧后的信号为xi(m),则第i帧对数能量值LEi为:
(7)
(8)
其中a=2时取得较好性能[9]。
每帧的短时谱熵可定义为:
(9)
其中N为FFT长度,pi(k)为归一化谱概率密度函数。则第i帧能熵比EHi表示为:
(10)
语音段能量一般大于噪声段,谱熵低于噪声段,二者结合的能熵比可以提高检测能力。
倒谱距离参数根据每帧信号与噪声帧的倒谱距离轨迹进行判定。梅尔倒谱系数是在人类听觉机理基础上提取的频谱特性参数。用Mel标度描述人耳耳蜗感知性能与声音频率f的非线性关系如下[15]:
(11)
提取MFCC特征的原理如图1所示。
图1 MFCC特征提取框图
Fig.1 MFCC feature extraction block diagram
则第i帧信号的MFCC参数为:
mfcc(i, j)=
(12)
其中m指第m个Mel滤波器(共M个), j是离散余弦变换(DCT)后的谱线。计算噪声段MFCC参数平均值mfccnoise(j),则第i帧信号的MFCC参数mfccsignal(i, j)与其的倒谱距离可表示为:
(13)
其中p为MFCC倒谱分析中的阶数。语音帧的倒谱距离相比噪声帧要大,由此进行语音与噪声的判定。
似然比参数通过似然比检验法将每帧信号与建立的噪声语音统计模型进行适配程度评估。假设语音与噪声信号是统计独立的高斯随机过程。用Y,X,O分别代表N(帧长)维含噪语音谱矢量,纯净语音谱矢量,加性噪声谱矢量。设语音存在为H1,此时Y=X;语音不存在为H0,此时Y=X+O。两者条件概率密度为p(Y|H0)和p(Y|H1),则第k个频带分量似然比Λk[16]为:
(14)
(15)
其中εk为先验信噪比,γk为后验信噪比,λxk,λok为Xk,Yk的方差。
提取基于直接决策的似然比参数为:
(16)
(17)
其中,为第i-1帧的第k个频带分量的谱幅度估计[18],当α为0.98时,可以取得较好效果[19]。代入式(14),第i帧各频点几何平均对数似然比参数r(i)和判决规则如下:
(18)
当r(i)小于阈值T则与噪声统计模型更为适配,判定为噪声帧,相反则为语音帧。
由于环境信噪比的不同以及噪声平稳性的不同,各参数用于端点检测的性能也有所不同。而本文算法提取四种常用的端点检测特征参数,然后结合根据噪声段能熵比值所确定的投票机制进行端点检测。其可以有效弥补传统端点检测算法在低信噪比不同类型噪声下表现的不稳定性,由此增加了语音端点检测的正确率且适应的噪声环境多样性。图2为提出的多特征融合端点检测算法原理图。
图2 本文提出算法原理图
Fig.2 Schematic diagram of proposed algorithm
噪声段能熵比的值可以反映其的能量大小以及平稳程度。基于此,本文通过实时检测噪声段能熵比的值从而确定采用的投票判决机制,具体投票机制如下所述:
(1)投票判决机制1:在高信噪比或噪声平稳情况下,噪声段能量较低,信息熵值高,则二者结合提取的噪声能熵比特征参数EHth值就低。当检测噪声段能熵比值EHth≤β时,本文提取的四种参数特征都能较好地分离出噪声段与语音段。但为了避免出现较多的扩展错误,即将噪声段误认为是语音段的错误,此时投票判决机制1设定为只要有两种及以上参数小于各自的参数阈值就判定为进入噪声段。
(2)投票判决机制2:在低信噪比或非平稳噪声情况下,噪声段能量较高,信息熵值低,则二者结合提取的能熵比值就呈现高值。当检测噪声段能熵比值EHth>β时,为减少判决出现截断错误,即将语音段认为是噪声段,此时投票判决机制2为至少三种特征参数小于各自的参数阈值才认为进入噪声段。其中阈值β为进行大量实验仿真后选取的最佳值1.15。
本文提取语音信号的均匀子带谱方差,能熵比,MFCC距离,似然比四个特征参数,结合本文提出的投票机制进行语音端点的判决。算法进行端点检测的步骤如下。
步骤1 对含噪语音信号进行加窗分帧的处理,并去除直流分量。
步骤2 按章节2所述提取信号的四个参数特征,并进行相邻帧平滑,去除少量野点,得到平滑后的特征参数:多窗谱子带谱方差D(i),能熵比EH(i),MFCC距离d(i),似然比r(i)。
步骤3 初始判决门限计算。
语音初始无声段帧数表示为NIS,多窗谱子带谱方差阈值为T1,能熵比阈值为T2, MFCC距离阈值为T3,似然比阈值为T4,各参数初始阈值设置为:
(19)
其中a=2,b=1.014,c=1.22,d=0.125。
当各参数小于各自阈值时,各参数认为其为噪声帧。然后通过投票判决机制后,最终确定当前帧是否为噪声帧。
步骤4 自适应阈值更新及端点判定。
确定当前帧为噪声帧后,更新各参数的判决门限。由于在某些突发噪声情况时,可能会被判定为语音帧,所以跟踪噪声段的前三帧参数的最小值来减少这种错误。本文通过实时跟踪噪声变化,实现自适应更新门限,更新公式如下:
(20)
其中a,b,c,d值同式(19),α=0.99,β=0.01。为避免清音被判定为噪声,加入延迟机制,即当噪声段帧数大于8时,才判定为是噪声段,否则仍判定为语音段。
本文实验音频为TIMIT语音库中的男女各60条纯净语音,并在音频中分别加入NOISEX-92标准噪声库中的白噪声,粉红噪声,汽车噪声,工厂噪声及众人嘈杂声作为噪声源,再生成信噪比为-8 dB、-5 dB、-3 dB、0 dB、3 dB、5 dB的含噪语音进行仿真实验。
首先利用传统端点检测方法将纯净语音进行标注,作为端点检测的参考标准。然后将含噪语音通过要评价的方法进行端点检测。语音端点检测的评价指标有很多,为验证本文方法的检测性能,采用以下两种普遍认同且较好的评价指标:
(1)加权错误测度。噪声帧被检测为语音时,称作扩展错误,相反语音帧被检测为噪声时,称为截短错误[20]。由于扩展错误更容易被人接受,所以加权错误测度指标WA定义如下:
(21)
其中WDN表示扩展错误帧数,CLP表示截短错误帧数,Frams表示语音信号总帧数,加权系数k=0.6,l=1.4[21]。
(2)检出率与误判率[4]。定义如下:
(22)
(23)
其中N0为对纯净语音进行语音端点标记的参考标准集合,Nn为所评价方法对加噪语音信号进行检测后语音端点标记的集合。
将提出的方法与现在广泛应用的国际电信联盟提出的同为多特征提取算法的G729B标准[22],改进的似然比端点检测SLRT[16]以及能熵法[9]进行对比。首先在-3 dB时,不同噪声环境下,两种方法的评价指标如下:
(1)错误测度(WA)评价结果如表1所示,当WA>40%认为失效。
(2)检出率评价结果如表2及表3所示,检出率<60%认为失效,误判率>60%认为失效。
表1 SNR=-3 dB,本文方法与其他方法检测的 WA评价结果对比
Tab.1 SNR=-3 dB, Comparison of WA evaluation results
噪声类型本文算法G729BSLRT能熵White33.74%失效失效失效Pink21.24%失效失效29.39%Volvo12.29%18.25%11.31%失效Factory120.72%失效22.30%18.84%Babble18.53%27.42%16.02%31.11%
表2 SNR=-3 dB,本文方法与其他方法检测的检出率对比
Tab.2 SNR=-3 dB, Comparison of detection rate results
噪声类型本文算法G729BSLRT能熵White66.78%失效失效失效Pink84.89%失效失效80.68%Volvo97.96%98.82%99.42%失效Factory190.26%64.04%87.91%95.92%Babble91.51%88.97%97.22%81.61%
表3 SNR=-3 dB,本文方法与其他方法检测的误判率对比
Tab.3 SNR=-3 dB, Comparison of false rate results
噪声类型本文算法G729BSLRT能熵White51.61%失效失效失效Pink29.85%失效失效41.47%Volvo21.40%29.74%20.69%失效Factory131.03%失效32.58%29.73%Babble28.13%39.36%26.55%43.76%
由以上两种测评结果可以得出,其余三种方法至少都存在两种噪声环境下检测失效;而本文提出的方法在所有情况下都具有较好性能,且在white,pink下最优,其余情况下与最优的方法具有相仿的评价结果。
为更好的体现本文方法在低信噪比下的鲁棒性,利用信噪比为-8 dB~5 dB下各类噪声的评价平均值进行比较。结果如图3、图4、图5所示。
图3 不同噪声下平均WA评价对比
Fig.3 Comparison of average WA evaluation under different noises
图4 不同噪声下平均检出率对比
Fig.4 Comparison of average detection rate under different noises
图5 不同噪声下平均错误率对比
Fig.5 Comparison of average false rate under different noises
语音端点检测需要适应各类不同的环境,即需要较强的稳定性及正确率。本文提出的多参数融合算法弥补了单一参数在低信噪比不同噪声环境下的不稳定性,自适应的投票判决机制也增加了低信噪比下的检测正确率。从仿真实验数据可以得到证实,随着信噪比降低,本文提出的端点检测算法具有更小的错误测度,和较高的检出率及较小的误判率,即在各信噪比下,尤其是低信噪比下不同类型噪声环境中都可以达到较好的检测效果。另外本文提出的方法虽然付出了比传统单一参数相比增加的计算代价,但其表现出了语音端点检测需要的较强的鲁棒性,且在低信噪比下具有较明显的优势。因此,本文语音端点检测的方法对于语音信号处理的后续工作如语音增强,语音识别以及语音信号传输等方面有一定的借鉴意义。
[1] 韩立华, 王博, 段淑凤. 语音端点检测技术研究进展[J]. 计算机应用研究, 2010, 27(4): 1220-1226.
Han Lihua, Wang Bo, Duan Shufeng. Development of voice activity detection technology[J]. Application Research of Computers, 2010, 27(4): 1220-1226.(in Chinese)
[2] Ivry A, Berdugo B, Cohen I. Voice Activity Detection for Transient Noisy Environment Based on Diffusion Nets[J]. in IEEE Journal of Selected Topics in Signal Processing, 2019, 254: 264.
[3] 张毅, 倪雷. 基于模糊熵与改进相关向量机的语音端点检测[J]. 华中科技大学学报(自然科学版), 2017, 45(8): 15-19.
Zhang Yi, Ni Lei. Speech Activity Detection Based on Fuzzy Entropy and Improved Relevance Vector Machine[J]. Journal of Huazhong University of Science and Technology(Nature Science), 2017, 45(8): 15-19.(in Chinese)
[4] 朱春利, 李昕. 基于多特征融合与动态阈值的语音端点检测方法[J]. 计算机工程, 2019, 45(2): 250-257.
Zhu Chunli, Li Xin. Speech Endpoint Detection Method Based on Multi-Feature Fusion and Dynamic Threshold[J]. Computer Engineering, 2019, 45(2): 250-257.(in Chinese)
[5] 林琴, 涂铮铮, 王庆伟, 等. 一种基于近邻传播聚类的语音端点检测方法[J]. 安徽大学学报(自然科学版), 2019, 43(3): 27-32.
Lin Qin, Tu Zhengzheng, Wang Qingwei, et al. Voice activity detection based on affinity propagation clustering[J]. Journal of Anhui University(Natural Sciences), 2019, 43(3): 27-32.(in Chinese)
[6] Zaw, Thein Htay, Nu War. The Combination of Spectral Entropy, Zero Crossing Rate, Short Time Energy and Linear Prediction Error for Voice Activity Detection[C]∥2017 20th International Conference of Computer and Information Technology (ICCIT), 2018 (2017): 1-5.
[7] 郭武, 马啸空. 复杂噪声场景下的活动语音检测方法[J]. 清华大学学报(自然科学版), 2016, 56(11): 1190-1195.
Guo Wu, Ma Xiaokong. Voice activity detection in complex noise environment[J]. Journal of Tsinghua University(Science and Technology), 2016, 56(11): 1190-1195.(in Chinese)
[8] 刘慧, 杨玉清, 鲁梦瑶, 等. 农产品市场环境下语音端点检测的研究[J]. 自动化技术与应用, 2019, 38(5): 129-134.
Liu Hui, Yang Yuqing, Lu Mengyao, et al. Research on Speech Endpoint Detection Agricultural Market Environment[J]. Techniques of Automation and Applications, 2019, 38(5): 129-134.(in Chinese)
[9] 宋知用. MATLAB语音信号分析与合成[M]. 北京: 北京航空航天大学出版社, 2018.
Song Zhiyong. Speech signal analysis and synthesis in MATLAB[M]. Beijing: Beijing University of Aeronautics and Astronautics Press, 2018.(in Chinese)
[10]王民, 孙广, 沈利荣, 等. 基于对数能量倒谱特征的端点检测算法[J]. 计算机工程与应用, 2014(16): 198-201.
Wang Min, Sun Guang, Shen Lirong, et al. Voice activity detection using logarithmic energy and cepstrum Distance[J]. Computer Engineering and Applications, 2014(16): 198-201.(in Chinese)
[11]Cao D, Gao X, Gao L. An Improved Endpoint Detection Algorithm Based on MFCC Cosine Value[J]. Wireless Personal Communications, 2017(3): 2073- 2090.
[12]Sohn J, Sung W. A voice activity detector employing soft decision based noise spectrum adaptation[C]∥Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, 1998: 365-368.
[13]吴边, 王忠, 刘兴涛. 强背景噪声下语音端点检测的算法研究[J]. 计算机工程与应用, 2011, 47(33): 137-139.
Wu Bian, Wang Zhong, Liu Xingtao. Research on speech endpoint detection in strong noise[J]. Computer Engineering and Applications, 2011, 47(33): 137-139.(in Chinese)
[14]Hu Y, Loizou P C. Speech enhancement based on wavelet thresholding the multitaper spectrum[J]. IEEE Transactions on Speech and Audio Processing, 2004, 12(1): 59- 67.
[15]许春冬, 周静, 应冬文, 等. 心音信号MFCC特征向量提取方法的优化[J]. 信号处理, 2019, 35(3): 410- 418.
Xu Chundong, Zhou Jing, Ying Dongwen, et al. Optimization of the Extraction Method of MFCC Feature Vectors for Heart Sound Signals[J]. Journal of Signal Processing, 2019, 35(3): 410- 418.(in Chinese)
[16]雷建军, 王坚, 刘刚, 等. 似然比测试语音激活检测算法研究[J]. 计算机工程与应用, 2008, 44(36): 34-36, 41.
Lei Jianjun, Wang Jian, Liu Gang, et al. Research on voice activity detection algorithm based on Likelihood Ratio Test[J]. Computer Engineering and Applications, 2008, 44(36): 34-36, 41.(in Chinese)
[17]Sohn J, Kim N S, Sung W. A statistical model-based voice activity detection[J]. IEEE Signal Processing Letters, 1999, 6(1): 1-3.
[18]Ephraim Y, Malah D. Speech enhancement using a minimum-mean square error short-time spectral amplitude estimator[J]. In IEEE Transactions on Acoustics, Speech, and Signal Processing, December 1984, 32(6): 1109-1121.
[19]洛伊索, 高毅. 语音增强理论与实践[M]. 北京: 电子科技大学出版社, 2012.
Loizou, Philipos C, Gao Yi. Speech enhancement theory and practice[M]. Beijing: University of Electronic Science and Technology Press, 2012.(in Chinese)
[20]王博, 郭英, 韩立峰. 基于熵函数的语音端点检测算法研究[J]. 信号处理, 2009, 25(3): 368-373.
Wang Bo, Guo Ying, Han Lifeng. Research on Entropy Based Voice Activity Detection Algorithms[J]. Journal of Signal Processing, 2009, 25(3): 368-373.(in Chinese)
[21]徐望, 丁琦, 王炳锡. 一种基于特征空间能量熵的语音信号端点检测算法[J]. 通信学报, 2003, 24(11): 125-132.
Xu Wang, Ding Qi, Wang Bingxi. A speech endpoint detector based on eigenspace-energy-entropy[J]. Journal on Communications, 2003, 24(11): 125-132.(in Chinese)
[22]“ITU-T Rec. G.729”, A Silence Compression Scheme for G.729 Optimized for Terminals Conforming to ITU-T V.70.
雷 静 女, 1996年生, 四川人。四川大学硕士研究生, 研究方向为信号与信息处理。
E-mail: amber_jl@163.com
何培宇(通讯作者) 女, 1963年生, 四川人。四川大学教授, 博士生导师, 主要研究方向为麦克风阵列信号处理、语音/声信号分析与处理及其应用等。
E-mail: hpysbsy@163.com
徐自励 男, 1974年生, 贵州人。中国民用航空局第二研究所, 研究员, 主要研究方向为信号处理、定位技术、航空电子系统。
E-mail: xuzili@caacsri.com