数字信号除处理课程设计DFT在信号频谱分析中的应用.pdf
《数字信号除处理课程设计DFT在信号频谱分析中的应用.pdf》由会员分享,可在线阅读,更多相关《数字信号除处理课程设计DFT在信号频谱分析中的应用.pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、百度文库-好好学习,天天向上课程设计课程设计课程名称课程名称数字信号处理数字信号处理系系别:别:计算机科学系计算机科学系专业班级:专业班级:通信一班通信一班题题目:目:DFT DFT 在信号频谱分析中的应用在信号频谱分析中的应用目目录录-1百度文库-好好学习,天天向上1 1、设计题目设计题目 3 32 2、设计目的设计目的 3 33 3、设计原理设计原理 3 34 4、实现方法实现方法 3 35 5、设计内容及结果设计内容及结果 6 66 6、改进建议改进建议 12127 7、思考题及解答思考题及解答 15158 8、设计体会设计体会 15159 9、参考文献参考文献 1616.设计题目设计题
2、目DFT 在信号频谱分析中的应用-2百度文库-好好学习,天天向上.设计目的设计目的掌握离散傅里叶变换的有关性质,利用Matlab 实现 DFT 变换。了解DFT 应用,用DFT 对序列进行频谱分析,了解 DFT 算法存在的问题及改进方法。学习并掌握 FFT 的应用。.设计原理设计原理所谓信号的频谱分析就是计算信号的傅里叶变换。连续信号与系统的傅里叶分析显然不便于直接用计算机进行计算,使其应用受到限制,而DFT 是一种时域和频域均离散化的变换,适合数值运算,成为分析离散信号和系统的有力工具。工程实际中,经常遇到的连续信号 Xa(t),其频谱函数 Xa(jW)也是连续函数。数字计算机难于处理,因而
3、我们采用DFT 来对连续时间信号的傅里叶变换进行逼近,进而分析连续时间信号的频谱。.实现方法实现方法离散傅里叶变换是有限长序列的傅里叶变换,它相当于把信号的傅里叶变换进行等频率间隔采样,并且有限长序列的离散傅里叶变换和周期序列的离散傅里叶级数本质是一样的。快速傅里叶变换(FFT)并不是一种新的变换,它是离散傅里叶变换的一种快速算法,并且主要是基于这样的思路而发展起来的:(1)把长度为 N 的序列的 DFT 逐次分解成长度较短的序列的 DFT 来计算。(2)利用 WN(nk)的周期性和对称性,在DFT 运算中适当的分类,以提高运算速度。(对称性WNr 为任意整数,WNnrNnkN2n(rNk)n
4、rNnknknkWNWNWN,WN2 1;周期性WN WNN1)离散傅里叶变换的推导:离散傅里叶变换的推导:1离散傅里叶级数定义为xp(n)N将N 1n0 xp(k)ek 0N 1nkj2N(1-1)上式两端乘以enm j2N并对nN 1在0N-1求和可得xp(n)enm j2N1NXn0 k0N 1 N 1p(k)en(km)j2Nn(km)1N 1 j2NXp(k)Nek0n0-3百度文库-好好学习,天天向上因为1NN1n0en 0pN 1j2n(k m)N1 1-e(k m)j2NN1-e(k m)Nj2N1k m0k mN 1n0所以x(n)eN1n0nm j2NXp(k)(k m)这
5、样Xp(m)xp(n)ek0nk j2NN1nm j2N用k代替m得XP(k)xp(n)e(1-2)令WN e j2N则(1-2)成为 DFSxp(n)Xp(k)xn0N1n0N1nk(n)WpN(1-3)1(1-1)成为 IDFSXp(k)xp(n)NXpnk(k)WN(1-4)式(1-3)、(1-4)式构成周期序列傅里叶级数变换关系。其中xp(n)、Xp(k)都是周期为 N的周期序列,DFS表示离散傅里叶级数正变换,IDFS表示离散傅里叶级数反变换。习惯上,对于长为N 的周期序列,把0nN-1 区间称为主值区,把xp(0)xp(N 1)称为xp(n)的主值序列,同样也称Xp(0)Xp(N
6、1)为Xp(k)的主值序列。由于x(n)xp(n)RN(n),对于周期序列xp(n)仅有 N 个独立样值,对于任何一个周期进行研究就可以得到它的全部信息。在主值区研究xp(n)与x(n)是等价的,因此在主值区计算DFS 和 DFT 是相等的,所以 DFT 计算公式形式与 DFS 基本相同。其关系为x(n)xp(n)RN(n)X(k)Xp(k)RN(k)所以离散傅里叶正变换Xk DFTxnxnWN0kN-1nkn0N1离散傅里叶变换(离散傅里叶变换(DFTDFT)定义:)定义:设有限长序列 x(n)长为 N(0nN-1),其离散傅里叶变换是一个长为 N 的频率有限长序列(0kN-1),其正变换为
7、Xk DFT xn2jxnWnk0kN-1(WNeN)NN1n0离散傅里叶变换的实质是:把有限长序列当做周期序列的主值序列进行 DFS 变换,x(n)、X(k)的长度均为 N,都是 N 个独立值,因此二者具有的信息量是相等的。已知 x(n)可以唯一确定 X(k),已知 X(k)可以唯一确定 x(n)。虽然离散傅里叶变换是两个有限长序列之间的变化,但它们是利用DFS 关系推导出来的,因而隐含着周期性。-4百度文库-好好学习,天天向上构造离散傅里叶变换的构造离散傅里叶变换的 MatlabMatlab 实现程序如下实现程序如下:functionXk=dft(xn,N)n=0:1:N-1;k=n;WN
8、=exp(-j*2*pi/N);nk=n*k;WNnk=WN.nk;Xk=xn*WNnk快速傅里叶变换(快速傅里叶变换(FFTFFT)并不是与 DFT 不同的另外一种变换,而是为了减少DFT 计算次数的一种快速有效的算法共轭对称性:共轭对称性:设有限长序列x(n)的长度为 N,以 N 为周期的周期延拓列为x(n)x(n)N周期序列x(n)的共轭对称分量xe(n)和共轭反对称分量xo(n)分别为*11 xe(n)x(n)x(n)x(n)N x*(N n)N(1-5)22*11 xo(n)x(n)x(n)x(n)N x*(N n)N(1-6)22同样可以证明,它们满足xe(n)xe(n)(1-7)
9、xo(n)xo(n)(1-8)则有限长序列x(n)的圆周共轭对称分量xep(n)和圆周共轭反对称分量xop(n)分别定义为:*1xep(n)xe(n)RN(n)x(n)N x*(N n)NRN(n)(1-9)21xop(n)xo(n)RN(n)x(n)N x*(N n)NRN(n)(1-10)2由于满足x(n)xe(n)xo(n)故x(n)x(n)RN(n)xe(n)x(n)RN(n)xep(n)xop(n)(1-11)显然,长度为 N 的有限长序列x(n)可以分解为圆周共轭对称分量xep(n)和圆周共轭反对称分量xop(n)之和,xep(n)和xop(n)的长度皆为 N。利用有限长序列与周期
10、序列的共轭对称分量和反对称分量的关系式(1-9)和式(1-10),以及式(1-11)可以推导出DFT 的一系列的对称性质*(1)DFTx(n)X(k)X(n K)式中x(n)表示x(n)的共轭复序列。证明:DFTx(n)x(n)W*n0N1nkNN1nk*x(n)WN X(k)n0又因为-5百度文库-好好学习,天天向上nNWN e j(2N)nN e j2 nN1*(Nk)n*X(N k)1所以 DFTx(n)x(n)WNn01X(k)X*(N k)212*(2)复序列实部的 DFT 等于 DFT 的圆周共轭对称部分,即DFTRex(n)Xep(k)证明:*DFTRex(n)DFT1=2x(n
11、)x(n)12DFTx(n)+DFTx(n)=*X(k)X*(N k)Xep(k)利用 DFT 的对称性可求得cos0n的 DFT:设x(n)cos0n jsin0n eN 1n 0j0n则Nk1 ejoNWNDFT x(n)X(k)因为cos0n Rex(n)所以j0nnkeWN1 ejokWN1 ejoNk1 ejoWNDFTcos0nDFTRex(n)Xep(k)1 ejoNk1ejoWNX(k)X*(Nk)2=1 e joNk1 e joWN2kk1 cos0N WNcos0WNcos(N 1)0k2 k1 2WNcos0WN.设计内容及结果设计内容及结果1.1.用用 MATLABMA
12、TLAB语言编写计算序列语言编写计算序列 x(n)x(n)的的 N N 点点 DFTDFT 的的 mm 函数文件。函数文件。并与并与 MATLABMATLAB中的内中的内部函数文件作比较。部函数文件作比较。解:x(n)的 N 点 DFT 的 m 函数文件functionXk=dft(xn,N)n=0:1:N-1;k=n;WN=exp(-j*2*pi/N);nk=n*k;WNnk=WN.nk;Xk=xn*WNnkMatlab 中的内部函数文件文件function varargout=fft(varargin)if nargout=0builtin(fft,varargin:);-6百度文库-好好
13、学习,天天向上elsevarargout1:nargout=builtin(fft,varargin:);end运算量估计:对于 N=2点序列进行时间抽选奇偶分解 FFT 计算,需分 M 级,每级计算 N/2 个蝶。每一级需 N/2 次复乘、N 次复加,因此总共需要进行:复乘:N2M N2Mlog2N复加:NM N log2N2直接计算 N 点的 DFT,需要N次复乘、N(N-1)次复加。N 值越大,时间抽选奇偶分解 FFT算法越优越。例如当 N=2048 点时,时间抽选奇偶分解 FFT 算法比直接计算 DFT 速度快 300多倍可以用一下 Matlab 程序比较 DFT 和 FFT 的运算时
14、间N=2048;M=11;x=1:M,zeros(1,N-M);t=cputime;y1=fft(x,N);Time_fft=cputime-tt1=cputime;y2=dft(x,N);Time_dft=cputime-t1t2=cputime;运行结果:Time_fft=Time_dft=由此可见 FFT 算法比直接计算 DFT 速度快得多2.2.对离散确定信号对离散确定信号x(n)cos(0.48n)cos(0.52n)作如下谱分析:作如下谱分析:X(k)k。截取截取x(n)使使x(n)成为有限长序列成为有限长序列 N(N(0 n N-1),(长度长度 N N 自己选自己选)写程序计算
15、出写程序计算出x(n)的的N N 点点 DFTDFTX(k),画出时域序列图画出时域序列图 xnxnn n 和相应的幅频图和相应的幅频图-7百度文库-好好学习,天天向上解:1)求 x(n)的前 10 点数据对应的 X(ejw)、X(k)。MATLAB程序如下:N=10;n=0:1:N-1;xn=cos*pi*n)+cos*pi*n);Xk=dft(xn,N);subplot(3,1,1)stem(n,xn,.k);title(时域序列图 xn);xlabel(n);axis(0,10,);w=2*pi*(0:1:2047)/2048;Xw=xn*exp(-j*n*w);subplot(3,1,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 课程设计 DFT 信号 频谱 分析 中的 应用
限制150内