页眉内容数字信号处理课设报告所在学院:信息科学与工程学院专业班级:通信1302班学生姓名:陈鑫学生学号:08指导教师:李宏目录课程设计目的及要求………………………………………..3选题及设计思想……………………………………………..3调试结果及分析…………………………………………….12课程设计总结……………………………………………….24参考文献…………………………………………………….25源程序……………………………………………………….25一、课程设计目的及要求1.1课程设计目的1.全面学习课程所学理论知识,巩固所学知识重点和难点,将理论和实践很好地结合起来;2.提高综合运用所学知识独立分析和解决问题的能力;3.熟练使用一种高级语言进行编程实现。1.2课程设计要求1、使用MATLAB(或其它开发工具)编程实现上述内容,写出课程设计报告。页眉内容滤波器设计题目应尽量避免使用现成的工具箱函数。为便于分析与观察,设计中所有频谱显示中模拟频率应以实际频率显示,数字频率应对归一化。2、课程设计报告的内容包括:(1)课程设计题目和题目设计要求;(2)设计思想和系统功能分析;(3)设计中关键部分的理论分析与计算,参数设置,关键模块的设计思路;(4)测试数据、测试输出结果,及必要的理论分析和比较(5)总结,包括设计过程中遇到的问题和解决方法,设计心得与体会等;(6)参考文献;(7)程序源代码清单。3、演示系统使用GUI界面或混合编程实现集成打包发布。二、选题及设计思想2.1课程设计选做题目2.1.1验证时域采样定理与频域采样定理给定模拟信号:式中,。对进行采样,可得采样序列1)选择采样频率,观测时间,观测所得序列及其幅频特性;2)改变采样频率,观测此时的变化;3)令采样频率,观测此时的变化;要求分析说明原理,绘出相应的序列及其它们对应的幅频特性曲线,指出的变化,说明为什么?本题的目的在于验证时域采样理论。为了说明时域采样与频域采样的对偶性,我有选做了第二组的第一小题。题目如下:1)产生一个三角波序列,长度为M=40;2)计算点的,并画出和的波形3)对在上进行32点抽样,得到4)求的32点IDFT,即5)绘出的波形图,观察和的关系,并加以说明。2.1.2DFT的应用一个连续信号含两个频率分量,经采样得页眉内容当时,分别为1/16和1/64时,观察其频谱;当时,不变,其结果有何不同,为什么?绘出相应的时域与频域特性曲线,分析说明如何选择DFT参数才能在频谱分析中分辨出两个不同的频率分量。2.1.3线性相位带通滤波器的设计1),。用Hanning窗设计一线性相位带通滤波器,观察它的实际3dB和20dB带宽。,重复这一设计,观察幅频和相位特性的变化,注意长度N变化的影响;2)分别改用矩形窗和Blackman窗,设计:1)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点;(要求:应尽量避免使用现成的工具箱函数)2.1.4图像信号处理1)读入一幅彩色图像2)将彩色图像进行三原色分解,分解出R、G、B分量,并用图像显示出来3)将彩色图像灰度化,转换为灰度图像并显示4)对灰度图像用几种典型的边缘检测算子进行边缘检测,显示检测出的边缘。2.1.5音频信号处理1)读入给定的CEG和弦音音频信号(CEG.wav),对其进行离散傅立叶变换,分析信号频谱。给出信号的时域及频域波形。2)分析CEG和弦音信号的频谱特点,对该信号频谱能量相对较为集中的频带(分低、中、高频)进行滤波(分别使用低通,带通及高通),分离出三个能量最集中的频带,画出滤波后信号的时域和频域波形,并对滤波后的信号与原信号的音频进行声音回放比较。3)任意选择几个滤出的频带进行信号重建(合成),与原信号的音频进行声音回放比较。2.1.6倒频系统实现倒频是目前对讲机采用的一种语音保密技术。它是将信号的高频和低频进行交换,即将信号的高频部分搬到低频段,而将低频部分搬到高频段。倒频后的信号和原始信号具有相同的频带范围。由于原始语音信号的频率成分被置乱从而降低了可懂度,起到语音保密作用。在接受端采用同样的倒频器再将信号恢复。倒频系统的工作原理如图所示,设输入信号的最高角频率为m。图中HP是理想高通滤波器,其截止角频率为b,LP为理想低通滤波器,其截止角频率为m,图1倒频系统原理框图根据倒频系统的原理框图,要求:页眉内容1)读入或录制一段语音信号2)利用FFT分析语音信号频谱分布特性。3)选择角频率b和m,设计相应的低通、高通滤波器,画出滤波器的幅频特性图4)利用倒频系统对语音信号进行加密和解密,画出语音信号在加密前和加密后的时域和频域波形图,并通过语音回放验证加密和解密的效果。2.2各题的设计思想2.2.1第一题:验证时域采样定理与频域采样定理时域采样理论和频域采样理论是数字信号处理中的重要理论。验证时域采样定理时域采样定理的主要内容为:(1)对模拟信号以T进行时域等间隔理想采样,形成的采样信号的频率会以角频率为周期进行周期延拓。公式为:(2)采样频率必须大于等于模拟信号最高频率的两倍或两倍以上,才能使采样信号的频谱不会产生频谱混叠。题目中给定了模拟信号,模拟信号的频谱特性曲线如下图所示。图2模拟信号幅频特性曲线图从模拟信号的幅频特性曲线中可以看出,模拟信号的最高频率为500Hz.为了使用DFT得到信号的频谱特性,首先要用下面的公式产生时域离散信号,对于三种不同的采样频率,采样序列按顺序用表示。因为采样频率不同,得到的的长度不同,长度(点数)用公式得到。其中,为观测时间,题中所给的,为采样频率,分别为1000Hz、500Hz和300Hz。然后对得到的进行DFT变换,得到响应的频域响应。然后调用MATLAB函数plot绘制的图像,并比较三者的区别即可验证时域采样定理。验证频域采样定理页眉内容频域采样定理的主要内容为:(1)对信号的频谱函数在上等间隔采样N点,得到则N点IDFT得到的序列就是原序列以N为周期进行周期延拓后的主值区间序列,公式为:(2)由上式可知,频域采样点数N必须大于等于时域离散信号的长度M才能使时域不产生混叠,这是N点IDFT得到的序列就是原序列,即。如果NM,则比原序列尾部多出N-M个零点;如果NM,则发生了时域混叠失真,而且的长度M短,因此,与不相同。本次课程设计中所采用的验证序列是三角波序列,三角波序列的长度M=40,我们首先对三角波序列进行64点DFT,得到然后在此基础上对其进行隔点采样,得到三角波序列的32点DFT序列,对进行IDFT得到,对进行IDFT得到,原三角波序列为。绘图比较、与即可验证频域采样定理。2.2.2第二题:DFT中频率分量的识别本题着重研究用DFT对信号进行谱分析之时出现的频谱泄露问题。由DFT的物理意义可知,序列的N点DFT是的Z变换在单位圆上的N点等间隔采样,同时也是的傅里叶变换在区间上的N点等间隔采样。如果从归一化数字频率的角度来看,N点DFT的频谱的频率分辨率为1/N。题目中给出了给出了N=16和N=128两种情况。针对N=16,又有和两种情况。题目所给信号只有两个频率分量,代表了信号中两频率分量的间隔,即信号的频率分辨率。只有N点DFT的频谱分辨率大于信号的频率分辨率的时候,DFT频谱才是正确的,否则的话,就会出现频谱泄露。因此,我们可以分别绘制N=16和N=64时,和两种情况下的信号的时域波形以及频谱图进行对比。这样,我们就可以确定哪些情况下频谱出现了泄露,哪些情况下频谱没有泄露,进而说明如何选择DFT参数N才能在频谱中分辨出两个不同的频率分量。2.2.3第三题:线性相位带通滤波器的设计本题目的在于用窗函数法考察线性相位带通滤波器的设计。用窗函数设计FIR滤波器的步骤如下:页眉内容(1)根据阻带衰减以及过渡带的的指标要求,选择窗函数的类型,并估计窗口长度N;(2)构造希望逼近的频率响应函数;(3)计算带求滤波器的单位脉冲响应;(4)加窗得到设计结果:。我们在实际设计滤波器时一般采用MATLAB工具箱函数。我在课程设计中调用了工具箱函数fir1实现窗函数设计线性相位数字滤波器的过程。fir1的调用格式及功能:,返回6dB截止频率为wc的M阶FIR低通(wc为标量)滤波器系数向量hn。其中wc为对归一化的数字频率,当wc=[wcl,wcu]时,得到的是带通滤波器,其中-6dB通带为。window为窗函数向量,指定窗函数的类型。设计完滤波器之后,我们需要画出所设计的滤波器的幅频特性和相频特性。我采用了MATLAB函数freqz(B,A,N)来绘制数字滤波器的幅频特性和相频特性,其中的B为数字滤波器系统函数的分子多项式的系数向量,A为数字滤波器系统函数的分母多项式的系数向量,N为DFT的点数。2.2.4第四题:图像信号处理本题首先要求读入一幅彩色图像。不同类型的图像有自己固定的格式。要在MATLAB中使用其他软件生产的图像,需要用imread函数读取该图像。imread函数的调用格式如下:x=imread(filename):其中filename是图像的文件名。矩阵x是由图像文件中读出并转化成MATLAB可识别的图像格式的数据。在MATLAB中,图像通常是由数据矩阵和色彩矩阵组成的。如果该图像是灰度图像,那么x是二维矩阵;如果图像是真彩色的,那么x是三维矩阵。读入图像之后,需要将图像显示出来,这时候可以考虑调用imshow函数。函数调用格式如下:imshow(x):其中x是imread函数的返回值。本题的第二个要求是对读入的彩色图像进行RGB三原色分解,并用图像显示出来。由于读入的图像是真彩色图像,调用imread函数后得到的返回值x是M*N*3矩阵,即三维矩阵。三维矩阵x的最后一维代表RGB分量的具体值。若要显示R分量,则可令G和B分量为0,然后再调用imshow函数显示即可。本题的第三个要求是对读入的图像进行灰度处理并显示灰度图像。查阅资料可知,MATLAB函数rgb2gray可以将彩色图像转化为灰度图像。该函数的调用格式如下:页眉内容y=rgb2gray(x):矩阵x为图像用imread函数读入后得到的返回值,矩阵y为灰度图像的数据矩阵。本题的第四个要求为采用几种典型的边缘检测算子对灰度图像进行边缘检测。图像边缘包含了图像最重要的信息,图像边缘检测是计算机视觉和数字图像处理等领域研究的重要内容之一。边缘是指图像周围像素灰度有阶跃变化或屋顶变化的那些像素的集合,它存在于目标与背景、区域与区域、基元与基元之间,是图像最基本的特征,以及图像分析与识别的重要环节。边缘检测的实质是采用某种算法来提取出图像中对象与背景的交界线。我们将图像的边缘定义为图像中灰度发生急剧变化的区域边界,图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此可以用局部图像微分来获得边缘检测算子。MATLAB中提供了函数edge可以对灰度图像进行边缘检测。edge函数的调用格式如下:y1=edge(y,suanzi):y为灰度图像的数据矩阵,suanzi是边缘检测算子。几种典型的边缘检测算子包括:sobel算子、prewitt算子、roberts算子、log算子和canny算子,返回值y1为边缘检测后图像的数据矩阵。2.2.5第五题:音频信号处理本题首先要求读入CEG和弦音频信号,然后绘制音频信号的时域波形和频域波形。读入音频信号可以采用wavread函数。wavread函数的调用格式如下:[y,fs]=wavread(filename):y就是音频信号,fs是采样频率。绘制出时域波形和频域波形后,观察音频信号的频谱图,我们从中分离出三个能量较为集中的频带。然后设置相应的数字滤波器参数,设计数字滤波器。为了提高滤波器的选择性,我选择了设计椭圆滤波器。MATLAB信号处理工具箱提供了椭圆滤波器的设计函数。本次课程设计中,我用到了ellipord函数和ellip函数,两函数的调用格式如下:[N,wpo]=ellipord(wp,ws,Rp,Rs):用于计算满足指标的椭圆数字滤波器的最低阶数N和通带边界频率wpo。调用参数wp和ws分别为