实验一 基于DFT的信号识别系统_第1页
实验一 基于DFT的信号识别系统_第2页
实验一 基于DFT的信号识别系统_第3页
实验一 基于DFT的信号识别系统_第4页
实验一 基于DFT的信号识别系统_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一 基于DFT的信号识别系统小组:肖智议 1028401037杨天富 1028401015一、实验目的(1) 通过实验巩固离散傅立叶变换DFT的认识和理解。(2) 熟练掌握应用DFT进行频谱分析的方法。(3) 理解DFT离散频谱分析的应用价值。二、实验内容在语音识别、雷达信号处理、生物医学信号检测与识别等应用领域广泛使用基于离散傅立叶变换的谱分析技术。一个典型的信号识别系统如图:短时窗DFT峰值检测分类器x(n)y(n)设系统的输入信号x(n)是具有单一频谱峰值的正弦信号,短时矩形窗将信号截短为有限长,经过DFT变换得到频谱,频率检测器检测频谱最大峰值的位置,即对应的频率,然后由分类器识别

2、信号的类别。分类器的分类判决规则为:第一类:最大峰值频率分布范围(Hz)为0f200。第二类:最大峰值频率分布范围(Hz)为200f500。第三类:最大峰值频率分布范围(Hz)为500f1000。第四类:最大峰值频率分布范围(Hz)为f1000。设采样频率fs=10000Hz,短时矩形窗宽度为N=1000,短时加窗信号经过DFT可以得到连续频谱在02范围内的1000个取样点。(1)编程实现该系统(2)输入信号x(n)=1.2sin(0.08n),理论计算并画出0ffs范围的幅度谱,标出峰值频率,观察系统的实际识别结果,分析其正确性。(3)输入信号x(n)=1.5+3cos(0.5n),理论计算

3、并画出0ffs范围的幅度谱,标出峰值频率,观察系统的实际识别结果,分析其正确性。(4)输入信号x(n)=0.7sin(0.14n),理论计算并画出0ffs范围的幅度谱,标出峰值频率,观察系统的实际识别结果,分析其正确性。(5)输入信号x(n)=1.2cos(0.5n)+ 9.5sin(0.02n),理论计算并画出0ffs范围的幅度谱,标出峰值频率,观察系统的实际识别结果,分析其正确性。(6)输入信号x(n)=cos(0.102n),理论计算并画出0ffs范围的幅度谱,标出峰值频率,观察系统的实际识别结果,分析其正确性。三、实验分析设x(n)是长度为N的有限长信号(注意这个前提),即信号仅仅分布

4、在0,N-1区间,其余时间均为0,那么,该信号的离散傅立叶变换定义如下: , k=0N-1、又因为=2f/fs,所以有2f=fs。以此为依据对输入信号作如下理论分析:(1) 输入信号为x(n)=1.2sin(0.08n)时,峰值出现在f=fs/2/ =400Hz(2) 输入信号为x(n)=1.5+3cos(0.5n)时,峰值出现在f=fs/2/=0Hz 或f=2500Hz,而因为满足A2>2C,所以,应该出现在0Hz处。(3) 输入信号为x(n)=0.7sin(0.14n)时,峰值出现在f=fs/2/=700Hz(4) 输入信号为x(n)=1.2cos(0.5n)+ 9.5sin(0.0

5、2n)时,峰值出现在f=fs/2/=2500Hz 或f=100Hz,因为A1>A2,所以应该出现在100Hz处。(5) 输入信号为x(n)=cos(0.102n)时,峰值出现在f=fs/2/=510Hz四、实验结果(1)MATLAB 程序如下: function FS=dft4(A,a,B,b,C) fs=10000; %采样频率 N=1000; %采样取点数n=0:(N-1);x=A*cos(a*pi*n)+B*sin(b*pi*n)+C; %定义一般性的输入信号形式s=0; %记录最大峰值for k=0:(N-1) %DFT p(k+1)=0; for n=0:(N-1) p(k+1

6、)=x(n+1)*exp(-j*2*pi*k*n/N)+p(k+1); end if k<=N/2 if s<abs(p(k+1) %最大峰值 s=abs(p(k+1); m=k; end endend fm=fs*m/N; %最大峰值处频率 f=fs*k/Ntype='type'if (fm>=0)&&(fm<200) type='type1'elseif (fm>=200)&&(fm<500) type='type2'elseif (fm>=500)&&

7、(fm<1000) type='type3'elseif fm>=1000 type='type4'endFS=m,fm,s,type; %返回最大峰值处,最大峰值处 的频率,最大峰值 ,第几类subplot(2,1,1);n=0:(N-1);plot(n*fs/N,x); title('source signal');subplot(2,1,2);plot(n*fs/N,abs(p),'r');title('Magnitude');xlabel('Frequency'); %画出频谱图

8、end(2) 实验仿真结果1 X(n)=1.2sin(0.08n)FS = 40 400 600.0000 'type2'K值:40频率:400幅值600属于第2类2 X(n)=3cos(0.5n)+1.5FS = 0 0 1.5000e+003 'type1'K值:0频率:0幅值1500属于第1类3 X(n)=0.7sin(0.14n)FS = 70 700 350.0000 'type3'K值:70频率:700幅值350属于第3类4 X(n)=1.2cos(0.5n)+9.5sin(0.02n)FS = 10 100 4.7500e+003

9、'type1'K值:10频率:100幅值4750属于第1类5 X(n)=cos(0.102n)FS = 51 510 500.0000 'type3'K值:51频率:510幅值500属于第3类5、 思考题1.当矩形窗长度比1000小,例如32,以上实验内容(6)可能出现什么情况?答:N取值过小,频率分辨率过低,出现失真现象。如下图所示:从图形中可以看出已经得不出原始信号的频谱。2.当输入信号x(n)=cos(0.199n)+0.9sin(0.204n)时,系统能够得到正确识别结果吗?为什么?答:由信号频率量值可以看出两个频率分量很靠近,因此在采样点不够的情况下很

10、难分辨出两个峰值,下面给出在采样点不同的时候仿真结果:N=1000N=2000N=5000N=10000从图中还可以看出,采样点并不是越多越好,不同的采样点个数对应的对峰值的识别也不会达到很满意的效果。3. 如果输入信号x(n)中含有叠加性宽带噪声e(n)会影响识别结果么?为什么?答:可能会影响识别结果。设混叠后的信号为s(n),则s(n)=x(n)+e(n);所以S(K)=X(K)+E(K),因此S(K)2=S(K)S(K)*=X(K)2+E(K)2。两边求算术平方根得S(K)=所以如果输入信号中含有叠加性宽带噪声,且噪声较大,则有可能会影响识别结果。在噪声比较小的时候,仿真结果如下图所示:4. 如果系统中的DFT需要更新为FFT,并且短时窗不变,则FFT计算时应该做哪儿些考虑?对识别结果会产生什么影响?当DFT更新为FFT时,要短时窗不变,在计算的时候应该考虑以下几个方面: 首先应该将信号序列分为偶序列X0(K)和奇序列X1(K)两个长度相等的序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论