数字信号处理课设报告.docx
- 文档编号:1963166
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:24
- 大小:200.85KB
数字信号处理课设报告.docx
《数字信号处理课设报告.docx》由会员分享,可在线阅读,更多相关《数字信号处理课设报告.docx(24页珍藏版)》请在冰点文库上搜索。
XX大学
数字信号处理课程设计
院系:
信息科学与工程学院
专业:
通信工程
姓名:
学号:
指导老师:
一、目录
一、目录
二、程序分析与设计
1.1设计题目和题目设计要求
1.2设计思想和系统功能分析
1.3测试数据、测试输出结果,及理论分析和比较
2.1设计题目和题目设计要求
2.2设计思想和系统功能分析
2.3测试数据、测试输出结果及理论分析和比较
3.1设计题目和题目设计要求
3.2设计思想和系统功能分析
3.3测试数据、测试输出结果,及理论分析和比较
三、设计心得与体会
四、参考资料
五、程序源代码
二、程序分析与设计
1.1设计题目和题目设计要求
一、
1)生成信号发生器:
能产生频率(或基频)为10Hz的周期性正弦波、三角波和方波信号。
绘出它们的时域波形
2)为避免频谱混叠,试确定各信号的采样频率。
说明选择理由。
3)对周期信号进行离散傅立叶变换,为了克服频谱泄露现象,试确定截取数据的长度,即信号长度。
分析说明选择理由。
4)绘出各信号频域的幅频特性和相频特性
5)以正弦周期信号为例,观察讨论基本概念(频谱混叠、频谱泄漏、整周期截取等)。
1.2设计思想和系统功能分析
(1)首先调用简单函数生成三种信号绘出时域波形,
(2)然后对连续信号进行采样,将其离散化得到离散信号,由题意可知信号最高频率分量为10HZ,由采样定理得知采样频率应该大于2fs=20Hz,一般取3到5倍,所以采样频率可取100Hz,采样点数可取128。
采样直接将t变换为1/fs即可,由简单的matlab语句即可实现,在采样结束后对三个序列进行离散傅里叶变换。
通过改变各信号的采样频率来观察频谱混叠现象;(3)加窗将原信号截短形成有限长序列,通过改变截取数据的长度来观察分析频谱泄露现象;(4)绘出各信号频域的幅频特性和相频特性;(5)通过整周期截取与非整周期截取信号后波形及频谱来分析整周期截取的原因等。
1.3测试数据、测试输出结果,及理论分析和比较
(1)基频为10Hz的周期性正弦波、三角波和方波信号的时域波形
正弦波信号:
x=sin(2*pi*f*t-0.02*pi);
三角波信号:
y=sawtooth(2*pi*f*t,0.5);
方波信号:
z=square(2*pi*f*t,50);
(2)观察混叠现象
fs=100Hz时,混叠图像为
fs=50Hz时,混叠图像为
采样频率Fs只有在满足采样定理(Fs大于两倍的最大频率)时,采样信号通过一个理想低通滤波器恢复出原连续信号,所以信号的采样频率Fs=100Hz。
如图中当Fs越来越小时,在f=Fs/2附近产生了频谱混叠现象,这时用DFT分析的结果必然在f=Fs/2产生较大的误差。
对于Fs确定的情况下,我们一般在采样前进行预滤波,滤除高于折叠频率Fs/2的频率成分,以免发生混叠现象。
(3)观察截断效应
下图为当N=40时,正弦波的截断信号与频谱图:
下图为当N=100时,正弦波的截断信号与频谱图:
下图为当N=40时,三角波的截断信号与频谱图:
下图为当N=100时,三角波的截断信号与频谱图:
下图为当N=40时,方波的截断信号与频谱图:
下图为当N=100时,方波的截断信号与频谱图:
由以上图对比可以看出,增大N使信号幅度谱的主瓣变窄,减小泄露,提高了频率分辨率,但旁瓣的相对幅度并没有减小。
所以确定信号截取数据的长度为N=100,能够更好地克服频谱泄露现象。
(4)绘出各信号频域的幅频特性和相频特性
(5)任以一数字正弦信号为例,观察讨论整周期截取
整周期截取实现不必加窗采到整周期的信号,上图N=128由于截取了整个周期得到单一谱线的频谱,下图N=60由于时域中对信号的非整周期截断产生频谱泄露。
2.1设计题目和题目设计要求
二、已知三个信号,经调制产生信号,其中为常数,为具有窄带特性的Hanning信号。
将此已调信号通过信道传输,描述该信道的差分方程为
得到接收信号
1)分析Hanning信号的时域与频域特性
2)分析已调信号的时域与频域特性
3)分析系统的单位脉冲响应
4)分析接收信号的频谱
5)设计带通滤波器从接收信号中还原出三个已调信号。
2.2设计思想和系统功能分析
(1)首先调用简单的汉宁窗函数wn=hanning(N)或利用公式pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn绘出Hanning信号的时域波形与频谱图来分析的时域与频域特性;
(2)与上一小问思路类似,由题中给出的信号的公式,给定ai值后绘出其时域波形与频谱图然后分析;
(3)构造单位脉冲函数xn,利用滤波器函数filter(b,a,xn),由题中差分方程确定参数a、b后即可得到单位脉冲响应;
(4)与上一小问思路相同,可以将信道当作类似于滤波器的作用,经过信道传输后的信号也可以利用滤波器函数filter(b,a,yn)得到;
(5)最后利用带通滤波器从接收信号中分别还原出三个已调信号即可,但是试验后发现要滤出靠左和靠右的两个信号时,分别使用低通滤波器和高通滤波器滤出的结果比使用带通滤波器时得出的信号可靠一些,所以做出了两组结果图以供比较使用。
2.3测试数据、测试输出结果,及理论分析和比较
(1)Hanning信号的时域波形与频谱图
(2)已调信号的时域波形与频谱图
(3)系统的单位脉冲响应的时域波形与频谱图
(4)接收信号的时域波形与频谱图
(5)设计带通滤波器从接收信号中还原出三个已调信号
5).1.1设计带通滤波器从中还原出左边的信号
5).1.2设计低通滤波器从中还原出左边的信号
5).2设计带通滤波器从中还原出中间的已调信号
5).3.1设计带通滤波器从中还原出右边的已调信号
5).3.2设计高通滤波器从中还原出右边的已调信号
由以上两图可以看出,带通滤波器滤出的信号相比原信号主峰的高度下降很多,高通滤波器滤出的结果相对可靠一些。
3.1设计题目和题目设计要求
三、图像信号相关处理
1)读入一幅彩色图像
2)将彩色图像进行三原色分解,分解出R、G、B分量,并用图像显示出来
3)将彩色图像灰度化,转换为灰度图像并显示
4)对灰度图像用几种典型的边缘检测算子进行边缘检测,显示检测出的边缘。
3.2设计思想和系统功能分析
首先利用imread函数读入原图像,再通过imshow函数显示原彩色图像;然后通过r/g/b三个函数分别分解出图像的R/G/B分量;利用rgb2gray函数将原图像灰度化;最后对灰度图像用几种典型的边缘检测算子(例如log、roberts、prewitt等算子)进行边缘检测,显示检测出的边缘。
题中主要的要求由简单的matlab语句均可实现。
3.3测试数据、测试输出结果,及理论分析和比较
三、设计心得与体会
本次的数字信号处理课程设计对于我来说是一笔宝贵的财富,从一开始的对给定题目的茫然无知以及对matlab语言的一窍不通,到现在我完成课程设计以后的对它们的掌握程度,真的是一个很大的改变和进步,我感觉此次课程设计收获很多,也锻炼了我查资料并从中搜集需要的信息的能力。
一开始我真的感觉这个任务我自己是无法完成的,但是后来看着大家都在查阅资料,认真分析题目,我深有感触,没有什么做不到的,就看你自己想不想做,于是我去图书馆借了有关matlab的资料以及关于数字信号处理的书籍,在经过几天的查阅后,我对matlab有了初步的了解,于是我开始尝试解题,因为之前对题目做过理论分析,于是我参考资料上的题目开始编写程序,当我完成第一个题目时我心中难以掩饰的激动,在运行完程序之后看到自己所写程序正确运行的结果,我感到信心大增,但是之后的任务并不像我所想的那么简单,也没那么顺利了,对于一些语句不知道意思,以及matlab的内部函数的应用,在同学的帮助指导下,以及自己查阅资料,最终还是解决了所遇到的各种问题。
本次课程设计是十分有必要的,在此次实践中我收获到了如何自己独立解决问题以及自主学习的方法,不管结果如何,过程才是最重要的,为我们将来走向社会独立面对问题、独立学习打下了基础,并且也巩固了现代信号处理的一些知识和方法理论,为我们学习后续的专业知识打下基础。
作为通信工程的学生,掌握信号处理的一些基本理论方法是我们必备的,matlab作为一种信号处理的工具,掌握它将对我们今后的学习也大有帮助。
在这次课程设计中我巩固的所学的知识,初步学会了使用MATLAB,我感觉获益匪浅,非常感谢在我上机时帮助我的老师和同学!
四、参考资料
·《数字信号处理》.丁玉美等,西安电子科技大学出版社。
·数字信号处理,赵树杰等,西电出版社。
·数字信号处理教程:
MATLAB释义与实现(第2版),陈怀琛,电子工业出版社。
·Matlab数字信号处理,机械工业出版社,王彬,于丹。
·现代信号处理教程,胡广书编著,清华大学出版社。
五、程序源代码
第一题
(1)%分别生成三种信号
t=0:
0.001:
1;
f=10;
x=sin(2*pi*f*t-0.02*pi);
figure
(1);
subplot(311);
plot(t,x);
axis([0,1,-1,1]);
title('正弦信号时域波形');
y=sawtooth(2*pi*f*t,0.5);
subplot(313);
plot(t,y);
axis([0,1,-2,2]);
title('三角波信号时域波形');grid;
z=square(2*pi*f*t,50);
subplot(312);
plot(t,z);
axis([0,1,-2,2]);
title('方波信号时域波形');grid;
--------------------------------------------
(2)%观察频谱混叠
fs=100;
f=10;
t=0:
1/fs:
1;
x=sin(2*pi*f*t-0.02*pi);
subplot(321);
stem(t,x);
X=fft(x);
N=fs;
f=fs*(0:
N/2)/N;
F=X(1:
N/2+1);
subplot(322);
plot(f,abs(F));
x=sawtooth(2*pi*f*t,0.5);
subplot(323);
stem(t,x);
X=fft(x);
N=fs;
f=fs*(0:
N/2)/N;
F=X(1:
N/2+1);
subplot(324);
plot(f,abs(F));
x=square(2*pi*f*t,50);
subplot(325);
stem(t,x);
X=fft(x);
N=fs;
f=fs*(0:
N/2)/N;
F=X(1:
N/2+1);
subplot(326);
plot(f,abs(F));
------------------------------------------
(3)%观察频谱泄露
N=40;%N为矩形窗长度
Rn=[ones(1,N-1),zeros(1,121-N)];
n=0:
1:
119;
x=sin(pi*n*0.2-0.02*pi).*Rn;%加窗
wvtool(x)
y=sawtooth(pi*n*0.2,0.5).*Rn;%加窗
wvtool(y)
z=square(pi*n*0.2,50).*Rn;%加窗
wvtool(z)
---------------------------------------------------------------
(4)%画出幅频相频特性图
fs=100;N=128;f=10;
dt=1/fs;
n=0:
N-1;
t=n*dt;%采样
x=sin(2*pi*f*t);
X=fft(x,N);
f=n*fs/N;
subplot(211);stem(f,abs(X),'.');%幅频特性图
title('正弦的幅频图');
subplot(212);stem(f,angle(X),'.');%相频特性图
title('正弦的相频图');
x=sawtooth(2*pi*f*t,0.5);
X=fft(x,N);
f=n*fs/N;
subplot(211);stem(f,abs(X),'.');%幅频特性图
title('三角波的幅频图');
subplot(212);stem(f,angle(X),'.');%相频特性图
title('三角波的相频图');
x=square(2*pi*f*t,50);
X=fft(x,N);
f=n*fs/N;
subplot(211);stem(f,abs(X),'.');%幅频特性图
title('方波的幅频图');
subplot(212);stem(f,angle(X),'.');%相频特性图
title('方波的相频图');
-----------------------------------------------------------------------
(5)%任选一数字正弦信号讨论整周期截取比较波形
w=pi/8;
n1=[0:
128];%整周期截取
xn1=sin(w*n1);
xk1=fft(xn1,128);
n2=[0:
70];%非整周期截取
xn2=sin(w*n2);
xk2=fft(xn2,128);
k=0:
127;
wk=2*pi*k/128;%产生128点dft对应的采样点频率
subplot(4,1,1);
stem(n1,xn1,'.');
xlabel('n1');
ylabel('xn1');
title('整周期截取信号');
gridon
subplot(4,1,2);
stem(wk,abs(xk1),'.');
ylabel('幅度');
title('整周期信号128点dft频谱');
gridon
subplot(4,1,3);
stem(n2,xn2,'.');
xlabel('n2');
ylabel('xn2');
title('非整周期截取信号');
gridon
subplot(4,1,4);
stem(wk,abs(xk2),'.');
ylabel('幅度');
title('非整周期信号128点dft频谱');gridon
第二题
(1)%汉宁信号pn
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;
subplot(211);
stem(n,pn);
title('汉宁窗');
[H,w]=freqz(pn,1,512);
magH=abs(H);
length(w)
length(H)
magHdB=20*log10(magH);
subplot(212);
plot(w/pi,magHdB);
grid;
-----------------------------------------------------------------------
(2)%已调信号
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];%构造矩形窗
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;%构造汉宁窗
sn=[0.7*cos(0.25*pi*n)+1.2*cos(0.5*pi*n)+1.8*cos(0.75*pi*n)].*pn;%构造已调型号sn
wvtool(sn)
-----------------------------------------------------------------------
(3)系统的单位脉冲响应
n=0:
30;
xn=[1,zeros(1,31)];
a=[1-1.11720.9841-0.40220.2277];%yn参数
b=[0.2277-0.40220.9841-1.11721];%xn参数
hn=filter(b,a,xn);
subplot(211);
stem(hn);
[H,w]=freqz(hn,1,512);
magH=abs(H);
length(w);
length(H);
magHdB=20*log10(magH);
subplot(212);
plot(w/pi,magHdB);
grid;
-------------------------------------------------------------------------
(4)接收信号
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];%构造矩形窗
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;%构造汉宁窗
sn=[0.7*cos(0.25*pi*n)+1.2*cos(0.5*pi*n)+1.8*cos(0.75*pi*n)].*pn;%构造已调型号
a=[1-1.11720.9841-0.40220.2277];%yn参数
b=[0.2277-0.40220.9841-1.11721];%xn参数
yn=filter(b,a,sn);
wvtool(yn)
----------------------------------------------------------------------
5).1.1%低通滤波器滤出左边信号
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];%构造矩形窗
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;%构造汉宁窗
sn=[0.7*cos(0.25*pi*n)+1.2*cos(0.5*pi*n)+1.8*cos(0.75*pi*n)].*pn;%构造已调型号
a=[1-1.11720.9841-0.40220.2277];%yn参数
b=[0.2277-0.40220.9841-1.11721];%xn参数
yn=filter(b,a,sn);
wp=0.6;%参数
ap=0.3;
ws=0.55;
as=20;
[n,wc]=buttord(wp,ws,ap,as);
[bz,az]=butter(n,wc,'high');
x1=filter(bz,az,yn);
wvtool(x1);
---------------------------------------------------------------
5).1.2%带通滤波器滤出左边信号
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];%构造矩形窗
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;%构造汉宁窗
sn=[0.7*cos(0.25*pi*n)+1.2*cos(0.5*pi*n)+1.8*cos(0.75*pi*n)].*pn;%构造已调型号
a=[1-1.11720.9841-0.40220.2277];%yn参数
b=[0.2277-0.40220.9841-1.11721];%xn参数
yn=filter(b,a,sn);wp1=[0.15,0.3];
ws1=[0.1,0.4];
ap1=1;
as1=20;
[n1,wc1]=buttord(wp1,ws1,ap1,as1);
[bz,az]=butter(n1,wc1);
x2=filter(bz,az,yn);wvtool(x2);
----------------------------------------------------------------
5).2
%带通滤波器滤出中间信号
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];%构造矩形窗
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;%构造汉宁窗
sn=[0.7*cos(0.25*pi*n)+1.2*cos(0.5*pi*n)+1.8*cos(0.75*pi*n)].*pn;%构造已调型号
a=[1-1.11720.9841-0.40220.2277];%yn参数
b=[0.2277-0.40220.9841-1.11721];%xn参数
yn=filter(b,a,sn)
wp1=[0.45,0.55];
ws1=[0.4,0.6];
ap1=1;
as1=20;
[n1,wc1]=buttord(wp1,ws1,ap1,as1);
[bz,az]=butter(n1,wc1);
x2=filter(bz,az,yn);wvtool(x2);
-------------------------------------------------------------------
5).3.1
%带通滤波器滤出右边信号
N=40;
n=0:
39;
Rn=[ones(1,N-1)zeros(1,41-N)];%构造矩形窗
pn=0.5*[1-cos((2*pi*n)/(N-1))].*Rn;%构造汉宁窗
sn=[0.7*cos(0.25*pi*n)+1.2*cos(0.5*pi*n)+1.8*cos(0.75*pi*n)].*pn;%构造已调型号
a=[1-1.11720.9841-0.40220.2277];%yn参数
b=[0.2277-0.40220.9841
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 报告