语音信号的采集和频谱分析

合集下载

语音信号处理实验报告实验二

语音信号处理实验报告实验二

语音信号处理实验报告实验二一、实验目的本次语音信号处理实验的目的是深入了解语音信号的特性,掌握语音信号处理的基本方法和技术,并通过实际操作和数据分析来验证和巩固所学的理论知识。

具体而言,本次实验旨在:1、熟悉语音信号的采集和预处理过程,包括录音设备的使用、音频格式的转换以及噪声去除等操作。

2、掌握语音信号的时域和频域分析方法,能够使用相关工具和算法计算语音信号的短时能量、短时过零率、频谱等特征参数。

3、研究语音信号的编码和解码技术,了解不同编码算法对语音质量和数据压缩率的影响。

4、通过实验,培养我们的动手能力、问题解决能力和团队协作精神,提高我们对语音信号处理领域的兴趣和探索欲望。

二、实验原理(一)语音信号的采集和预处理语音信号的采集通常使用麦克风等设备将声音转换为电信号,然后通过模数转换器(ADC)将模拟信号转换为数字信号。

在采集过程中,可能会引入噪声和干扰,因此需要进行预处理,如滤波、降噪等操作,以提高信号的质量。

(二)语音信号的时域分析时域分析是对语音信号在时间轴上的特征进行分析。

常用的时域参数包括短时能量、短时过零率等。

短时能量反映了语音信号在短时间内的能量分布情况,短时过零率则表示信号在单位时间内穿过零电平的次数,可用于区分清音和浊音。

(三)语音信号的频域分析频域分析是将语音信号从时域转换到频域进行分析。

通过快速傅里叶变换(FFT)可以得到语音信号的频谱,从而了解信号的频率成分和分布情况。

(四)语音信号的编码和解码语音编码的目的是在保证一定语音质量的前提下,尽可能降低编码比特率,以减少存储空间和传输带宽的需求。

常见的编码算法有脉冲编码调制(PCM)、自适应差分脉冲编码调制(ADPCM)等。

三、实验设备和软件1、计算机一台2、音频采集设备(如麦克风)3、音频处理软件(如 Audacity、Matlab 等)四、实验步骤(一)语音信号的采集使用麦克风和音频采集软件录制一段语音,保存为常见的音频格式(如 WAV)。

声音信号的频谱分析与频率测量方法

声音信号的频谱分析与频率测量方法

声音信号的频谱分析与频率测量方法声音是我们日常生活中不可或缺的一部分,我们通过声音来交流、表达情感,甚至通过声音来判断事物的性质。

然而,声音是如何产生的?我们如何对声音进行分析和测量呢?本文将介绍声音信号的频谱分析与频率测量方法。

声音信号是由空气中的振动引起的,当物体振动时,会产生压力波,通过空气传播出去,我们就能听到声音。

声音信号可以通过振动的频率和振幅来描述,其中频率是指振动的周期性,而振幅则是指振动的强度。

频谱分析是一种将声音信号分解成不同频率成分的方法。

它可以帮助我们了解声音信号的频率分布情况,从而更好地理解声音的特性。

频谱分析的基本原理是将声音信号转换为频域表示,即将信号从时域转换为频域。

这可以通过傅里叶变换来实现。

傅里叶变换是一种将时域信号转换为频域信号的数学方法。

它将信号分解成一系列正弦波的叠加,每个正弦波都有不同的频率和振幅。

通过傅里叶变换,我们可以得到声音信号的频谱图,从而了解声音信号中不同频率成分的贡献程度。

频谱图通常以频率为横轴,振幅或能量为纵轴,通过不同的颜色或灰度表示不同频率成分的强度。

频谱图可以直观地展示声音信号的频率分布情况,帮助我们分析声音的特性。

例如,在音乐领域,频谱分析可以用来研究音乐的音色特点,判断乐器的类型等。

除了频谱分析,频率测量是对声音信号进行定量分析的重要方法。

频率是声音信号中最基本的特征之一,它决定了声音的音调高低。

频率测量可以通过多种方法实现,其中一种常用的方法是自相关法。

自相关法是一种基于信号自身的周期性特点进行频率测量的方法。

它通过计算信号与自身的延迟版本之间的相似程度来确定信号的周期性。

具体而言,自相关法将信号与其自身进行延迟,然后计算它们之间的相关性。

通过寻找最大相关性的延迟值,我们可以得到信号的主要频率成分。

除了自相关法,还有一些其他的频率测量方法,如峰值检测法、零交叉法等。

这些方法在不同的应用场景下有着各自的优势和适用性。

例如,峰值检测法适用于测量周期性信号的频率,而零交叉法适用于测量非周期性信号的频率。

语音信号的采集与分析

语音信号的采集与分析

南昌工程学院《语音信号的采集与分析》课程设计题目语音信号的采集与分析课程名称语音信号处理系院信息工程学院专业通信工程班级 10通信工程2班学生姓名刘敏学号 2010103362设计地点电子信息楼指导教师邹宝娟设计起止时间:2013年12月9日至2013年12月20日目录一、需求分析 (4)1.1选题背景及意义 (4)1.2设计要求 (4)二、系统总体设计 (4)2.1 系统设计思路 (4)2.2 功能结构图及功能说明 (4)2.3 工作原理 (6)三、系统详细设计 (6)3.1 语音信号的matlab仿真的数据分析 (6)3.2 程序代码分析 (12)四、调试与维护 (14)4.1 调试过程的问题与维护 (14)五、结束语 (15)六、参考文献 (16)七、指导教师评阅(手写) (17)一、需求分析1.1选题背景及意义该设计主要是介绍语音信号的采集与分析方法,通过PC机录制自己的一段声音,运用Matlab提供的函数进行仿真分析,并画出采样后语音信号的时域波形和频谱图,对所采集的语音信号加入干扰随机高斯噪声,对加入噪声的信号进行播放,并进行时域和频谱分析;对比加噪前后的时域图和频谱图,分析讨论采用什么样的滤波器进行滤除噪声。

1.2设计要求(1)通过PC机录制自己的一段声音“南昌工程学院刘敏”;(2)运用MATLAB中信号处理相关的函数对语音信号进行时域、频域上的分析,如短时能量,短时平均过零率,语谱图等;(3)运用MATLAB对语音信号进行综合与分析,包括语音信号的调制,叠加,和滤波等。

二、系统总体设计2.1 系统设计思路系统的整体设计思路包括语音信号的录制,语音信号的采集,语音信号的分析,其中语音信号的分析又包括了语音信号的时域分析和频域分析,语音信号的加噪处理和滤噪设计分析。

2.2 功能结构图及功能说明实际工作中,我们可以利用windows自带的录音机录制语音文件,声卡可以完成语音波形的A/D转换,获得WAVE文件,为后续的处理储备原材料。

语音信号的采集与频谱分析(附代码)

语音信号的采集与频谱分析(附代码)

《信号与系统》大作业语音信号的采集与频谱分析——基于Matlab的语音信号处理学生姓名:学号:专业班级:电子工程学院卓越班指导老师:2015年6月22日摘要本设计用苹果手机自带的录音设备采集了原始语音,并导入了电脑转成wav格式,然后用MATLAB和Adobe audition对其进行时域分析。

接着利用傅里叶变换进行了频域分析,绘制频谱图,再录制一段加上歌曲的伴奏的语音与原唱进行了对比分析,得出了我与歌星在频域上的差别。

本设计给信号加了两种噪声并通过观察加噪后的频谱和试听回放效果比较加噪前后的差别,最后,设计了FIR数字低通滤波器和带通滤波器,分析滤波前后的频谱。

再次试听回放效果,得出结论。

关键词:语音、FFT、频谱图、噪声、滤波器AbstractThis design is based on the general function of Matlab and Adobe edition to deal with Audio signals. The original signals are collected by iPhone’s built-in recording equipment.First,I compare the file generated by myself with that of thesame song sang by a famous singer.The emphasis is generally laid on analysing the difference in frequncy domain,but time domain will be included too.After that,two noise signals are added to the original signal respectively and let them pass a filter to analyse it.In the two process mentioned before,I make comparison between the before and after frequency domain.Sampling Theorem is the base of my design.It is by sampling we can get discrete signals from the original one and draw the image in time domain.Also,fast fourier transform is employed(FFT)to get the signals in frequency domain.The ayalysis of frequency domain is the highlight of this design.Through this design,I can deepen my comprehension of principles of audio signals and I have learnt how to deal with it.Through met with much hindrance,I improved my skills finally.Keywords: audio signal、TTT、noise、filter1 绪论1.1课题的研究意义语音信号处理属于信息科学的一个重要分支,它是研究用数字信号处理技术对语音信号进行处理的一门新兴学科,同时又是综合性的多学科领域和涉及面很广的交叉学科,因此我们进行语言信号处理具有时代的意义。

语音信号采集与时频域分析正文

语音信号采集与时频域分析正文

第一章引言语音信号是一种非平稳的时变信号,它携带着各种信息。

在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。

语音信号分析的目的就在与方便有效的提取并表示语音信号所携带的信息。

语音信号分析可以分为时域和频域等处理方法。

语音信号可以认为在短时间内(一般认为在 10~30ms 的短时间内)近似不变,因而可以将其看作是一个准稳态过程, 即语音信号具有短时平稳性。

任何语音信号的分析和处理必须建立在“短时”的基础上, 即进行“短时分析”。

时域分析:直接对语音信号的时域波形进行分析,提取的特征参数有短时能量,短时平均过零率,短时自相关函数等。

频域分析:对语音信号采样,并进行傅里叶变换来进行频域分析。

主要分析的特征参数:短时谱、倒谱、语谱图等。

本文采集作者的声音信号为基本的原始信号。

对语音信号进行时频域分析后,进行加白噪声处理并进行了相关分析,设计滤波器并运用所设计的滤波器对加噪信号进行滤波, 绘制滤波后信号的时域波形和频谱。

整体设计框图如下图所示:图1.1时频域分析设计图图1.2加噪滤波分析流程图第二章 语音信号时域分析语音信号的时域分析可直接对语音信号进行时域波形分析,在此只只针对语音信号的短时能量、短时平均过零率、短时自相关函数进行讨论。

2.1窗口选择由人类的发生机理可知,语音信号具有短时平稳性,因此在分析讨论中需要对语音信号进行加窗处理进而保证每个短时语音长度为10~30ms 。

通常选择矩形窗和哈明窗能得到较理想的“短时分析”设计要求。

两种窗函数的时域波形如下图2.1所示:samplew (n )samplew (n )图2.1 矩形窗和Hamming 窗的时域波形矩形窗的定义:一个N 点的矩形窗函数定义为如下{1,00,()n Nw n ≤<=其他(2.1)哈明窗的定义:一个N 点的哈明窗函数定义为如下0.540.46cos(2),010,()n n NN w n π-≤<-⎧⎨⎩其他= (2.2)这两种窗函数都有低通特性,通过分析这两种窗的频率响应幅度特性可以发现(如图2.2):矩形窗的主瓣宽度小(4*pi/N ),具有较高的频率分辨率,旁瓣峰值大(-13.3dB ),会导致泄漏现象;哈明窗的主瓣宽8*pi/N ,旁瓣峰值低(-42.7dB ),可以有效的克服泄漏现象,具有更平滑的低通特性。

语言学中的语音信号分析

语言学中的语音信号分析

语言学中的语音信号分析语音信号是人类信息传递中最重要的方式之一。

语音信号分析是语音学研究的重要基础,也是许多领域如语音识别、语音合成、说话人识别等研究的关键环节。

本文将详细介绍语音信号分析的概念、步骤、方法和应用,以及目前存在的问题和未来的发展方向。

一、语音信号分析的概念和步骤语音信号分析是指将语音信号转变为可被计算机处理和识别的形式。

其步骤一般包括分帧、加窗、时域特征提取、频域特征提取等。

下面将逐一介绍。

1.分帧语音信号是一系列时域波形,随着时间的推移,其幅度和频率也在不断变化。

为了方便后续计算处理,需要将长时域的语音信号分割成短时域的小段,每一段称为一帧。

帧的长度一般在20~40ms之间,相邻帧之间一般有20~50%的重叠。

2.加窗由于分帧后的语音信号段末端的数值不完整,会造成分析和处理的困难。

为了消除边界效应,在每一帧的两端加上窗函数。

窗函数的目的是将信号逐渐减小到零,避免过度的数据扰动,同时使得相邻帧之间的信号光滑连续,减小处理误差。

3.时域特征提取时域特征是指每一帧中的语音信号的幅度、能量、过零率、基音周期等,一般通过数字信号处理方法计算得到。

这些特征可以反映语音信号的时域变化情况,如音高、音强、音长等。

4.频域特征提取语音信号在频域上的特征也非常重要。

FFT算法可以将时域信号转换为频域信号,得到语音信号的频谱。

从频谱中可以提取出如功率谱密度、倒谱系数、线性预测系数等频域特征。

这些特征可以反映语音信号的谐波结构和共振峰分布。

二、语音信号分析的方法语音信号分析方法有很多种,下面介绍几种常用的方法。

1.基音周期提取法人类的语音信号中存在基频,也就是说,语音信号中存在固定的波形重复出现。

基音周期提取法就是通过求取信号的基频周期,来确定声音的音高。

基音周期提取法的难点在于基波周期受到噪声和非周期性成分的影响,误差很大。

2.线性预测法线性预测法是通过分析语音信号在经过声道传输后,所产生的声音变化,来判断不同声音的特征。

语音信号采样和频谱分析

语音信号采样和频谱分析

语音信号采样和频谱分析TYYGROUP system office room 【TYYUA16H-TYY-TYYYUA8Q8-语音信号采样和频谱分析一.实验目的(1)掌握傅里叶变换的物理意义,深刻理解傅里叶变换的内涵;(2)了解MATLAB 对声音信号的处理指令;(3)了解计算机存储信号的方式及语音信号的特点;(4)加深对采样定理的理解;(5)加深学生对信号分析工程应用的理解,拓展学生在信号分析领域的综合应用能力。

二.实验内容本实验利用MATLAB 指令录制一段语音信号,观察其时域波形并进行傅里叶变换,观察其频域的频谱。

根据该信号的频谱构成,选择三种不同的采样频率重新录制该语音信号,并试听回放效果,进行比较,以验证采样定理,并了解MATLAB 对声音信号的处理指令,加深对采样定理的理解。

关键词:傅里叶变换 信号采样三、实验原理语音信号是一种连续变化的模拟信号,而计算机只能处理和记录二进制的数字信号,因此,由自然音而得的音频信号必须用计算机的声音编辑工具,先进行语音采样,然后利用了计算机上的A/D 转换器,将模拟的声音信号变成离散的量化了的数字信号量化和编码,变成二进制数据后才能送到计算机进行再编辑和存储。

语音信号输出时,量化了的数字信号又通过D/A 转换器,把保存起来的数字数据恢复成原来的模拟的语音信号。

(1)应用MATLAB 进行声音的录制 (2)应用MATLAB 进行声音的播放 (3)语音信号的频谱分析 。

傅里叶变换建立了信号频谱的概念。

所谓傅里叶分析即分析信号的频谱(频率构成)、频带宽度等。

对语音信号的分析也不例外,也必须采用傅里叶变换这一工具。

对于连续时间信号)(t f ,其傅里叶变换)(ωF 为:⎰∞∞--=dt e t f F t j ωω)()(四、实验任务(1)应用MATLAB 进行声音的录制在MATLAB 命令窗口中键入“y=wavrecord(8000,8000,1)”,并按回车键,此时刻以后的1(8000/8000)秒时段内的声音信号将以y 为文件名,以数字声音信号.wav 格式存储在MATLAB 的工作空间里。

基于matlab语音信号的采集与分析

基于matlab语音信号的采集与分析

毕业论文(设计)题目:基于matlab语音信号的采集与分析姓名:学院:理学与信息科学学院专业:电子信息科学与技术班级:学号:指导教师:目录摘要 (I)ABSTRACT. .......................................................................................................................................... I I 1 绪论 (1)1.1选题的背景和意义 (1)1.2语音信号处理的进展 (2)2 系统设计的可行性研究 (4)2.1语音信号处理的概念 (4)2.2语音信号的特点 (4)2.3语音信号处理的要求及可行性 (5)2.4M ATLAB仿真软件简介 (5)3 系统设计 (7)3.1系统设计的理论依据 (7)3.2系统的详细设计 (9)3.2.1图形用户界面制作 (9)3.2.2 系统功能的实现 (10)4 系统调试及运行 (16)总结 (25)致谢 (27)参考文献: (28)基于matlab语音信号的采集与分析电子信息科学与技术专业马晓敏指导教师曹红波摘要:语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科。

语音信号处理的目的是得到某些参数以便高效传输或存储,或者是用于某种应用,如人工合成出语音、辨识出讲话者、识别出讲话内容、进行语音增强等[1]。

本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过PC机录制一段声音,采集语音信号后,在MATLAB软件平台上进行频谱分析,并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。

利用MATLAB来读入(采集)语音信号,将它赋值给某一向量。

再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。

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

语音信号的采集和频谱分析:[y,fs,bits]=wavread('voice'); %读取音频信息(双声道,16位,频率44100Hz)sound(y,fs,bits); %回放该音频Y=fft(y,4096); %进行傅立叶变换subplot(211);plot(y);title('声音信号的波形');subplot(212)plot(abs(Y));title('声音信号的频谱');窗函数设计低通滤波器:fp=1000;fc=1200;as=100;ap=1;fs=22000;wp=2*fp/fs;wc=2*fc/fs;N=ceil((as-7.95)/(14.36*(wc-wp)/2))+1;beta=0.1102*(as-8.7);window=Kaiser(N+1,beta);b=fir1(N,wc,window);freqz(b,1,512,fs);结果:滤波:[y,fs,bits]=wavread('voice');d=filter(b,a,y);D=fft(d);subplot(211)plot(d);title('滤波后的声音波形')subplot(212)plot(abs(D))title('滤波后的声音频谱')回放:sound(d,fs,bits)与滤波之前相比,噪音明显降低了许多。

过零率的计算要用下面的代码:zcr = zeros(size(y,1)1);delta= 0.02;for i=1:size(y,1)x=y(i,:);for j=1;length(x)-1if x(j)*x(j+1)<0 &abs(x(j)-x(j+1))>deltazcr(i)=zcr(i)+1;endendend其中设置了门限delta=0.02。

这是个经验值,可以进行细微的调整。

在此条件下可以得到如图所示的过零率波形。

与过零率曲线画在一起的是原始的语音信号波形,可以看到,语音信号音母部分的幅度比较低,但是其过零率的数值却很高,峰值将近50,而后面的韵母部分过零率则比较低,在20左右。

加矩形窗的短时能量函数:a=wavread('F:\WO.wav');subplot(6,1,1),plot(a);N=32;for i=2:6h=linspace(1,1, (i-1)*N);%形成一个矩形窗,长度为NEn=conv(h,a.*a);%求卷积得其短时能量函数Ensubplot(6,1,i),plot(En);if(i==2) legend('N=32');elseif(i==3) legend('N=64');elseif(i==4) legend('N=128');elseif(i==5) legend('N=256');elseif(i==6) legend('N=512');endend加hamming窗的短时能量函数:把h=linspace(1,1, (i-1)*N);改为h1=hamming((i-1)*N);加矩形窗的短时平均幅度:a=wavread('F:\WO.wav');subplot(6,1,1),plot(a);N=32;for i=2:6h=linspace(1,1,(i-1)*N);%形成一个矩形窗,长度为NEn=conv(h,abs(a));%求卷积得其短时能量函数Ensubplot(6,1,i),plot(En);if(i==2) legend('N=32');elseif(i==3) legend('N=64');elseif(i==4) legend('N=128');elseif(i==5) legend('N=256');elseif(i==6) legend('N=512');endend短时过零率:a=wavread('F:\WO.wav');n=length(a);N=320;subplot(3,1,1),plot(a);h=linspace(1,1,N);%形成一个矩形窗,长度为N En=conv(h,a.*a);%求卷积得其短时能量函数En subplot(3,1,2),plot(En);for i=1:n-1if a(i)>=0b(i)= 1;elseb(i) = -1;endif a(i+1)>=0b(i+1)=1;elseb(i+1)=-1;endw(i)=abs(b(i+1)-b(i));end%求出每相邻两点符号的差值的绝对值k=1;j=0;while (k+N-1)<nZm(k)=0;for i=0:N-1;Zm(k)=Zm(k)+w(k+i);endj=j+1;k=k+160; %每次移动半个窗endfor w=1:jQ(w)=Zm(160*(w-1)+1)/640;%短时平均过零率endsubplot(3,1,3),plot(Q);短时过零率分析:[x,fs,nbit]=wavread(‘’);x=x/max(abs(x));len=256;inc=128;tmp1=enframe(x(1:end-1),256,128);tmp2=enframe(x(2:end),256,128);signs(tmp1.*tmp2)<0;diffs=(tmp1-tmp2)>0.02;zor=sum(signs.*diffs,2);figure;subplot(2,1,1),plot(x)subplot(2,1,2),plot(zor)基音检测:waveFile='lcq01.wav';[y, fs, nbits]=wavread(waveFile);index1=11000;frameSize=256;index2=index1+frameSize-1;frame=y(index1:index2); subplot(2,1,1); plot(y);grid on title(waveFile); line(index1*[1 1], [-1 1], 'color', 'r');line(index2*[1 1], [-1 1], 'color', 'r'); subplot(2,1,2); plot(frame, '.-');grid on point=[7, 189];%基本减谱法clear;%[xx,fs]=wavread('E:\mywhisper\shu.wav');%[xx,fs]=wavread('E:\speech\x\w1xun_01.wav');%[xx,fs]=wavread('E:\speech\耳语音切割\b\w1ba_5');[xx,fs]=wavread('D:\yuan.wav');% 读取音频文件yuan.wav,并返回采样数据给变量xx及采样率Fs[team,row]=size(xx);%将数组xx的行数赋给team,列数赋给rowif row==2x=(xx(:,1)+xx(:,2))/2;yy=x;%如果语音信号xx为2列,即信号为双声道,则将其转换成单声道信号,即取两列的平均值赋给x,并将x的值赋给yyelsex=xx;yy=x;%若语音信号xx为单声道,则将xx的值赋给x,并将x的值赋给yyendx=x-mean(x)+0.1*rand(length(x),1N=length(x);%将语音信号长度赋给变量Nn=220;%对语音信号进行分帧,帧长为220n1=160;%帧移为160frame=floor((N-n)/(n-n1));%将分帧数赋给变量frame%frame=floor(N/n);for i=1:framey1=x((i-1)*(n-n1)+1:(i-1)*(n-n1)+n).*hamming(n);%对每段分帧进行加窗处理fy=fft(y1,n);nen(i,:)=abs(fy).^2;% 将频域信号功率赋给矩阵变量nenang(i,:)=angle(fy);%将频域信号的相位角赋给矩阵变量angendyuzhi=sum(sum(nen(2:5,:)))/(4*n);for i=1:framenen(i,:)=nen(i,:)-yuzhi;nen(i,find(nen(i,:)<0))=0;%chuli=nen(i,1:n/2);%chuli=chuli-yuzhi;%chuli(find(chuli<0))=0;%nen(i,:)=[chuli,fliplr(chuli)];% nen(i,:)=filter(1,[0.5 0.5],nen(i,:));% nen(i,find(nen(i,:)<0))=0;endfor i=1:framenen(i,:)=sqrt(nen(i,:));%将纯语音功率谱开根,得到频域值jie=nen(i,:).*exp(j*ang(i,:));out(i,:)=real(ifft(jie))/hamming(n)'; %对纯语音频谱进行逆傅里叶变换,并取其实部,并进行去窗处理endzong=out(1,:)';%将第一帧中未重叠部分记入数组zongjiewei=n;for i=2:framezong(jiewei-n1+1:jiewei)=(zong(jiewei-n1+1:jiewei)+out(i,1:n1)')/2;jiewei=jiewei+n-n1;% 使指针jiewei依次指向下一帧的帧尾zong=[zong;out(i,n1+1:end)'];将从第二帧开始的每一帧中未重叠部分记入数组zongend%zong=out(1,:)';%for i=2:frame%zong=[zong;out(i,:)'];%end%%for i=1:frame% zong=[zong,nen(i,:)'];% zong(i*(n-n1)+1:(i-1)*(n-n1)+n)=zong(i*(n-n1)+1:(i-1)*(n-n1)+n)/2;figure(1); %创建图1subplot(211); %把图形窗口分成2*1个小窗口,取第1个小窗口plot(x);%以数组x绘图基本二维曲线axis([1,(n-n1)*frame+n,min(x),max(x)]);% 对当前二维图形对象的X轴和Y轴进行标定,x 轴的范围为1到最后一个分帧结尾,y轴的范围为带噪语音时域最小值到最大值subplot(212); %把图形窗口分成2*1个小窗口,取第2个小窗口specgram(x,fs,1024,n,n1);%画出语音的语谱图figure(2); %创建图2subplot(211); %把图形窗口分成2*1个小窗口,取第1个小窗口plot(zong); %以数组zong绘图基本二维曲线axis([1,(n-n1)*frame+n,min(zong),max(zong)]); % 对当前二维图形对象的X轴和Y轴进行标定,x轴的范围为1到最后一个分帧结尾,y轴的范围为纯语音时域最小值到最大值subplot(212); %把图形窗口分成2*1个小窗口,取第2个小窗口specgram(zong,fs,1024,n,n1); %画出语音的语谱图wavplay(x,fs);%播放单声道带噪语音音频wavplay(zong,fs);%播放单声道纯净语音音频。

相关文档
最新文档