




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学 士 学 位 论 文 基于 Matlab 的声信号采集 与谱分析设计 姓姓 名:名:尹青山 学学 号:号: 200805230365 指指导导教教师师:王丽丽、陈庆鹏 院院系系( (部部所所) ):光电工程学院 专专 业:业:电子信息工程 完完成成日日期期:2012 年 05 月 15 日 学校代码:10904 摘摘 要要 声音信号处理是研究用数字信号处理技术和声音学知识对语音信号进行处 理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。 通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。 Matlab 语言是一种数据分析和处理功能十分强大的计算机应用软件,它可 以将声音文件变换为离散的数据文件,然后利用其强大的矩阵运算能力处理数 据,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现 等,它的信号处理与分析工具箱为语音信号分析提供了十分丰富的功能函数, 利用这些功能函数可以快捷而又方便地完成语音信号的处理和分析以及信号的 可视化,使人机交互更加便捷。信号处理是 Matlab 重要应用的领域之一。 【关键字】声音信号;信号处理;Matlab;傅里叶变换 AbstractAbstract Speech signal processing is to study the use of digital signal processing technology and knowledge of the voice signal voice processing of the emerging discipline is the fastest growing areas of information science one of the core technology. Transmission of information through the voice of humanitys most important, most effective, most popular and most convenient form of exchange of information Matlab language is a data analysis and processing functions are very powerful computer application software, sound files which can be transformed into discrete data files, then use its powerful ability to process the data matrix operations, such as digital filtering, Fourier transform, when domain and frequency domain analysis, sound playback and a variety of map rendering, and so on. Its signal processing and analysis toolkit for voice signal analysis provides a very rich feature function, use of these functions can be quick and convenient features complete voice signal processing and analysis and visualization of signals, makes computer interaction more convenient . Matlab Signal Processing is one of the important areas of application. 【Keywords】 voice signal ;signal processing;matlab;fourier thansform 目目 录录 第 1 章 绪论.1 1.1 引言1 1.2 本设计的主要任务2 第 2 章 谱分析在 MATLAB 中的实现论证4 2.1 设计理论依据4 2.2 语音信号的分析及处理方法5 第 3 章 语音信号的采集.7 3.1 语音信号的特点7 3.2 语音信号的采集7 第 4 章 语音信号的分析.11 4.1 语音信号的时域分析11 4.2 语音信号的频域分析13 4.3 语音信号的语谱图16 第 5 章 图形用户界面制作.19 5.1 窗口界面的实现过程19 5.2 用户界面21 参 考 文 献.23 致谢24 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 1 页 共 2329 页 第 1 章 绪论 1.1 引言 20 世纪 60 年代中期形成的一系列数字信号处理的理论和算法,如数字滤 波器、快速傅立叶变换(FFT)等是语音信号数字处理的理论和技术基础。随着 信息科学技术的飞速发展,语音信号处理取得了重大的进展:进入 70 年代之后, 提出了用于语音信号的信息压缩和特征提取的线性预测技术(LPC),并已成为 语音信号处理最强有力的工具,广泛应用于语音信号的分析、合成及各个应用 领域,以及用于输入语音与参考样本之间时间匹配的动态规划方法;80 年代初 一种新的基于聚类分析的高效数据压缩技术矢量量化(VQ)应用于语音信号 处理中;而用隐马尔可夫模型(HMM)描述语音信号过程的产生是 80 年代语音 信号处理技术的重大发展,目前 HMM 已构成了现代语音识别研究的重要基石。 近年来人工神经网络(ANN)的研究取得了迅速发展,语音信号处理的各项课题是 促进其发展的重要动力之一,同时,它的许多成果也体现在有关语音信号处理 的各项技术之中。 信号分析主要包括时域分析和频域分析。谱分析就是频域分析,具体是指 将信号源发出的信号强度按频率顺序展开,使其成为频率的函数,并考察变化 规律1。 频谱分析在生产实践和科学研究中获得日益广泛的应用。例如,对汽车、 飞机、轮船、汽轮机等各类旋转机械、电机、机床等机器的主体或部件进行实 际运行状态下的谱分析,可以提供设计数据和检验设计效果,或者寻找振源和 诊断故障,保证设备的安全运行等;在声纳系统中,为了寻找海洋水面船只或 潜艇,需要对噪声信号进行谱分析,以提供有用信息,判断舰艇运动速度、方 向、位置、大小等。因此对谱分析方法的研究,受到人们的普遍注意和重视, 是当前信号处理技术中一个十分活跃的课题。 1965 年库利一图基在计算数学杂志上发表快速傅里叶变换(FFT)算 法,FFT 和频谱分析很快发展成为机械设备故障诊断、振动分析、无线电通信、 信息图像处理和自动控制等多种学科重要的理论基础。然而长期的应用和近年 来的理论分析表明:经快速傅立叶变换得到的离散频谱,频率、幅值和相位均 可能产生较大误差,单谐波加矩形窗时最大误差从理论上分析可达 36.4%;即 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 2 页 共 2329 页 使加其他窗时,也不能完全消除此影响,在加 Hanning 窗时,只进行幅值恢复 时的最大幅值误差仍高达 15.3%,相位误差高达 90 度。因此,频谱分析的结果 在许多领域只能定性而不能精确的定量分析和解决问题,大大限制了该技术的 工程应用,特别是在机械振动和故障诊断中的应用受到极大限制。从上世纪 70 年代中期,有关学者开始致力于频谱校正理论的研究以期解决离散频谱误差较 大的问题, 通过加窗、局部细化、多点卷积幅值修正等方法来提高频率识别精度, 解决了离散高次谐波参数的精确测量等问题。 从目前国内外学者所进行的大量研究工作来看,主要是对单频率信号(或 频率间隔较大的多频率信号)离散频谱的自动识别和校正方法进行探讨,密集 频率的校正也只限于两个邻近频率成分的校正,未能深入到连续频率成分频谱 的误差和校正方法的研究。而实际工程中的很多信号是密集频率成分或连续频 率成分的信号,比如“拍振”信号是最简单的密集频率信号。在旋转机械、故 障诊断和非线性动力系统分析中,常常也会出现密集频谱现象。在有限样本长 度下,仅仅由此类信号的 FFT 频谱很难识别其频率构成,也不能确定其各频率 的参数。而且由于旁瓣泄露或主瓣干涉的影响,基于单频率信号频谱校正的比 值法不再适合此类多频信号。对此类信号在进行离散频谱分析时所产生误差的 分析方法与频率间隔较大的信号误差分析方法存在巨大差异,校正方法也不相 同,校正的难度极大。因此,只有对这类信号在进行离散傅里叶变换时所产生 的误差进行深入系统的分析与研究,并找到一种较完善的频率、幅值和相位的 校正方法,才能使离散傅里叶变换和频谱分析在机械工程中得到更广泛应用, 同时也扩大其在无线电通信、信息图像处理、自动控制、多媒体、机械设备故 障诊断等技术的应用范围。当前,具有密集频谱的频谱校正问题是目前频谱校 正技术最难解决的问题之一,成为工程界和研究离散频谱校正的学者们关注的 焦点。 1.2 本设计的主要任务 1理论依据 根据设计要求分析系统功能,掌握设计中所需理论(采样频率、采样位数 的概念,采样定理; 时域信号的 FFT 分析;数字滤波器设计原理和方法,各种 不同类型滤波器的性能比较),阐明设计原理。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 3 页 共 2329 页 2信号采集 采集声音信号,并对其进行 FFT 频谱分析,画出信号的时域波形图和频谱图。 3构造受干扰信号并对其进行 FFT 频谱分析 对所采集的语音信号加入干扰噪声,对语音信号进行回放,感觉加噪前后声 音的变化,分析原因,得出结论。并对其进行 FFT 频谱分析,比较加噪前后语 音信号的波形及频谱,对所得结果进行分析,阐明原因,得出结论。 4数字滤波器设计 根据待处理信号特点,设计合适数字滤波器,绘制所设计滤波器的幅频和相 频特性。 5信号处理 用所设计的滤波器对含噪语音信号进行滤波。对滤波后的语音信号进行 FFT 频谱分析。画出处理过程中所得各种波形及频谱图。 对语音信号进行回放,感觉滤波前后声音的变化。比较滤波前后语音信号的 波形及频谱,对所得结果和滤波器性能进行频谱分析,阐明原因,得出结论。 6设计图形用户界面 设计处理系统的用户界面,在所设计的系统界面上可以选择滤波器的参数,显示 滤波器的频率响应,选择信号等。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 4 页 共 2329 页 第 2 章 谱分析在 MATLAB 中的实现论证 2.1 设计理论依据 2.1.1 采样定理 在进行模拟/数字信号的转换过程中,当采样频率 fs.max 大于信号中,最 高频率 fmax 的 2 倍时,即:fs.max=2fmax,则采样之后的数字信号完整地保留 了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的 510 倍;采样定理又称奈奎斯特定理2。 1924 年奈奎斯特(Nyquist)就推导出在理想低通信道的最高大码元传输速 率的公式: 理想低通信道的最高大码元传输速率=2W*log2 N (其中 W 是理想低通信道 的带宽,N 是电平强度) 2.1.2 采样频率 采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音 质、音调,衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔 时间越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形 的表示也越精确。采样频率与声音频率之间有一定的关系,根据奎斯特理论, 只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音 还原成为原来的声音3。这就是说采样频率是衡量声卡采集、记录和还原声 音文件的质量标准。 2.1.3 采样位数与采样频率 采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在 采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指录音 设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越 自然。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 5 页 共 2329 页 采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择 音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定 了音频数据最大的力度范围。每增加一个采样位数相当于力度范围增加了 6dB。采样位数越多则捕捉到的信号越精确。对于采样率来说你可以想象它 类似于一个照相机,44.1kHz 意味着音频流进入计算机时计算机每秒会对其 拍照达 441000 次。显然采样率越高,计算机摄取的图片越多,对于原始音 频的还原也越加精确。 2.2 语音信号的分析及处理方法 2.2.1 声音的录入与打开 在 MATLAB 中,y,fs,bits=wavread(Blip,N1 N2);用于读取语音,采 样值放在向量 y 中,fs 表示采样频率(Hz),bits 表示采样位数。N1 N2表示 读取从 N1 点到 N2 点的值(若只有一个 N 的点则表示读取前 N 点的采样值)。 sound(x,fs,bits); 用于对声音的回放。向量 y 则就代表了一个信号(也即一 个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个 声音信号。 2.2.2 时域信号的 FFT 分析 FFT 即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅 氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。 在 MATLAB 的信号处理工具箱中函数 FFT 和 IFFT 用于快速傅立叶变换和逆 变换4。函数FFT用于序列快速傅立叶变换,其调用格式为 y=fft(x),其中, x 是序列,y 是序列的 FFT,x 可以为一向量或矩阵,若 x 为一向量,y 是 x 的 FFT 且和 x 相同长度;若 x 为一矩阵,则 y 是对矩阵的每一列向量进行 FFT。如 果 x 长度是 2 的幂次方,函数 fft 执行高速基2FFT 算法,否则 fft 执行一种 混合基的离散傅立叶变换算法,计算速度较慢。函数 FFT 的另一种调用格式为 y=fft(x,N),式中,x,y 意义同前,N 为正整数。函数执行 N 点的 FFT,若 x 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 6 页 共 2329 页 为向量且长度小于 N,则函数将 x 补零至长度 N;若向量 x 的长度大于 N,则函 数截短 x 使之长度为 N;若 x 为矩阵,按相同方法对 x 进行处理。 2.2.3 数字滤波器设计原理 数字滤波是数字信号分析中最重要的组成部分之一,与模拟滤波相比,它 具有精度和稳定性高、系统函数容易改变、灵活性强、便于大规模集成和可实 现多维滤波等优点。在信号的过滤、检测和参数的估计等方面,经典数字滤波 器是使用最广泛的一种线性系统5。 数字滤波器的作用是利用离散时间系统的特性对输入信号波形(或频谱)进 行加工处理,或者说利用数字方法按预定的要求对信号进行变换6。 2.2.4 数字滤波器的设计步骤 不论是 IIR 滤波器还是 FIR 滤波器的设计都包括三个步骤: (1) 按照实际任务的要求,确定滤波器的性能指标。 (2) 用一个因果、稳定的离散线性时不变系统的系统函数去逼近这一性能 指标。根据不同的要求可以用 IIR 系统函数,也可以用 FIR 系统函数去逼近。 (3) 利用有限精度算法实现系统函数,包括结构选择、字长选择等。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 7 页 共 2329 页 第 3 章 语音信号的采集 3.1 语音信号的特点 通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点: 在频域内,语音信号的频谱分量主要集中在 3003400Hz 的范围内。利 用这个特点,可以用一个防混迭的带通滤波器将此范围内的语音信号频率分量 取出,然后按 8kHz 的采样率对语音信号进行采样,就可以得到离散的语音信 号。 在时域内,语音信号具有“短时性”的特点,即在总体上,语音信号的特 征是随着时间而变化的,但在一段较短的时间间隔内,语音信号保持平稳。在 浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。 下面是一段语音信号的时域波形图(图 3- 1 图 3- 1)和频域图(图 3- 2),由这 两个图可以看出语音信号的两个特点。 00.511.522.533.544.55 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 Time(s) 00.511.522.5 x 10 4 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 Frequency(Hz) 图 3- 1 语音信号时域波形图 图 3- 2 语音信号频域波形图 3.2 语音信号的采集 在将语音信号进行数字化前,必须先进行防混叠预滤波,预滤波的目的有 两个:抑制输入信导各领域分量中频率超出 fs/2 的所有分量(fs 为采样频率), 以防止混叠干扰。抑制 50Hz 的电源工频干扰。这样,预滤波器必须是一个 带通滤波器,设其上、下截止颜率分别是 fH 和 fL,则对于绝人多数语音编译 码器,fH=3400Hz、fL60100Hz、采样率为 fs8kHz;而对丁语音识别而言, 当用于电话用户时,指标与语音编译码器相同。当使用要求较高或很高的场合 时 fH4500Hz 或 8000Hz、fL60Hz、fs10kHz 或 20kHz。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 8 页 共 2329 页 为了将原始模拟语音信号变为数字信号,必须经过采样和量化两个步骤,从 而得到时间和幅度上均为离散的数字语音信号。采样也称抽样,是信号在时间 上的离散化,即按照一定时间间隔t 在模拟信号 x(t)上逐点采取其瞬时值。采 样时必须要注意满足奈奎斯特定理,即采样频率 fs 必须以高于受测信号的最高 频率两倍以上的速度进行取样,才能正确地重建波它是通过采样脉冲和模拟信 号相乘来实现的。下图(图 3- 3)是一段语音信号在采样频率 44.1KHz 情况下 的频谱图。 图 3- 3 原始信号 由图可知,这段语音信号的频率主要集中在 1KHz 左右,当采样频率为 44.1KHz 时,由于采样频率比较大,所以采样点数就越密,所得离散信号就越 逼近于原信号,频谱也没有发生混叠(图 3- 4)。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 9 页 共 2329 页 图 3- 4 抽样后的信号 对上述信号进行 1/80 采样频率抽取,即采样频率变为将近 500Hz 时,由于 采样频率比较小,所以采样点数就稀疏,所得离散信号就越偏离于原信号,频 谱也发生了混叠7。 在采样的过程中应注意采样间隔的选择和信号混淆:对模拟信号采样首先 要确定采样间隔。如何合理选择t 涉及到许多需要考虑的技术因素。一般而言, 采样频率越高,采样点数就越密,所得离散信号就越逼近于原信号。但过高的 采样频率并不可取,对固定长度(T)的信号,采集到过大的数据量(N=T/ t),给计算机增加不必要的计算工作量和存储空间;若数据量(N)限定,则 采样时间过短,会导致一些数据信息被排斥在外。采样频率过低,采样点间隔 过远,则离散信号不足以反映原有信号波形特征,无法使信号复原,造成信号 混淆。根据采样定理,当采样频率大于信号的两倍带宽时,采样过程不会丢失 信息,利用理想滤波器可从采样信号中不失真地重构原始信号波形。量化是对 幅值进行离散化,即将振动幅值用二进制量化电平来表示。量化电平按级数变 化,实际的振动值是连续的物理量。具体振值用舍入法归到靠近的量化电平上。 语音信号经过预滤波和采样后,由 AD 变换器变换为二址制数字码。这 种防混叠滤波通常与模数转换器做在一个集成块内,因此目前来说,语音信号 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 10 页 共 2329 页 的数字化的质量还是有保证的。市面上购买到的普通声卡在这方面做的都很好, 语音声波通过话筒输入到声卡后直接获得的是经过防混叠滤波、A/D 变换、量 化处理的离散的数字信号8。 在实际工作中,可以利用 windows 自带的录音机录制语音文件, 图 3- 5 是 基于 PC 机的语音信号采集过程,声卡可以完成语音波形的 A/D 转换,获得 WAVE 文件,为后续的处理储备原材料。调节录音机保存界面的“更改”选项, 可以存储各种格式的 WAVE 文件。 Windows 自带的录音机 声 音 麦克风声卡滤波采样A/D 转换Wa v 图 3- 5 基于 PC 机的语音信号采集过程 在 MATLAB 中,y,fs,bits=wavread(Blip,N1 N2);用于读取语音, 采样值放在向量 y 中,fs 表示采样频率(Hz),bits 表示采样位数。N1 N2表 示读取从 N1 点到 N2 点的值(若只有一个 N 的点则表示读取前 N 点的采样值)。 sound(x,fs,bits); 用于对声音的回放。向量 y 则就代表了一个信号(也即一 个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个 声音信号。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 11 页 共 2329 页 第 4 章 语音信号的分析 4.1 语音信号的时域分析 语音信号的时域分析就是分析和提取语音信号的时域参数。进行语音分析 时,最先接触到并且也是最直观的是它的时域波形。语音信号本身就是时域信 号,因而时域分析是最早使用,也是应用最广泛的一种分析方法,这种方法直 接利用语音信号的时域波形。时域分析通常用于最基本的参数分析及应用,如 语音的分割、预处理、大分类等。这种分析方法的特点是:表示语音信号比 较直观、物理意义明确。实现起来比较简单、运算且少。可以得到语音的 一些重要的参数。只使用示波器等通用设备,使用较为简单等9。 语音信号的时域参数有短时能量、短时过零率、短时白相关函数和短时平均幅 度差函数等,这是语音信号的一组最基本的短时参数,在各种语音信号数字处 理技术中都要应用10。在计算这些参数时使用的一般是方窗或汉明窗。 4.1.1 短时能量及短时平均幅度分析 设语音波形时域信号为 x(l)、加密分帧处理后得到的第 n 帧语音信号为 Xn(m),则 Xn(m)满足下式: (4-1)( )( ) ()( )nx mw m x nm m01mN (4-2) 10(1) ( ) mN m w m , 0, 其他值 其中,n0,1T,2T,并且 N 为帧长,T 为帧移长度。 设第 n 帧语音信号 Xn(m)的短时能量用 En 表示,则其计算公式如下: (4-3) 1 2 0 ( ) N n n m Exm En 是一个度量语音信号幅度值变化的函数,但它有一个缺陷,即它对高电平非 常敏感(因为它计算时用的是信号的平方)。为此可采用另一个度量语音信号幅 度值变化的函数即短时平均幅度函数 Mn,它定义为: (4-4) 1 0 ( ) N Mn n m xm 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 12 页 共 2329 页 Mn 也是一帕语音信号能量大小的表征,它与 En 的区别在于计算时小取样 值和大取样值不会因取平方而造成较大差异,在某些应用领域呻会带来一些好 处。 短时能量和短时平均幅度函数的主要用途有:可以区分浊音段与清音段,因 为浊音时 En 值比清音时大的多。可以用来区分声母与韵母的分界,无声与有 卢的分界,连字(指字之间无间隙)的分界等。作为一种超音段信息,用于语 音识别中 4.1.2 短时过零率分析 短时过零率表示一帧语音中语音信号波形穿过横轴(零电平)的次数。过 零分析是语音时域分析中最简单的一种。对于连续语音信号,过零即意味着时 域波形通过时间轴;而对于离散信号,如果相邻的取样值改变符号则称为过零。 过零率就是样本改变符号的次数11。定义语音信号 Xn(m)的短时过零率 Zn 为: (4-5) 1 0 1 sgn( )sgn(1) 2 N nnn m Zx mx m 式中,sgn 是符号函数,即: (4-6) 1,(0) 1,(0) sgn x x x 在实际中求过零率参数时,需要十分注意的一个问题是如果输入信号中包 含有 50Hz 的工频干扰或者 A/D 变换器的工作点有偏移(这等效于输入信号有直 流偏移),往往会使计算的过零率参数很不准确。为了解决前一个问题,A/D 变 换器前的防混叠带通滤波器的低端截频应高于 50Hz,以有效地抑制电源干扰。 对于后一个问题除了可以采用低直流漂移器件外,也可以在软件上加以解决, 这就是算出每一帧的直流分量并予以滤除。 对语音信号进行分析,发现发浊音时,尽管声道有若干个共振峰,但由于 声门波引起谱的高频跌落,所以其话音能量约集中在 3kHz 以下。而发清音时, 多数能量出现在较高频率上。高频就意味着高的平均过零率,低频意味着低的 平均过零率,所以可以认为浊音时具有较低的过零率,而清音时具有较高的过 零率。当然,这种高低仅是相对而言,并没方精确的数值关系。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 13 页 共 2329 页 利用短时平均过零率还可以从背景噪声中找出语音信号,可用于判断寂静 无声段和有声段的起点和终点位置。在孤立词的语音识别中,必须要在一连串 连续的语音信号中进行适当分割,用以确定一个一个单词的语音信号,即找出 每一个单词的开始和终止位置,这在语音处理中是一个基本问题。此时,在背 景噪声较小时用平均能量识别较为有效,而在背景噪声较大时用平均过零率识 别较为有效。但是研究表明,在以某些音为开始或结尾时如当弱摩擦音 (如f、 h等音素)、弱燃破音(如p、t、k等音素)为语音的开头或结尾;以鼻音(如n、 m等音素)为语音的结尾时只用其中一个参量来判别语音的起点和终点是有 困难的,必须同时使用这两个参数。图 4- 1 语音信号的短时能量和短时平均过 零率是用 Mtalab 仿真一段语音信号时域波形的短时能量和短时平均过零率。 5001000150020002500300035004000 -1 -0.5 0 0.5 1 speech 51015202530354045 0 10 20 30 40 energy 51015202530354045 0 10 20 30 zcr 图 4- 1 语音信号的短时能量和短时平均过零率 4.2 语音信号的频域分析 语音信号的频域分析就是分析语音信号的频域持征。从广义上讲,语音信 号的频域分析包括语音信号的频谱、功率谱、倒频谱、频谱包络分析等,而常 用的频域分析方法有带通滤波器组法、傅里叶变换法、线件预测法等几种。本 文介绍的是语音信号的傅里叶分析法。因为语音波是一个非平稳过程,因此适 用于周期、瞬变或平稳随机信号的标准傅里叶变换不能用来直接表示语音信号, 而应该用短时傅里叶变换对语音信号的频谱进行分析,相应的频谱称为“短时 谱 ”12。 下面利用短时博里叶变换求语音的短时谱 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 14 页 共 2329 页 对第 n 帧语音信号 Xn(m)进行傅里叶变换(离散时域傅里叶变换,DTFT), 可得到短时傅里叶变换,其定义如下: (4-7) 1 0 ()() N jwjwn nn m X ex m e 由定义可知,短时傅里叶变换实际就是窗选语音信号的标准傅里叶变换。 这里,窗 w(n-m)是一个“滑动的”窗口,它随 n 的变化而沿着序列 X(n)滑动。 由于窗口是有限长度的,满足绝对可和条件,所以这个变换是存在的。当然窗 口函数不同,博里叶变换的结果也将不同。 我们还可以将式(327)写成另一种形式。设语音信号序列和窗口序列的标 准傅早叶变换均存在。当 n 取固定值时,w(n-m)的傅里叶变换为: (4-8) ()() jwnjwnjw m w nm eeW e 根据卷积定理,有: (4-9)()()() jwjwjwnjw nX eX eeW e 因为上式右边两个卷积项均为关于角频率 w 的以 2 为周期的连续函数,所 以也可将其写成以下的卷积积分形式: (4-10) () - 1 ()()() 2 jwjjnj w nX eW eeX ed 即,假设 x(m)的 DTFT 是,且的 DTFT 是,那么是() jw X e( )w m() jw W e() jw nX e 和的的周期卷积。() jw X e() jw W e 根据信号的时宽带宽积为一常数这一基本性质,可知主瓣宽度与窗() jw W e 口宽度成反比,N 越大,的主瓣越窄。由式(3-30)可知,为了使() jw W e 忠实再现的特性相对于来说必须是个冲激函() jw nX e() jw X e() jw W e() jw X e 数。所以为了使,需;但是 N 值太大时,倍号的分帧()() jwjw nX eX eN 又失去了意义。尤其是 N 大于语音的音素长度时,已不能反映该语音音() jw nX e 素的频谱了。因此应折衷选择窗的宽度 N。另外,窗的形状也对短时博氏频 谱有影响,如矩形窗,虽然频率分辨率很高(即主辩狭窄尖锐),但由于第一旁 瓣的衰减很小,有较大的上下冲,采用矩形窗时求得的与的偏差() jw nX e() jw X e 较大,这就是 Gibbs 效应,所以不适合用于频谱成分很宽的语音分析中。而汉 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 15 页 共 2329 页 明窗在频率范围中的分辨率较高,而且旁辩的衰减大,具有频谱泄漏少的优 点所以在求短时频谱时一船采用具有较小上下冲的汉明窗13。 与离散傅里叶变换和连续博里叶变换的关系一样,如令角频率 w=2kN,则得离散的短时博里叶变换(DFT)它实际上是在频域的取() jw nX e 样,如下所示: (4-11) 22 1 0 ()( )( )(01) kkm N jj NN nnn m X eX kx m ekN 在语音信号数字处理中,都是采用的离散博里叶变换(DFT)来( )nx m( )nX k 替代并且可以用高效的快速傅里叶变换(FFT)算法完成由至() jw nX e( )nx m 的转换。当然,这时窗长 N 必须是 2 的倍数 (L 是整数)。根据傅里叶( )nX k2L 变换的性质,实数序列的傅里叶变换的频谱具有对称性,因此,全部频谱信息 包含在长度为 N/2+1 个里。另外,为了使具有较高的频率分辨率,( )nX k( )nX k 所取的 DFT 以及相应的 FFT 点数应该足够多,但有时的长度 N 要受到 1 N( )nx m 采样率和短时性的限制,例如,在通常采样率为 8kHz 且帧长为 20ms 时, N=160。而一般取 256、512 或 1024,为了将的点数从 N 扩大力, 1 N( )nx m 1 N 可以采用补 0 的办法,在扩大的部分添若干个 0 取样值,然后再对添 0 后的序 列进行 FFT。例如、在 10kHz 的范围内采样求频谱,并要求频率分辨率在 30 Hz 以下。由 10k/30,得333,所以要取比 333 大的值,这zH 1 N 1 N 1 N2L 时可取=512 点,不足的部分采用补 0 的办法解决,此时频率分辨率(即 1 N 9 2 频率间隔)为 10 Hz51219.53Hz,采样后的该帧信号频率处在 02x1953Hz 之间,因此,原连续信号频率就处在 0之间 1 219.53 L Hz (即),所以我们要在 0频率范围内求其频谱。FFT 的计算可 max 5fkHz5kHz 以在通用计算机上由相应的算法软件来完成,这种方式一般只能实现非实时运 算14。为了完成实时运算可以采用先进的数字信号处理芯片、阵列处理芯片或 专用 FFT 芯片。为了完成 1024 点的万 FFT,这些专用芯片所需的运算时间是 几十毫秒至儿毫秒,甚至可以降至 1ms 以下。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 16 页 共 2329 页 在语音信号数字处理中,功率谱具有重要意义,在一些语音应用系统 中往往都是利用语音信号的功率谱。根据功率谱定义,可以写出短时功率谱 与短时傅里叶变换之间的关系: (4-12) 2 ()()()() jwjwjwjw nnn n S eX eXeX e 或者: (4-13) 2 ( )( )( )( )nnn n S kX kXkX k 式中表示复共轭运算。并且功率谱是短时自相关函数的傅里叶变() jw nS e( )nR k 换。 (4-14) 1 2 1 ()()( ) N jwjwjwk nnn kN S eX eR k e 图 4- 2 是用 Matlab 中的 psdplot 命令绘得的同一人两次说同一词的功率谱 比较(窗函数取窗长度为 256 的 Hamming 窗)15。 图 4- 2 同一人两次说同一词的功率谱比较 可以看出功率谱图比较好地反映出声音的个人特征:在低频部分(频率低于 6000Hz),同 一人说同一词,其功率谱图中的各个波峰所对应的频率基本相同;不同人说同一词,其功 率谱图的出现波峰的频率比较接近;同一人说不同词时功率谱的形状差别较大。在高频部 分,波峰比较密集,特征不明显。 4.3 语音信号的语谱图 语音的时域分析和频域分析是语音分析的两种重要方法。显然这两种单独 分析的方法均有局限性:时域分析对语音信号的频率特性没有直观的了解;而 频域分析出的特征中又没有语音信号随时间的变化关系:语音信号是时变信号, 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 17 页 共 2329 页 所以其频谱也是随时间变化的。但是由于语音信号随时间变化是很缓慢的,因 而在一段短时间内(如 1030ms 之间,即所谓的一帧之内)可以认为其频谱是固 定不变的,这种频谱又称为短时谱。短时谱只能反映语音信号的静态频率特性, 不能反映语音信号的动态频率特性。因此,人们致力于研究语音的时频分析特 性。 把和时序相关的傅里叶分析的显示图形称为语谱图(Sonogram,或者 Spectrogram)。语诺图是一种三维频谱,它是表示语音频谱随时间变化的图形, 其纵轴为频率,横轴为时间,任一给定频率成分在给定时刻的强弱用相应点的 灰度或色调的浓谈来表示。用语谱图分析语音又称为语谱分析。语谱图中显示 了大量的与语音的语句特性有关的信息,它综合了频谱图和时域波形的特点, 明显地显示出语音频谱随时间的变化情况,或者说是一种动态的频谱;记录这 种频谱的仪器就是语谱仪16。 语谱仪实际上是一个带通滤波器组的输出随时间发生连续变化,连续重复 进行语音信号频率分析的仪器。带通滤波器有两种带宽可供选择:窄带为 45Hz,宽带为 300Hz。窄带语谱图有良好的频率分辨率,有利于显示基音频率 及其各次谐波,但它的时间分辨率较差,不利于观察共振峰(卢道谐振)的变化; 而宽带语谱图正相反,具有良好的时间分辨率及较差的频率分辨率。宽带语谱 图能给出语音的共振峰频率及清辅音的能量汇集区,在话谱图里共振峰呈现为 黑色的条纹。 可以利用语谱仪测量语谱图的方法来确定语音参数,例如共振峰频率及基 音频率。语语图的实际应用是用于确定出讲话人的本性。语谱图上因其不同的 黑白程度,形成了个同的纹路,称之为“声纹”,它因人而异,即不同讲话者 语谱图的声纹是不同的。因而可以利用声纹鉴别不问的讲话人。这与不向的人 有不同的指纹,根据指纹可以区别不同的人是一个道理。虽然对采用语谱图的 讲活人识别技术的可靠性过存在相当人的怀疑,但目前这一技术已在司法法庭 小得到某些认可及采用17。 图 4- 3 是用 Mtalab 绘制的一个宽带语谱图,其中横抽坐标为时间,纵轴 坐标为频率,语句内容为 “河南农业大学理学院”,它的发音在图下方以音标 表示。同时给出了相应的语音的时域波形。语谱图中的花纹有横扛(Bar)、乱纹 和竖直条等。横杠是与时间轴平行的几条深黑色带纹,它们相应于短时谱中的 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 18 页 共 2329 页 几个凸出点,也就是共振峰。从横扛对应的频率和宽度可以确定相应的共振峰 频率和带宽。在一个语音段的语谱图中,有没有横扛出现是判断它是否是浊音 的重要标志 。竖直条(又叫冲直条)是语谱图中出现与时间轴垂直的一条窄黑条。 每个竖直条相当于一个基音,条纹的起点相当于声门脉冲的起点,条纹之间的 距离表示基音周期。条纹越密表示越音频率越高。 图 4- 3 枣庄学院语谱图 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 19 页 共 2329 页 第 5 章 图形用户界面制作 图形用户界面是指由窗口、菜单、对话框等各种元素组成的用户界面。在 这种用户界面中,用户的操作既形象生动,又方便灵活,所以当今绝大部分开 发环境与应用程序都采用图形用户界面,许多流行的开发工具也都可以进行图 形用户界面的设计。MATLAB 作为功能强大的科学计算软件,同样也提供了一 套可视化的创建图形窗口的工具,本设计利用 MATLAB 所提供的图像用户界 面(GUI),实现一个可视的面向对象的操作界面18。 5.1 窗口界面的实现过程 该系统界面的设计主要是利用 MATLAB 所提供的 GUI(Graph User Interface)向导设计控件而完成的,该向导可以实现多种控件的设计,给用户提 供了一种友好的交互方式,同时也给操作带来很多方便。图形用户界面 GUI 是 包含图形对象(如图形窗口、菜单、控件、文本)的用户界面,用户以某种方 式选择或者激活这些对象会发生变化或引起动作。 (1)启动 GUI 的方法 启动图形用户界面的方法有很多种,例如可以利用工具栏上的命令按钮, 也可以采用菜单和命令的方式。在本人设计的案例中采用的是命令方式:在命 令窗口直接输入guide命令,弹出的窗口如图5- 1所示: 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 20 页 共 2329 页 图 5- 1 为启动 GUI 界面弹出的窗口 在弹出的 guide quick start 窗口中选择 create new gui 选项卡里面地 Blank GUI 选项,这样就可以进入图形用户界面来设计我们的系统静态界面,如下图 5- 2 所示: 图 5- 2 为系统静态界面 上图就是 Guide 提供的图形界面设计工具集,在此界面下就可以利用控件 组件、文本菜单、排列工具等对系统的界面进行设计。 当静态界面设计完成以后,对该界面进行保存,此时 Guidie 将自动生成两 个发布文件,分布是.fig 文件和.m 文件19。 基于 Matlab 的声信号采集与谱分析设计 作者:尹青山 第 21 页 共 2329 页 Fig 文件:该文件包括图形窗口及其所有后裔的完全描述,包括所有对象 的属性值。Fig 文件是一个二进制文件,调用 hgsave 命令或界面设计编辑器的 file 菜单 save 选项保存图像窗口时将产生该文件。Fig 文件最有用的地方之一就 是对象句柄的保存和引用,可以使用 open、openfig 和 hgload 命令打开一个后 缀为.fig 的文件。 M 文件:该文件包括 GUI 设计、控制函数以及为子函数的用户控件回调 函数,主要用于控制 GUI 展开时的各种特征。这个 M 文件可以分为 GUI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年度购销合同范本
- 药店兑店合同范本
- 工业监控采购合同范本
- 学校杂志刊登广告协议书7篇
- 大棚土地征用合同范本
- (新)村镇后备干部考试参考试题(附答案)
- 家长会演讲稿范文(分享5篇)
- 新员工培训考核初试附有答案
- 职高高二普测题目及答案
- 蜘蛛侠的所有题目及答案
- 2025年院感知识理论考试题库及答案
- 高档小区宠物管理办法
- 2024注册安全工程师《历年计算题型》
- 科技伦理审查管理办法
- 少儿口才培训教案 课件
- 中学教学常规管理汇报
- 胸部损伤外科诊疗体系
- 土石方工程计量计价课件
- 第27课 中国特色社会主义的开创与发展 课件 中外历史纲要(上)
- 护士职业行为规范课件
- 市(县)级温室气体排放源、排放清单报告模板
评论
0/150
提交评论