中南大学数字信号处理课程设计报告x.docx
- 文档编号:712623
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:41
- 大小:630.73KB
中南大学数字信号处理课程设计报告x.docx
《中南大学数字信号处理课程设计报告x.docx》由会员分享,可在线阅读,更多相关《中南大学数字信号处理课程设计报告x.docx(41页珍藏版)》请在冰点文库上搜索。
数字信号处理课设
报告
所在学院:
信息科学与工程学院专业班级:
通信1302班 学生姓名:
陈鑫 学生学号:
0905130208 指导教师:
李宏
12
目录
课程设计目的及要求 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验证时域采样定理与频域采样定理
给定模拟信号:
𝑥𝑎(𝑡)=𝐴𝑒‒𝛼𝑡sin(Ω0𝑡)𝑢(𝑡)
式中,𝐴=444.128,𝛼=502𝜋,Ω0=502𝜋𝑟𝑎𝑑。
对𝑥𝑎(𝑡)进行采样,可得采样序列
𝑥𝑎(𝑛𝑇)=𝐴𝑒‒𝛼𝑛𝑇sin(Ω0𝑛𝑇)𝑢(𝑛𝑇)
1)选择采样频率𝑓𝑠=1𝑘𝐻𝑧,观测时间𝑇𝑝=50𝑚𝑠,观测所得序列𝑥(𝑛)及其幅频特性|𝑋(𝑒𝑗𝑤)|;
2)改变采样频率𝑓𝑠=300𝐻𝑧,观测此时|𝑋(𝑒𝑗𝑤)|的变化;
3)令采样频率𝑓𝑠=200𝐻𝑧,观测此时|𝑋(𝑒𝑗𝑤)|的变化;
要求分析说明原理,绘出相应的序列及其它们对应的幅频特性曲线,指出
|𝑋(𝑒𝑗𝑤)|的变化,说明为什么?
本题的目的在于验证时域采样理论。
为了说明时域采样与频域采样的对偶性,我有选做了第二组的第一小题。
题目如下:
1)产生一个三角波序列𝑥(𝑛),长度为M=40;
2)计算𝑁=64点的
𝑋(𝑘)=𝐷𝐹𝑇[𝑥(𝑛)],并画出𝑥(𝑛)和|𝑋(𝑘)|的波形
3)对𝑋(𝑘)在[0,2𝜋]上进行32点抽样,得到𝑋1(𝑘)=𝑋(2𝑘),𝑘=0,1,2,…,31
4)求𝑋1(𝑘)的32点IDFT,即𝑥1(𝑛)=𝐼𝐷𝐹𝑇[𝑋1(𝑘)];
5)绘出𝑥1(𝑛)的波形图,观察𝑥1(𝑛)和𝑥(𝑛)的关系,并加以说明。
2.1.2DFT的应用
一个连续信号含两个频率分量,经采样得
𝑥(𝑛)=sin(2𝜋∗0.125𝑛)+cos(2𝜋(0.125+Δ𝑓)𝑛),𝑛=0,1,2,…,𝑁‒1
当𝑁=16时,Δ𝑓分别为1/16和1/64时,观察其频谱;当𝑁=128时,Δ𝑓不变,其结果有何不同,为什么?
绘出相应的时域与频域特性曲线,分析说明如何选择DFT参数才能在频谱分析中分辨出两个不同的频率分量。
2.1.3线性相位带通滤波器的设计
1)𝑁=15,𝜔1=0.3𝜋𝑟𝑎𝑑,𝜔2=0.5𝜋𝑟𝑎𝑑。
用Hanning窗设计一线性相位带通滤波器,观察它的实际3dB和20dB带宽。
𝑁=45,重复这一设计,观察幅频和相位特性的变化,注意长度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倒频系统实现
倒频是目前对讲机采用的一种语音保密技术。
它是将信号的高频和低频进行交换,即将信号的高频部分搬到低频段,而将低频部分搬到高频段。
倒频后的信号和原始信号具有相同的频带范围。
由于原始语音信号的频率成分被置乱从而降低了可懂度,起到语音保密作用。
在接受端采用同样的倒频器再将信号恢复。
倒频系统的工作原理如图所示,设输入信号的最高角频率为wm。
图中HP是理想高通滤波器,其截止角频率为wb,LP为理想低通滤波器,其截止角频率为
wm,
图1倒频系统原理框图
根据倒频系统的原理框图,要求:
1)读入或录制一段语音信号
2)利用FFT分析语音信号频谱分布特性。
3)选择角频率wb和wm,设计相应的低通、高通滤波器,画出滤波器的幅频特性图
4)利用倒频系统对语音信号进行加密和解密,画出语音信号在加密前和加密后的时域和频域波形图,并通过语音回放验证加密和解密的效果。
2.2各题的设计思想
2.2.1第一题:
验证时域采样定理与频域采样定理
时域采样理论和频域采样理论是数字信号处理中的重要理论。
2.2.1.1验证时域采样定理
时域采样定理的主要内容为:
(1)对模拟信号𝑥𝑎(𝑡)以T进行时域等间隔理想采样,形成的采样信号的频率
会以角频率Ω𝑠(Ω𝑠=2𝜋/𝑇)为周期进行周期延拓。
公式为:
𝑎
𝑎
𝑎
𝑠
𝑋'(𝑗Ω)=𝐹𝑇(𝑥'(𝑡)]=1𝑇∗∑𝑋(𝑗Ω‒𝑗𝑛Ω)
(2)采样频率Ω𝑠必须大于等于模拟信号最高频率的两倍或两倍以上,才能使
采样信号的频谱不会产生频谱混叠。
题目中给定了模拟信号𝑥𝑎(𝑡),模拟信号𝑥𝑎(𝑡)的频谱特性曲线如下图所示。
图2模拟信号幅频特性曲线图
从模拟信号𝑥𝑎(𝑡)的幅频特性曲线中可以看出,模拟信号𝑥𝑎(𝑡)的最高频率为
500Hz.
为了使用DFT得到信号的频谱特性,首先要用下面的公式产生时域离散信号,对于三种不同的采样频率,采样序列按顺序用𝑥1(𝑛)、𝑥2(𝑛)、𝑥3(𝑛)表示。
𝑥(𝑛)=𝑥𝑎(𝑛𝑇)=𝐴𝑒‒𝛼𝑛𝑇sin(Ω0𝑛𝑇)𝑢(𝑛𝑇)
因为采样频率不同,得到的𝑥1(𝑛)、𝑥2(𝑛)、𝑥3(𝑛)的长度不同,长度(点数)用公式
𝑁=𝑇𝑃𝐹𝑠
得到。
其中,𝑇𝑃为观测时间,题中所给的𝑇𝑃=50𝑚𝑠,𝐹𝑆为采样频率,分别为1000Hz、500Hz和300Hz。
然后对得到的𝑥1(𝑛)、𝑥2(𝑛)、𝑥3(𝑛)进行DFT变换,得到响应的频域响应
𝑋1(𝑘)、𝑋2(𝑘)、𝑋3(𝑘)。
𝑋(𝑘)=𝐹𝐹𝑇[𝑥(𝑛)],𝑘=0,1,2,3,…,𝑁‒1
然后调用MATLAB函数plot绘制𝑋1(𝑘)、𝑋2(𝑘)、𝑋3(𝑘)的图像,并比较三者的区别即可验证时域采样定理。
2.2.1.2验证频域采样定理
频域采样定理的主要内容为:
(1)对信号𝑥(𝑛)的频谱函数𝑋(𝑒𝑗𝑤)在[0,2𝜋]上等间隔采样N点,得到
𝑋𝑁(𝑘)=𝑋(𝑒𝑗𝑤),𝜔=2𝑘𝜋𝑁,𝑘=0,1,2,…,𝑁‒1
则N点IDFT得到的序列就是原序列𝑥(𝑛)以N为周期进行周期延拓后的主值区间序列,公式为:
𝑥𝑁(𝑛)=𝐼𝐷𝐹𝑇[𝑋𝑁(𝑘)]𝑁=[∑𝑥(𝑛+𝑖𝑁)]𝑅𝑁(𝑛)
(2)由上式可知,频域采样点数N必须大于等于时域离散信号的长度M才能使时域不产生混叠,这是N点IDFT得到的序列𝑥𝑁(𝑛)就是原序列𝑥(𝑛),即
𝑥𝑁(𝑛)=𝑥(𝑛)。
如果N>M,则𝑥𝑁(𝑛)比原序列尾部多出N-M个零点;如果
N 𝑥(𝑛)不相同。 本次课程设计中所采用的验证序列是三角波序列,三角波序列的长度M =40,我们首先对三角波序列进行64点DFT,得到 𝑋(𝑘)=𝑋64(𝑘)=𝐷𝐹𝑇[𝑥(𝑛)]64 然后在此基础上对其进行隔点采样,得到三角波序列的32点DFT序列 𝑋1(𝑘)=𝑋(2𝑘)=𝑋32(𝑘)=𝐷𝐹𝑇[𝑥(𝑛)]32, 对𝑋1(𝑘)进行IDFT得到𝑥1(𝑛),对𝑋(𝑘)进行IDFT得到𝑥2(𝑛),原三角波序列为𝑥(𝑛)。 绘图比较𝑥1(𝑛)、𝑥2(𝑛)与𝑥(𝑛)即可验证频域采样定理。 2.2.2第二题: DFT中频率分量的识别 本题着重研究用DFT对信号进行谱分析之时出现的频谱泄露问题。 由DFT 的物理意义可知,序列𝑥(𝑛)的N点DFT是𝑥(𝑛)的Z变换在单位圆上的N点等 间隔采样,同时也是𝑥(𝑛)的傅里叶变换𝑋(𝑒𝑗𝑤)在区间[0,2𝜋]上的N点等间隔采样。 如果从归一化数字频率的角度来看,N点DFT的频谱的频率分辨率为1/N。 题目中给出了给出了N =16和N=128两种情况。 针对N =16,又有Δ𝑓=1/16和Δ𝑓=1/64两种情况。 题目所给信号只有两个频率分量,Δ𝑓代表了信号中两频率分量的间隔,即信号的频率分辨率。 只有N点DFT的频谱分辨率大于信号的频率分辨率的时候,DFT频谱才是正确的,否则的话,就会出现频谱泄露。 因此,我们可以分别绘制N=16和N=64时,Δ𝑓=1/16和Δ𝑓=1/64两种情 况下的信号的时域波形以及频谱图进行对比。 这样,我们就可以确定哪些情况下频谱出现了泄露,哪些情况下频谱没有泄露,进而说明如何选择DFT参数 N才能在频谱中分辨出两个不同的频率分量。 2.2.3第三题: 线性相位带通滤波器的设计 本题目的在于用窗函数法考察线性相位带通滤波器的设计。 用窗函数设计 FIR滤波器的步骤如下: (1)根据阻带衰减以及过渡带的的指标要求,选择窗函数的类型,并估计窗口长度N; (2)构造希望逼近的频率响应函数𝐻𝑑(𝑒𝑗𝜔); (3)计算带求滤波器的单位脉冲响应ℎ𝑑(𝑛); (4)加窗得到设计结果: ℎ(𝑛)=ℎ𝑑(𝑛)𝑤(𝑛)。 我们在实际设计滤波器时一般采用MATLAB工具箱函数。 我在课程设计中调用了工具箱函数fir1实现窗函数设计线性相位数字滤波器的过程。 fir1的调用格式及功能: ℎ𝑛=𝑓𝑖𝑟1(𝑀,𝑤𝑐,𝑤𝑖𝑛𝑑𝑜𝑤),返回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分别为数字滤波器的通带边界频率和阻带边界频率的归一化值。 Rp和Rs分别为通带最大衰减和阻带最小衰减。 [B,A]=ellip(N,Rp,Rs,wpo,’ftype’): 当wpo表示滤波器通带边界频率的标量,而且缺省参数ftype时,该格式返回N阶低通椭圆数字滤波器系统函数的分子和分母多项式系数向量B和A,滤波器通带波纹为RpdB;当ftype=high时, 返回N阶高通椭圆数字滤波器系统函数系数向量B和A。 当wpo是表示带通滤波器通带边界频率的二元向量,而且缺省参数ftype时,该格式返回2N阶带通 椭圆数字滤波器系统函数的分子和分母多项式系数向量B和A,滤波器通带波纹为RpdB。 当ftype=stop时,返回2N阶阻带椭圆数字滤波器系统函数系数向量B和A。 得到滤波器系统函数的分子和分母多项式的系数向量B和A后,我们利用 filter函数对时域信号进行滤波处理。 filter函数的调用格式如下: y=filter(B,A,x): B和A分别为滤波器系统函数的分子和分母多项式的系数向量B和A,x为将要进行滤波处理的时域信号,y为滤波后得到的时域信号。 然后对得到的时域信号进行合并处理,即可重建信号。 我们可以绘制重建信号的时域波形和频域波形,与原信号的时域波形和频域波形进行对比。 同时,我们也可以利用sound函数播放原信号和重建信号,直观比较二者,以验证滤波处理的功效。 2.2.6第六题: 倒频系统实现 本题首先要求读入或录制一段语音信号,调用MATLAB函数wavread即可完成。 为了分析信号的频谱分布特性,只需用fft函数得到时域信号的频谱,然后再绘图即可。 然后,我们需要仔细观察得到的频谱图,从而确定系统框图中所给定的参数𝜔𝑏和𝜔𝑚。 利用这两个参数,我们仿照第五题中设计滤波器的方法设计相应的数字低通和数字高通滤波器。 设计出滤波器之后,按照系统框图逐步对读入的时域信号进行处理即可实现倒频系统。 实现了倒频系统之后,我们首先对时域信号进行加密。 但是要注意,经过倒频系统之后,时域信号的幅度减小为原来的1/4,我们需要乘上增益4。 为了对加密后的信号进行解密,我们可以再利用设计的倒频系统进行处理,自然就解密了。 2.3GUI界面设计 2.3.1采用GUI界面的原因 本次课程设计中的图形太多,在验收的时候需要创建多个图形窗口,非常不利于验收及查看,影响人机交互。 基于以上原因,我们最终决定采用图形用户界面GUI界面进行展示。 2.3.2界面系统功能分析 本次课程设计最终使用的GUI界面如图3所示。 图3GUI界面 下面,我们对GUI界面的系统功能做一个简要的分析介绍。 本系统主要由各个菜单组成。 菜单栏上的6个菜单项分别代表本次课程设计所做的6道题目。 菜单项Problem1下有两个一级子菜单Time、Frequency。 Time代表验证时域采样定理,Frequency代表验证频域采样定理; 菜单项Problem2下有两个一级子菜单N=16,N=128。 N=16子菜单代表序列长度N=16时的处理结果; 菜单项Problem3下有两个一级子菜单N=15、N=45。 N=15子菜单下有三个二级子菜单Boxcar、Hanning和Blackman,分别代表序列长度N=15时,我们采用不同窗函数所设计的FIR滤波器。 N=45下的子菜单与N=15相同,功能类似; 菜单项Problem4下有四个一级子菜单: ReadImage、RGB、Grey和EdgeCheck,分别对应四个小题的处理结果; 菜单项Problem5下有7个一级子菜单: CEG、Rebuilt、Random、Filter、Low、Band和High。 CEG、Rebuilt和Random都含有两个二级子菜单: Wave、Sound。 分别代表CEG和弦音频信号(重建后的信号或随意重建的信号)的时域波形和频谱图显示与播放CEG和弦音频信号 (重建后的信号或随意重建的信号)。 Filter子菜单显示三个所用到的数字滤波器的损耗函数曲线。 Low、Band、High子菜单分别显示低通(带通、高通)滤波处理后的CEG和弦音频信号的时域波形和频谱图; 菜单项Problem6下有5个一级子菜单: Music、Encryption、Decryption、Low、Filter。 Music、Encryption和 Decryption下都有Wave和Sound子菜单项,功能与前述相似。 Low菜单项显示经过低通滤波预处理后的音乐信号的时域波形和频谱图。 Filter菜单项则显示倒频系统所用到的高通滤波器和低通滤波器的损耗函数曲线。 三、调试结果及分析 3.1GUI界面的结果及调试 本次课程设计的演示界面采用GUI界面,界面的调试结果如图3所示。 用户可以根据需要选择题目,每个题目中又有不同的选项。 只要点击对应的菜单项,相关的处理结果就会显示出来。 3.2各题调试结果及分析 3.2.1第一题 第一题的时域采样的调试结果如下图所示。 图4时域采样定理验证 分析: 从上图可以看出,当采样频率为1000Hz时,信号的频谱恰好没有出现混叠。 当采用频率为500Hz和300Hz时,信号的频谱出现了严重的频谱混叠,验证了时域采样定理。 第一题的频域采样的调试结果如下图所示。 图6频域采样定理验证 分析: 上图验证了频域采样理论和频域采样定理。 对信号𝑥(𝑛)的频谱函数 𝑋(𝑒𝑗𝜔)进行在[0,2𝜋]上等间隔采样N=40时,N点IDFT得到的序列正是原序列 ∑ 𝑥(𝑛)以40为周期延拓后的主值区序列。 𝑥𝑁(𝑛)=𝐼𝐷𝐹𝑇[𝑋𝑁(𝑘)]𝑁=[ 𝑥(𝑛+𝑖𝑁)𝑅𝑁(𝑛) 当N 当N≥M时,如上图中N=40或64时,时域信号没有发生混叠失真。 3.2.2第二题 第二题的调试结果如下图所示。 13 图7问题二结果一 图8问题二结果二 分析: N=16,频谱分辨率为1/16,Δ𝑓=1/16时,从频谱中可以分辨出两个频率分量,Δ𝑓=1/64时,无法从频谱中分辨出两个频率分量。 N=128时,频谱分辨率为1/128,Δ𝑓=1/16和Δ𝑓=1/64时,都能从频谱中分辨出两个频率分量。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中南 大学 数字信号 处理 课程设计 报告