基于MATLAB的语音信号的处理与内容识别

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

某某理工大学
研究生课程论文/研究报告
课程名称:数字信号分析
任课教师:
论文/研究报告题目:
基于MATLAB对语音信号的处理
完成日期:2017 年8 月21 日学科:
学号:
姓名:
成绩:
基于MATLAB对语音信号的处理
摘要:由于MATLAB语言的语法特征可移植性好、可扩展性强,再加上其中有丰富的语音信号处理函数,所以MATLAB在语音信号处理的应用中具有很大的优势。

通过录制两段男生和女生的的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化,实现说话内容的识别。

关键词:语音信号;MATLAB;时域分析;
前言
语音是从千百万人的言语中历史地概括总结出来的过滤性符号系统,是人们用以进行思维、交际的形式。

语音是声音和意义的结合体,它是语言的物质外壳,信息的载体。

语音是人类相互之间进行交流时使用最多、最自然、最基本也是最重要的信息载体。

在高度信息化的今天,语音处理的一系列技术及其应用已经成为信息社会不可或缺的重要组成部分。

语音的产生是一个复杂的过程,包括心理和生理等方面的一系列动作。

当人需要通过语音表达某种信息时,首先是这种信息以某种抽象的形式表现在说话人的大脑里,然后转换为一组神经信号,这些神经信号作用于发声器官,从而产生携带信息的语音信号。

语音识别是试图使机器能“听懂”人类语音的技术。

语音识别的作用是将语音转换成等价的书面信息,也就是让计算机听懂人说话。

作为一门交叉学科,语音识别又是以语音为研究对象,是语音信号处理的一个重要研究方向,是模式识别的一个分支,涉及到计算机、信号处理、生理学、语言学、神经心理学、人工智能等诸多领域,甚至还涉及到人的体态语言(如人在说话时的表情、手势等行为动作可帮助对方理解),其最终目标是实现人与机器进行自然语言通信。

数字信号分析与处理是一门发展迅速、应用广泛的前沿性学科,其理论性和实践性都很强。

为了系统地掌握和理解信号的采集、处理、传输、显示和存储,本文通过具体的语音信号处理实例阐述这一原理和方法。

本文通过Matlab对两段内容不同的男女语音信号进行滤波、时域、频域以及时频域等方面的处理, 实现说话内容的识别。

1.语音信号概述
人的发声过程一般为,由肺部收缩送出一股气流,经气管流至声带处,对声带产生冲击,使声带振动,然后通过声道响应变成语音。

由于发不同音时,声带的形状不同,所以听到不同的语音。

语音按其激励形式的不同大致可以分成三类:当气门流过声门是,如果声带的张力刚好使声带产生张弛振荡式振动,产生一股准周期脉冲气流,这一气流激励声道就产生浊音;如果声带不振动,而声道在某处收缩,迫使气流以高速通过这一收缩部分而产生湍流就产生清音或摩擦音;如果声道在完全闭合的情况下突然释放就产生爆破音。

声带的开启和闭合使气流形成一系列脉冲,声带没开启和闭合一次的时间称为音调周期或者基音周期。

基音周期的倒数称为基音频率,简称基频,它具有时变性和准周期性。

基音频率取决于个人声带的尺寸、厚薄、韧性等特性,同时也决定于它所受到的张力,并且和人的发音习惯有关。

基音频率决定了声音频率的高低,频率快则音调高,频率慢则音调低。

基音的频率范围为80-450Hz左右,它随发音人的性别、年龄等具体情况而定,孩童和青年女性较高,老年男性偏低。

2.语音产生模型
图1给出了语音产生的离散时域模型,它包括三个部分:激励模型、声道模型和辐射
模型。

图1 语音产生的模型
2.1激励模型
激励的数字模型一般分为浊音激励和清音激励。

浊音由准周期脉冲串激励产生,其周期称为基音周期,而清音由随机噪声激励。

由周期脉冲发生器输出的单位冲击序列,其冲击之间的间隔即为所要求的基音周期。

这一冲激串去激励一系列函数G(z)的线性系统,经过幅度控制后的输出u G(n)即为浊音激励。

G(z)的反变换g(n)可以用Rosenberg函数近似表示为:
g R(k)={
1
[1−cos⁡(kπ/N1]⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡0≤k≤N1 cos[π(k−N1)/(2N2)]⁡⁡⁡⁡⁡⁡N1≤k≤N1+N2 0⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡else
整个模型还可以表示为:
U(z)=A v

1
发清音时,无论是发阻塞音或摩擦音,声道都被阻碍形成湍流。

所以都可以模拟成随机白噪声。

实际情况一般使用均值为0、方差为1,并在实践活动幅值上为白色分布的序列作为激励源。

2.2声道模型
对于声道部分的数学模型,目前最常用的有两种建模方法:一种是把声道视为由多个等长的不同截面积的管子串联而成的系统,由此可以得到声管模型;另一种声道模型是把它视为一个谐振腔,共振峰就是这个腔体的谐振频率,由此可以得到“共振峰模型。


(1)声管模型
在多数情况下,声管模型中的传输函数V(z)是一个全极点模型。

假设声管的个数为N,V(z)可以表示为:
V(z)=
1
1−∑a m z−m
N
m=1
其中,a m为实数,显然,N取值越大,模型的传输函数与声道实际传输函数的吻合程度就越高,在实际应用中,N一般取8-12。

(2)共振峰模型
基于共振峰的理论,可以建立起三种实用的共振峰模型,即级联型、并联型和混合型。

1) 级联型,这时认为声道是一组串联的二阶谐振器。

从共振峰的理论,整个声道具有多个谐振频率和多个反谐振频率,所以它可以被模拟为一个零极点的数学模型,但对于一般元音,则全极点模型就可以了,其传输函数如下:
V (z )=G 1−∑a k
z −k K k=1 其中,N 是极点个数;G 是幅值因子,a k 是系数,k 是正整数。

2) 并联型,对于非一般元音以及大部分辅音,必须考虑零极点模型。

此时,模型和传输函数如下:
V (z )=∑b r z −r R r=01−∑a k z
−k N k=1 通常N>R ,且设分子与分母无公因子及分母无重根,则上式可分解为部分分式之和的形式:
V(z)=∑A i
1−B i z −1−C i z −2M i=1
3) 混合型是比较完备的共振峰模型,根据要描述的语音,自动地进行切换。

(3)辐射模型
辐射模型R (z )与发音时的嘴型有关,一般可以表示为R(z)=(1-r z −1),r ≈1。

辐射、声道以及声门激励的组合谱效的稳态系统函数的形式为:
H(z)=S(z)E(z)=G 1−∑a i z N i=1
这个模型的参数有:浊音/清音分类U/V ,基音周期T (对于浊音语音),增益参数G ,数字滤波器的系数{a i }等部分。

当然,所有这些参数都随时间缓慢变化;在极短的时段内,如几毫秒甚至几十毫秒,可以近似为短时时不变。

3. 语音产生模型
利用Windows 下的录音机,分别录制男声和女声的语音信号,男声的语音信号内容为“念奴娇·赤壁怀古 苏轼”,女声信号为“1、2、3、4、5、6、7、8、9”然后在MATLAB 软件平台下,利用函数wavread 对语音信号进行采样,记下采样频率和采样点数为:PCM 44.100 kHz, 16 位。

通过wavread 函数的使用,我们能很快理解采样频率、采样位数等概念。

图2 女声语音 图3 男生语音
4. 加噪处理
给两段语音分别进行高斯白噪声(SNR=30)的加噪处理。

图4、5为加噪前后的对比图。

图4 女声图5 男声
5.IIR滤波器的分析与设计
利用模拟滤波器来设计IIR数字滤波器是最常见的方法,其设计过程是按照技术要求设计模拟滤波器,得到其系统函数,然后经过一定的变换,得到满足要求的数字滤波器的。

这种设计方法的优点是模拟滤波器的设计理论很成熟,有很多现成的公式、表格、图形、和曲线可以直接使用,从而使IIR数字滤波器的设计变得很简单。

IIR数字滤波器的设计有两种方法:脉冲响应不变法和双线性变换法。

本次作业采用的是的是双线性变换法。

(1)流程图
巴特沃兹低通滤波器设计流程图如图5所示:
图5巴特沃兹低通滤波器设计流程图
(2)输出结果仿真
图6 巴特沃兹高通滤波器的幅频特性
6.对信号进行滤波的仿真
由于使用的是同一个原始语音信号,以下分别作出了不同信号在滤波前后的时域和频域的波形,通过观察图形,我们可以判断:使用不同类型的滤波器,则声音信号的相应频段上的能量被过滤掉了,其余部分则保留下来,所以设计的滤波器基本满足技术要求。

高通滤波前后时域波形的对比如图7、8所示,滤波前后频谱的对比如图9、10所示。

图7 女声图8 男声
图9 女声图10 男声
7.对信号进行识别
举例说明语音信号数字“9”的处理过程:
分析结果:通过同样的处理,可以得到以下对女声的说话内容进行识别,对于男声的识别也是同样的方法原理。

8.结论
语音信号是最能体现信号非线性的一个领域。

现代数字信号处理的一个主要发展趋势是对非线性、非平稳信号的研究。

因此,循环平稳信号分析、多谱分析和时频尺度理论对于语音信号的表示,关键特征的捕捉有很重要的应用前景。

在此基础上,结合语音语义理论的研究,开展多层次的语音信号的表示将对语音信号的应用有重要价值。

上述语音识别系统详细地分析了语音信号的时域、频域等特性,并实现了对孤立数字0到9的准确识别,通过本次详细系统的语音识别系统的设计,我对数字信号处理的流程有了深刻的认识,对Matlab软件编程也有了一定的理解,为将来从事这方面的课题打下了坚实的基础。

参考文献
[1]王炳锡.语音编码[M].西安:西安电子科技大学出版社,2002.
[2]何强,何英.MA TLAB扩展编程[M].北京:清华大学出版社,2002.
[3]王炳锡,屈丹,彭煊.实用语音识别基础[M].北京:国防工业出版社,2005.
[4]易克初,等.语音信号处理[M].北京:国防工业出版社,2006,6.
[5]胡航.语音信号处理[M].哈尔滨:哈尔滨工业大学出版社,2000,5.
[6]胡广书.数字信号处理理论、算法与实现[M].北京:清华大学出版社,1997.
[7]王炳锡,等.实用语音识别基础[M].北京:国防工业出版社,2005.
[8]刘卫强. 基于MA TLAB的音频信号综合分析处理[J]. 德州学院学报, 2014, 30(4):33-42.
[9]张登奇, 蒋敏. 基于MA TLAB的音频信号处理技术实现[J]. 电脑知识与技术, 2009, 5(5):1211-1213.
[10] 孙铖. 基于MA TLAB的语音噪声处理及实现[J]. 数码世界, 2016(6):59-59.
[11]李俊. 基于Matlab的语音信号时域分析系统[J]. Computer Science\s&\sapplication, 2013, 03(08):369-373.。

相关文档
最新文档