含噪语音信号端点检测

2017-10-19 05:47罗海涛
计算机时代 2017年10期
关键词:波包端点幅值

罗海涛

(广东外语外贸大学信息学院,广东 广州 510420)

含噪语音信号端点检测

罗海涛

(广东外语外贸大学信息学院,广东 广州 510420)

MATLAB是一个功能强大的数学软件,可以进行数值运算、函数或信号处理、绘制图形。处理含噪语音信号,通常需要首先消除噪声,与语音信号相比,交通噪声频率较低。根据Daubechies方法,构造小波,并据此导出小波包。再用小波包对含噪语音信号进行分解。该算法检测语音端点,获得良好效果。

MATLAB;语音信号处理;小波包;端点检测

0 引言

MATLAB是MATrix LABoratory的缩写,可直译为矩阵实验室,是美国MathWorks公司出品的数学软件,是一个用于数值计算、数据分析、数据可视化等的交互式环境。

正如其名称(矩阵实验室)所显示的,MATLAB的基本数据单位是矩阵,包括向量,MATLAB可以进行矩阵和向量运算、绘制函数图形和数据图形、实现算法、创建用户界面、连接运行其他编程语言的程序等。它的指令表达式与普通的数学和工程中常用的表达式很相似,因而很容易掌握和使用,比用C,FORTRAN等语言编程解决同样的问题简捷得多,效率高得多。加之具有强大的数据处理、图形绘制和图像处理能力,其具体应用领域包括工程计算、控制设计、数字信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的新版本中还增加了对C,FORTRAN,C++,JAVA等语言的支持,可以直接调用,也可以将自己编写的程序导入MATLAB函数库中以便以后调用。此外,MATLAB针对许多专门的领域开发了功能强大的模块集和工具箱,这些工具箱一般由特定领域专业人员开发、编写代码,用户可以直接使用而不需要自己编写代码。MATLAB还提供了完整的联机查询、帮助系统,更加方便用户使用。加之MATLAB提供了比较完备的调试系统,代码和程序可以逐条解释执行,也可以通过编译来运行,调试工具能够及时报告出现的错误,并且分析出错原因。MATLAB环境下集成了语音信号处理工具箱,提供了大量的函数读写音频文件,提高了处理效率,如果用C语言编程读写音频文件,需要很多代码并且多次调试[2]。

小波分析是近30多年来发展起来的新兴学科,是傅立叶变换突破性的发展,为很多领域和工程应用提供了全新的工具。其思想相当于多采样率的滤波器组,对一个函数或者信号进行滤波分解,得到两部分分解结果,即低频部分也叫离散逼近(approximation),和高频部分,也叫离散细节(detail)。还可以根据需要,分别对这两部分参数进行小波分解,得到4个部分参数;分解过程可以一直进行下去,理论上可以分解无数次,最后得到一棵完整的二叉树[1]。

1 构造小波

根据Daubechies方法,可以构造小波[3-4]。首先,我构造了一个尺度滤波器,也称为低通重构滤波器。在频域,该滤波器如式⑴所示:

上面两个式子相等,因而它们的对应系数也相等,所以:

根据式⑵,有:

而根据式⑴,有:

上面两个式子相等,因而它们的对应系数相等,所以:

最终我们可以得到系数:h0=-0.129,h1=0.224,h3=0.837,h4=0.483。

对应的尺度函数j(t)和小波函数y(t)如图1所示。

图1 尺度函数j(t)和小波函数y(t)

根据尺度函数j(t)和小波函数y(t),我们可以导出小波包。

2 小波包对含噪语音信号端点检测

本人在吵杂的公路边录制了中文语音“0”,“1”,……,“十”,“百”,“千”和“万”,录制为“.wav”音频文件。这样,语音信号就掺杂了交通噪声,这些音频信号都是44100Hz的采样数字信号。图2和图3是其中的两个音频文件的波形图。

图2 语音“0”

图3 语音“1”

本人用前面导出的小波包,把每个带噪信号分解至第7级,图4和图5显示语音“0”的两个端节点参数。

图4 节点(7,0)或者127

图5 节点(7,1)或者128

图4是语音信号的第7级离散逼近参数(approximation coefficients),经过数次测试,可以得知,与正常语音信号相比,交通噪声处于相对较低的频率。

对于其他端节点参数,可以压缩其中的部分参数,而保持其余部分不变。图5所示,幅值较大的部分对应语音信号,其余幅值较小的部分对应噪声。其他节点参数例如节点129、130等等,都是这种情况。为了消除噪声,以图5为例,把幅值小的部分参数置零,其余部分参数保持不变。这样做是因为每个汉字发音只有一个音节,在该音节时间段内,节点参数对应的是语音和噪声,当然噪声幅值相对较小。在该音节时间段之外,节点参数对应的完全是噪声。为了简单起见,一个音节时间段内的节点参数可以保持不变。

需确定语音信号的起始点和终止点。从图5可以看出,对应语音信号的参数数据幅值明显比其余参数大很多,这是因为在这个频率上,噪声幅值比语音幅值小很多。其他端节点的情况类似于端节点127,即离散逼近端节点,所以,我们有以下的语音端点检测算法:

a.设置一个阈值,例如0.5倍的节点参数绝对值的最大值,设置一个指示变量为0;

b.开始,取第1个参数数据x;

c.如果x的绝对值大于阈值,转下一步,否则,转步骤e;

d.如果指示变量等于0,设置语音起始点为x的序号,设置指示变量为1;否则设置语音结束点位x的序号;

e.取下一个参数数据x,转步骤c,直至完成。

以上算法可以保证得到分别对应于语音信号的起始点和终止点的,小波包分解后的参数数据的对应序号,再由此可以倒查出原始带噪语音信号的起始端点和结束端点。

3 结束语

传统的去噪过程中,噪声频率比语音信号频率高很多,但是交通噪声能量主要集中在比语音信号频率低的部分。这种情况下,常用的消除噪声方法并不适用,很难直接进行语音端点检测。本文尝试用小波对含噪语音信号进行分解,从上述结果可以看出,分解后更加容易检测语音信号的起始端点和结束端点,得到的结果更加准确。

小波分析方法在信号处理中有着广阔的应用前景,尤其在消除噪声、信号的奇异点检测方面,有很成功的应用。例如,Donoho[5]提出了一个正式的“去噪”解释,并且展示小波变换如何用来“去噪”。他进一步证明“去噪”信号在大范围的情况下都成功,而以往非小波方法只能部分地成功。所以下一步可以结合含噪信号奇异点信息,进行深入的研究,更加精确的实现端点检测、消除噪声、获取语音特征参数等。

[1]Luo,Haitao,Local Thresholding de-noise speech signal.Proceedings ofSPIE-The InternationalSociety for OpticalEngineering[C].v8878,2013,Fifth International Conference on Digital Image Processing,ICDIP,2013.

[2]罗海涛.wav格式与数据获取[J].电脑知识与技术,2016.12(27):211-213

[3]张国华,张文娟,薛鹏翔.小波分析与应用基础[M].西北工业大学出版社,2006.

[4]刘明才.小波分析及其应用[M].清华大学出版社,2005.

[5]Donoho,D.L.;I.M.Johnstone,"Ideal de-noising in an orthonormal basis chosen from a library of bases,"CRAS Paris[C].Ser I,t.319,1994:1317-1322

Detection of the end points of noisy speech signal

Luo Haitao
(School of Informatics,Guangdong University of Foreign Studies,Guangzhou,Guangdong 510420,China)

MATLAB is powerful mathematical software that performs numerical calculations,function or signal processing,and draws graphs.Processing noisy speech signal usually needs to eliminate noise first.Compared with speech signal,traffic noise frequency is lower.In this paper,Daubechies wavelet is constructed,and a wavelet packet is derived from the constructed scaling and wavelet functions.Then the wavelet packet is used to decompose the noisy speech signal.Detecting the starting point and ending point of speech with the algorithm achieves a good result.

MATLAB;speech signal process;wavelet packet;starting point and ending point detecting

TP311.11

A

1006-8228(2017)10-08-03

2017-07-31

罗海涛(1967-),男,广东省兴宁市人,硕士研究生,广东外语外贸大学信息学院教师,主要研究方向:信号处理,语音识别。

10.16644/j.cnki.cn33-1094/tp.2017.10.003

猜你喜欢
波包端点幅值
非特征端点条件下PM函数的迭代根
不等式求解过程中端点的确定
基于小波包Tsallis熵和RVM的模拟电路故障诊断
基于S变换的交流电网幅值检测系统计算机仿真研究
参数型Marcinkiewicz积分算子及其交换子的加权端点估计
正序电压幅值检测及谐波抑制的改进
基于小波包变换的电力系统谐波分析
基丁能虽匹配延拓法LMD端点效应处理
小波包理论与图像小波包分解
低压电力线信道脉冲噪声的幅值与宽度特征