当前位置:文档之家› 数字信号课程设计

数字信号课程设计

数字信号课程设计
数字信号课程设计

一、利用DFT 分析离散序列频谱

应用傅里叶变换DFT ,分析各种离散序列x(n)的频谱。离散周期信号的分析 离散周期信号可以展开成离散傅里叶级数,

∑-==10

2)(~.1)(~N k kn N j e k X N n x π

其中傅里叶系数)(~

k X 如下所示:

∑-=-=10

2)(~.)(~

N n kn N j e n x k X π

式中:N 是序列的周期,n 为时间离散变量, k 为数字频率离散变量,是k 次谐波的数字频率。所以离散周期信号的频谱X (k)是一个以N 为周期的周期性离散频谱,各谱线之间的间隔为ω0=2π/ N ,而且存在着谐波的关系。

离散周期序列在时域与频域都是离散的、以N 为周期的序列。正确地在一个周期内选取N ,即可以准确地求取周期序列的频谱。

离散周期序列频谱的求解步骤: (1)确定离散周期序列的基本周期N ;

(2)使用fft 命令作N 点FFT 计算。频率分辨率F 0=2π/N (3)令X(k ω0 )=1/NX (k )。

1.利用DFT 计算序列)(21)(n u n x n

??

?

??=的频谱

(1)程序 N=100;n=0:N-1;

x1=(n>=0); x=x0.*x1; X=1/N*fft(x,N); omega=2*pi/N*(n-N/2);

subplot(2,1,1); stem(omega,abs(fftshift(X))); ylabel('Magnitude'); xlabel('Frequency (rad)' ); subplot(2,1,2); stem(omega,angle(fftshift(X))); ylabel('Phase'); xlabel('Frequency (rad) ' );

-4

-3-2-1

01

234

00.005

0.010.015

0.02M a g n i t u d e

Frequency (rad)

-4

-3-2-1

01

234

-1-0.500.5

1P h a s e

Frequency (rad)

(2)程序

N=256;n=0:N-1; x0=(0.5).^n;

x=x0.*x1; X=1/N*fft(x,N);

omega=2*pi/N*(n-N/2);

subplot(2,1,1); stem(omega,abs(fftshift(X))); ylabel('Magnitude'); xlabel('Frequency (rad)' ); subplot(2,1,2); stem(omega,angle(fftshift(X))); ylabel('Phase'); xlabel('Frequency (rad) ' );

-4-3-2-1

01

234

02468

-3

M a g n i t u d e

Frequency (rad)

-4

-3-2-1

01

234

-1-0.50

0.5

1P h a s e

Frequency (rad)

(3)程序

N=300;n=0:N-1; x0=(0.5).^n; x1=(n>=0);

x=x0.*x1;

X=1/N*fft(x,N);

omega=2*pi/N*(n-N/2);

subplot(2,1,1); stem(omega,abs(fftshift(X))); ylabel('Magnitude'); xlabel('Frequency (rad)' ); subplot(2,1,2); stem(omega,angle(fftshift(X))); ylabel('Phase'); xlabel('Frequency (rad) ' );

-4

-3-2-1

01

234

02

468

-3

M a g n i t u d e

Frequency (rad)

-4

-3-2-1

01

234

-1-0.50

0.5

1P h a s e

Frequency (rad)

二、连续系统的分析

零输入、零状态法求解系统的响应MATLAB 的控制工具箱(control toolbox )里包含了许多可用于分析线性时不变(LTI )系统的函数,使用命令help control 可以查看控制工具箱里的这些函数。

对于线性时不变的连续系统,在时域中其数学模型用常系数线性微分方程来描述。如下:

)()()(0

)

(0

t x b t y

a j M

j j i N

i i ∑∑===

在拉普拉斯变换中,可用系统函数H(s)来描述,且根据其零,极点的分布情况,可以决定系统的结构及系统的稳定性。

∑∑===

N

i i

i M

j j

j s

a s

b s H 0

0)(

另外还可以用状态变量分析法进行系统描述。 此设计完成用Matlab 实现几种分析方法的相互转换。 在Matlab 中,描述系统的传递函数(系统函数)型tf(transfer function),零极点型zp(zero pole)以及状态变量型ss(state space)三种方式可以方便的转换。

Matlab 相应的语句为:

tf2zp ——系统函数型转换到零极点型 tf2ss ——系统函数型转换到状态变量型 zp2tf ——零极点型转换到系统函数型 zp2ss ——零极点型转换到状态变量型 ss2tf ——状态变量型转换到系统函数型 ss2zp ——状态变量型转换到零极点型 1:已知一个因果LTI 离散系统的系统函数为:

)

2(0675.0)1(1349.0)(0675.0)2(4128.0)1(143.1)(-+-+=-+--n x n x n x n y n y n y (1)阶跃响应 M=30; N=32;

omega=[0:(N-1)]*2*pi/N;

H=(0.0675+0.1349*exp(-j.*omega)+0.0675*exp(-2*j.*omega))./(1-1.143*exp(-j.*omega)+0.4128*exp(-2*j.

*omega));

x=ones(1,M);

X=fft(x,N);

Y=X.*H ;

y=ifft(Y,N);

figure(1);

subplot(2,1,1); stem([0:M-1],x); xlabel('Time index n'); ylabel('x[n]');

title ('Input signal and output signal');

subplot(2,1,2); stem([0:M-1],real(y(1:M))); xlabel('Time index n'); ylabel('y[n]');

0510

15

202530

Time index n

x [n ]

510

15

202530

Time index n

y [n ]

(2)单位脉冲响应h(n) M=30; N=32;

omega=[0:(N-1)]*2*pi/N;

H=(0.0675+0.1349*exp(-j.*omega)+0.0675*exp(-2*j.

*omega))./(1-1.143*exp(-j.*omega)+0.4128*exp(-2*j.*omega)); x=[1,zeros(1,M-1)]; X=fft(x,N); Y=X.*H ; y=ifft(Y,N); figure(1);

subplot(2,1,1); stem([0:M-1],x); xlabel('Time index n');

ylabel('x[n]');

title ('Input signal and output signal'); subplot(2,1,2);

stem([0:M-1],real(y(1:M)));

xlabel('Time index n'); ylabel('y[n]');

Time index n

x [n ]

Input signal and output signal

05

10

15

202530

Time index n

y [n ]

三、 IIR 数字低通滤波器的设计(双线性变换法)

从模拟滤波器设计IIR 数字滤波器就是要由模拟滤波器的系统函数()a H s 进一步求得()H z 。归根结底是一个由s 平面到z 平面的变换。这个变换应遵循两个基本的目标。

(1)H(z)的频响必须要模仿()a H s 的频响,也即s 平面的虚轴jΩ应该映射到z 平面的单位圆上。

(2)()a H s 的因果稳定性,通过映射后仍应在所得到的H(z)中保持,也即s 平面的左半平面应该映射到z 平面单位圆以内。

从模拟滤波器映射(变换)成数字滤波器常用的是脉冲响应不变变换法和双

线性变换法两种。其中脉冲响应不变法设计数字滤波器的优点是器频率坐标的转换是线性的,在不存在频率混叠的情况下,能够完全逼近模拟滤波器的频率特性。

但是当模拟滤波器的传输函数H()jw e 超出T π

±时,映射后必然存在频谱混叠的现

象,这是脉冲响应不变法不足的地方,所以一般只用来设计低通、带通滤波器。对于高通、带通滤波器,由于它们在高频部分不衰减,当一定要追求频率响应线性而采用脉冲响应不变法时,必须先对模拟高通、带阻滤波器加一保护滤波器,从而加大了设计成不,一般不采用这种方法。

脉冲响应不变法设计滤波器时,从模拟预到数字域的转换是“多对一”的关系,而双线性变换法是“一对一”的关系,从而避免了频率混叠现象,因此本课程设计中采用双线性变换法设计滤波器,下面主要介绍双线性变换法的原理。

1. 变换原理

双线性变换法是使数字滤波器的频率响应与模拟滤波器的频率响应相似的一种变换方法。为了克服脉冲响应不变法的多值映射这一缺点,我们首先把整个s 平面压缩变换到某一中介的1s 平面的一横带里(宽度为2/T π,即从/T π-到

/T π),然后再通过上面讨论过的标准变换关系sT

z e =将此横带变换到整个z 平面上去,这样就使s 平面与z 平面是一一对应的关系,消除了多值变换性,也就消除了频谱混叠现象,基本原理如图2-3所示。

将s 平面整个平面压缩到1s

平面的/T π-到/T π,可采用以下的变换关系

12T C tg Ω??

Ω= ???

(2-3)

其中C 为常数;这样Ω=±∞经(2-3)式变为1/T πΩ=±,0Ω=变为10Ω=,可将上式写成1122112

2

T

T T T j j j

j

e e j C e

e

ΩΩΩΩ---Ω=+

令11,

j s j s Ω=Ω=,则可得

图2-3 双线性变换法的映射关系

T

π

-T

π

111111222

2

11s T s T s T s T s T s T

e e e s C

C e e

e

-

---

--==++ (2-4)

再将1s 平面通过以下标准变化关系映射到z 平面

1s T z e = (2-5)

这样(2-4)式可表示为

1

1

11z s C z ---=+ (2-6)

C s

z C s

+=

- (2-7) 2.变换常数C 的选择

为了使模拟滤波器与数字滤波器在低频处有较确切的对应关系,即在低频处有1Ω≈Ω,当1Ω较小时有

1

12

2T

T

tg ΩΩ??≈ ???

由(2-3)式可知

112

T C

ΩΩ≈Ω≈ 因而得

2

C T

=

(2-8) 则(2-6)和(2-7)式可重新写成:

11

211z s T z

---=+ (2-9) 即 22s

T z s T

+=- (2-10)

3.逼近情况

双线性变换具备模拟域到数字域映射变换的总要求,现分析如下: (1)将s j δ=+Ω代入到(2-9)式则得

2

2

j T

z j T

δδ++Ω

=--Ω

1

2

2

2

2222T z T δδ??++Ω ???=??-+Ω ??? (2-11)

由上式可见,当0δ<时,1z <;当0δ=时,1z =;当0δ>时,1z >。这就是说双线性变换把s 左半平面映射在单位圆1z =的内部;把s 平面的整个

j Ω轴映射成单位圆1z =,把s 右半平面映射在单位圆的外部。

(2)令s j =Ω,j z e ω=,则由(2-9)式得

2

2

j j T e j T ω+Ω=

-Ω 所以

22

T arctg ωΩ??=

???

由此得出模拟滤波器的频率Ω和数字滤波器频率ω的关系式为

22tg T ω??

Ω=

???

(2-12) 这一公式的关系如图2-4所示。可以看出,当0Ω=时,0ω=,当Ω=+∞时,

ωπ=,当Ω=-∞时,ωπ=-。这就是说:s 平面的原点映射为z 平面(1,0)点,

而s 平面的正虚轴和负虚轴分别映射成z 平面单位圆的上半圆和下半圆。

由上所述,可得如下结论:

a .模拟滤波器()a H s 中最大和最小值将保留在数字滤波器()j H e ω中,因此模拟滤波器的通带或阻带变换成数字滤波器的通带或阻带。

b .如果模拟滤波器是稳定的,则通过双线性变换后所得的数字滤波器也一

2

2T ω图2-4 双线性变换的频率间非线性关系

定是稳定的。

c .由于s 平面的整个虚轴映射为z 平面上的单位圆,因此双线性变换法确实消除了脉冲响应不变变换法所存在的混叠误差,所以逼近是良好的。但由(2-13)式可见,在频率Ω与ω间存在严重的非线性。

4. 模拟滤波器的数字化

由于双线性变换法中,s 与z 之间有简单的代数关系,故可由模拟系统函数通过代数置换直接得到数字滤波器的系统函数。即

1

1

1

211

121()()()1z a a s T z z H z H s H T z

-----=+-==+ (2-14) 可见数字滤波器的极点数等于模拟滤波器的极点数。 频率响应也可用直接置换得到

222()()2j a a tg T H e H j H j tg T ωωω??Ω= ?????

??=Ω= ? ?????

(2-15)

这一公式可用于将滤波器的数字域指标,转换为模拟域指标。

再者,可在未进行双线性变换前把原模拟系统函数分解成并联或级联子系统函数,然后再对每个子系统函数分别加以双线性变换。就是说,所有的分解,都可以就模拟滤波器系统函数来进行,因为模拟滤波器已有大量图表可供利用,且分解模拟系统函数比较容易。

3.2 IIR 滤波器的设计

由前面IIR 滤波器的设计原理确定运用双线性变换法设计IIR 滤波器的流程如图3-1所示:

图3-1 IIR 滤波器设计流程图

3.3 IIR 低通滤波器的设计

1.IIR 低通滤波器设计指标:

1000p f Hz =,1200s f Hz =,阻带最小衰减10s A dB =,通带最大衰减1p A dB =。 2.IIR 低通滤波器的设计

在Matlab 中设计巴特沃斯型、切比雪夫I 型和椭圆型IIR 低通滤波器的程序分别如下:

%巴特沃斯滤波器设计 fp=1000;fs=1200; Rp=1;Rs=10; Fs=22050;

wp=2*pi*fp/Fs;%确定数字滤波器指标 ws=2*pi*fs/Fs;

Wp=2*tan(wp/2);%转换为模拟滤波器指标 Ws=2*tan(ws/2);

[N,Wn]=buttord(Wp,Ws,Rp,Rs,'s');%选择巴特沃斯滤波器的最小阶数N 和截止频率Wn

[b,a]=butter(N,Wn,'s');%设计巴特沃斯滤波器

[b1,a1]=bilinear(b,a,1);%运用双线性变换为数字滤波器 %切比雪夫I 型滤波器设计 fp=1000;fs=1200; Rp=1;Rs=10; Fs=22050;

wp=2*pi*fp/Fs;%确定数字滤波器指标 ws=2*pi*fs/Fs;

Wp=2*tan(wp/2);%转换为模拟滤波器指标 Ws=2*tan(ws/2);

[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs,'s');%选择切比雪夫I 型滤波器的最小阶数N 和截止频率Wn

[b,a]=cheby1(N,Rp,Wn,'s');%设计切比雪夫I 型滤波器 [b1,a1]=bilinear(b,a,1);%运用双线性变换法变为数字滤波器

%椭圆型滤波器设计

fp=1000;fs=1200;

Rp=1;Rs=10;

Fs=22050;

wp=2*pi*fp/Fs;%确定数字滤波器指标

ws=2*pi*fs/Fs;

Wp=2*tan(wp/2);%转换为模拟滤波器指标

Ws=2*tan(ws/2);

[N,Wn]=ellipord(Wp,Ws,Rp,Rs,'s');%选择椭圆型滤波器的最小阶数N和截止频率Wn

[b,a] = ellip(N,Rp,Rs,Wn,'s');%设计椭圆型滤波器

[b1,a1]=bilinear(b,a,1);%运用双线性变换法变为数字滤波器

得到巴特沃斯滤波器、切比雪夫I型滤波器和椭圆型滤波器的幅频特性分别如图3-2、图3-3和图3-4所示。

图3-2 IIR低通巴特沃斯型滤波器幅频特性

图3-3 IIR低通切比雪夫I型滤波器幅频特性

图3-4 IIR低通椭圆型滤波器幅频特性

总结

经过为期一周的课程设计实践,我完全自主地完成了既定的任务,实现了课程设计的要求,这使我对DSP课程有了更深一步的认识和了解,要想学好它重在实践,要通过不断的实际操作才能更好地学习和运用知识,并且基本掌握了运用MATLAB软件进行滤波器的设计和GUI界面的设计。通过课程设计这一实践环节,加深了我对本学期所学知识的理解,也提高了我运用所学知识分析问题和解决实际问题的能力。在此过程中我也发现自己好多不足之处,首先是自己对所学的基础知识掌握不深,还有对理论知识的运用还有欠缺,通过这次课程设计实践,使我在这几个方面都有所提高。由于时间原因,这次课程设计最大的遗憾是没能实现对语音信号进行实时录入,然后进行采样分析,接下来我会努力尝试实现这项功能。

在这个过程中,我也曾经因为实践经验的缺乏失落过,也曾经因设计成功而热情高涨。生活就是这样,汗水预示着结果也见证着收获。劳动是人类生存生活永恒不变的话题。虽然这只是一次的极简单的课程制作(基于MATLAB的语音信号分析及滤波),可是平心而论,也耗费了我们不少的心血,这就让我不得不佩服专门搞设计开发的技术前辈,才意识到老一辈对我们社会的付出,为了人们的生活更美好,他们为我们社会所付出多少心血啊!

还有,通过这两周的实践学习,我不仅认识和体验了实际运用中数字滤波器设计过程和语音信号的处理过程,更从中深刻认识到了“世上无难事,只要肯攀登”的道理。虽然自己在此过程中曾熬夜编写程序、设计GUI界面和写课程设计说明书,但是当最后自己用亲手编写的程序完成了既定的任务时,当看着程序一步步实现了自己的设计思想时,当别人向我请教GUI的设计时,心中喜悦和自豪之情真是难于言表,我想这种成功的喜悦是自己努力付出的结果。我想,凭着这种不懈的精神奋斗,还有什么困难能拦得住自己前进的步伐呢?

参考文献

[1]范寿康. DSP技术与DSP芯片[M]. 北京:电子工业出版社

[2]万永革. 数字信号处理的MATLAB实现[M]. 北京:科学出版社,2007

[3]程佩青. 数字信号处理教程[M]. 北京:清华大学出版社出版,2001

[4]陈亚勇等. MATLAB信号处理详解[M]. 北京:人民邮电出版社,2001

[5]施晓红,周佳. 精通GUI图形界面编程[M]. 北京:北京大学出版社,2003.1

[6]王世一. 数字信号处理[M]. 北京:北京理工大学出版社,2001

专业:0000000

班级:00000000 姓名:0000

学号:000000000

《数字信号处理》课程设计报告 设计题目: IIR滤波器的设计 专业: 班级: 姓名: 学号: 指导教师: 2010年月日

1、设计目的 1、掌握IIR 滤波器的参数选择及设计方法; 2、掌握IIR 滤波器的应用方法及应用效果; 3、提高Matlab 下的程序设计能力及综合应用能力。 4、了解语音信号的特点。 2、设计任务 1、学习并掌握课程设计实验平台的使用,了解实验平台的程序设计方法; 2、录制并观察一段语音信号的波形及频谱,确定滤波器的技术指标; 3、根据指标设计一个IIR 滤波器,得到该滤波器的系统响应和差分方程,并根据差分方程将所设计的滤波器应用于实验平台,编写相关的Matlab 程序; 4、使用实验平台处理语音信号,记录结果并进行分析。 3、设计内容 3.1设计步骤 1、学习使用实验平台,参见附录1。 2、使用录音机录制一段语音,保存为wav 格式,录音参数为:采样频率8000Hz、16bit、单声道、PCM 编码,如图1 所示。 图1 录音格式设置 在实验平台上打开此录音文件,观察并记录其波形及频谱(可以选择一段较为稳定的语音波形进行记录)。 3、根据信号的频谱确定滤波器的参数:通带截止频率Fp、通带衰减Rp、阻带截止频率Fs、阻带衰减Rs。 4、根据技术指标使用matlab 设计IIR 滤波器,得到系统函数及差分方程,并记录得到系统函数及差分方程,并记录其幅频响应图形和相频响应图形。要求设计 第 1页出的滤波器的阶数小于7,如果不能达到要求,需要调整技术指标。 5、记录滤波器的幅频响应和系统函数。在matlab 中,系统函数的表示公式为:

因此,必须记录系数向量a 和b。系数向量a 和b 的可以在Matlab 的工作空间(WorkSpace)中查看。 6、根据滤波器的系统函数推导出滤波器的差分方程。 7、将设计的滤波器应用到实验平台上。根据设计的滤波器的差分方程在实验平台下编写信号处理程序。根据运行结果记录处理前后的幅频响应的变化情况,并试听处理前后声音的变化,将结果记录,写入设计报告。 3.2实验程序 (1)Rs=40; Fs=1400; Rp=0.7; Fp=450; fs=8000; Wp=2*pi*Fp;Ws=2*pi*Fs; [N,Wn]=buttord(Wp,Ws,Rp,Rs,'s'); [b1,a1]=butter(N,Wn,'s'); [b,a]=bilinear(b1,a1,fs); [H,W]=freqz(b,a); figure; subplot(2,1,1);plot(W*fs/(2*pi),abs(H));grid on;title('频率响应'); xlabel('频率');ylabel('幅值');、 subplot(2,1,2); plot(W,angle(H));grid on;title('频率响应'); xlabel('相位(rad)');ylabel('相频特性'); 3.3实验结果(如图): N =5 Wn=6.2987e+003 第 2页

抽样定理的应用 摘要 抽样定理表示为若频带宽度有限的,要从抽样信号中无失真地恢复原信号,抽样频率应大于2倍信号最高频率。抽样频率小于2倍频谱最高频率时,信号的频谱有混叠。抽样频率大于2倍频谱最高频率时,信号的频谱无混叠。 语音信号处理是研究用数字信号处理技术和语音学知识对语音 信号进行处理的新兴学科,是目前发展最为迅速的学科之一,通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。 Matlab语言是一种数据分析和处理功能十分强大的计算机应用 软件,它可以将声音文件变换成离散的数据文件,然后用起强大的矩阵运算能力处理数据。这为我们的本次设计提供了强大并良好的环境! 本设计要求通过利用matlab对模拟信号和语音信号进行抽样,通过傅里叶变换转换到频域,观察波形并进行分析。 关键词:抽样Matlab

目录 一、设计目的: (2) 二、设计原理: (2) 1、抽样定理 (2) 2、MATLAB简介 (2) 3、语音信号 (3) 4、Stem函数绘图 (3) 三、设计内容: (4) 1、已知g1(t)=cos(6πt),g2(t)=cos(14πt),g3(t)=cos(26πt),以抽样频率 fsam=10Hz对上述三个信号进行抽样。在同一张图上画出g1(t),g2(t),g3(t)及其抽样点,对所得结果进行讨论。 (4) 2、选取三段不同的语音信号,并选取适合的同一抽样频率对其进 行抽样,画出抽样前后的图形,并进行比较,播放抽样前后的语音。 (6) 3、选取合适的点数,对抽样后的三段语音信号分别做DFT,画图 并比较。 (10) 四、总结 (12) 五、参考文献 (13)

语音信号的数字滤波 ——利用双线性变换法实现IIR数字滤波器的设计一.课程设计的目的 通过对常用数字滤波器的设计和实现,掌握数字信号处理的工作原理及设计方法;熟悉用双线性变换法设计 IIR 数字滤波器的原理与方法,掌握利用数字滤波器对信号进行滤波的方法,掌握数字滤波器的计算机仿真方法,并能够对设计结果加以分析。 二.设计方案论证 1.IIR数字滤波器设计方法 IIR数字滤波器是一种离散时间系统,其系统函数为 假设M≤N,当M>N时,系统函数可以看作一个IIR的子系统和一个(M-N)的FIR子系统的级联。IIR数字滤波器的设计实际上是求解滤波器的系数和,它 是数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼近系统的特性。如果在S平面上去逼近,就得到模拟滤波器;如果在z平面上去逼近,就得到数字滤波器。 2.用双线性变换法设计IIR数字滤波器 脉冲响应不变法的主要缺点是产生频率响应的混叠失真。这是因为从S平面到Z平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-π/T~π/T之间,再用z=e sT转换 平面的-π/T~π到Z平面上。也就是说,第一步先将整个S平面压缩映射到S 1 /T一条横带里;第二步再通过标准变换关系z=e s1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图1所示。 图1双线性变换的映射关系 为了将S平面的整个虚轴jΩ压缩到S1平面jΩ1轴上的-π/T到π/T段上,可以通过以下的正切变换实现

信号与线性系统课程设计 报告 课题五基于FIR滤波的语音信号处理系统设计 班级: 姓名: 学号: 组号及同组人: 成绩: 指导教师: 日期:

课题五基于FIR滤波的语音信号处理系统设计 摘要:MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB 可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB特点:1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;2) 具有完备的图形处理功能,实现计算结果和编程的可视化;3)友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;4)功能丰富的应用工具箱,为用户提供了大量方便实用的处理工具。 关键词:GUI界面,信号采集,内插恢复,重采样,滤波器 一、课程设计目的及意义 本设计课题主要研究数字语音信号的初步分析方法、FIR数字滤波器的设计及应用。通过完成本课题的设计,拟主要达到以下几个目的: (1)熟悉Matlab软件的特点和使用方法。 (2)熟悉LabVIEW虚拟仪器的特点以及采用LabVIEW进行仿真的方法。 (3)掌握信号和系统时域、频域特性分析方法。 (4)掌握FIR数字滤波器的设计方法(窗函数设计法、频率采样设计法)及应用。 (5)了解语音信号的特性及分析方法。 (6)通过本课题的设计,培养学生运用所学知识分析和解决实际问题的能力。 二、课题任务 (一)简单数字语音信号处理系统的Matlab设计。 使用GUI进行系统的图形用户界面设计,在该界面中包括对语音信号的读取,对信号的时域,频域分析,添加噪声,设计FIR数字滤波器(利用窗函数设计法、频率采样设计法任选)实现噪声滤除。具体任务如下: (1)对语音信号进行采集(读取),对数字语音信号加入干扰噪声,画出原始信号及带噪信号的时域波形,利用FFT进行频域分析,画出相应波形,并对语音进行播放。 (3)根据对语音信号及噪声的实际情况分析,选择适当的FIR数字滤波器进行设计,并对噪声进行滤除。

数字信号处理课程设计 姓名:刘倩 学号:201014407 专业:信息与计算科学 实验一:常见离散信号产生和实现 一、实验目的: 1、加深对常用离散信号的理解; 2、掌握matlab 中一些基本函数的建立方法。 二、实验原理: 1.单位抽样序列 在MATLAB 中可以利用zeros()函数实现。 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即: 2.单位阶越序列 在MATLAB 中可以利用ones()函数实现。 3.正弦序列 在MATLAB 中 4.复指数序列 在MATLAB 中 5.指数序列 在MATLAB 中

实验内容:由周期为10的正弦函数生成周期为20的余弦函数。 实验代码: n=0:30; y=sin(0.2*pi*n+pi/2); y1=sin(0.1*pi*n+pi/2); subplot(121) stem(n,y); xlabel ('时间序列n');ylabel('振幅');title('正弦函数序列y=sin(0.2*pi*n+pi/2)'); subplot(122) stem(n,y1); xlabel ('时间序列n');ylabel('振幅'); title('正弦函数序列y=sin(0.2*pi*n+pi/2)'); 实验结果: 实验二:离散系统的时域分析 实验目的:加深对离散系统的差分方程、冲激响应和卷积分析方法的理解。实验原理:离散系统 其输入、输出关系可用以下差分方程描述: 输入信号分解为冲激信号, 记系统单位冲激响应 则系统响应为如下的卷积计算式:

当N k d k ,...2,1,0==时,h[n]是有限长度的(n :[0,M]),称系统为FIR 系统;反之,称系统为IIR 系统。 在MATLAB 中,可以用函数y=filter(p,d,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。 实验内容:用MATLAB 计算全解 当n>=0时,求用系数差分方程y[n]+y[n-1]-6y[n-2]=x[n]描述的一个离散时间系统对阶跃输入x[n]=8μ[n]的全解。 实验代码: n=0:7; >> [y,sf]=filter(1,[1 1 -6],8*ones(1,8),[-7 6]); >> y1(n+1)=-1.8*(-3).^n+4.8*(2).^n-2; >> subplot(121) >> stem(n,y); >> title('由fliter 函数计算结果'); >> subplot(122) >> stem(n,y1); >> title('准确结果'); 实验结果: 结果分析:有图可得由fliter 函数得出的结果与计算出的准确结果完全一致。 实验三FFT 算法的应用

《数字信号》课程设计报 告 学院:信息科学与工程 专业班级:通信1201

一、 目的与要求 是使学生通过上机使用Matlab 工具进行数字信号处理技术的仿真练习,加深对《信号分析与处理(自)》课程所学基本理论和概念的理解,培养学生应用Matlab 等工具进行数字信号处理的基本技能和实践能力,为工程应用打下良好基础。 二、 主要内容 1.了解Matlab 基本使用方法,掌握Matlab 数字信号处理的基本编程技术。掌握数字信号的基本概念。 2.用Matlab 生成几种典型数字信号(正弦信号、矩形信号、三角波信号等),并做幅频特性分析 2.Matlab 编程实现典型离散信号(正弦信号、矩形信号、三角信号)的离散傅立叶变换,显示时域信号和频谱图形(幅值谱和相位谱);以正弦周期信号为例,观察讨论基本概念(混叠、泄漏、整周期截取、频率分辨率等)。 3.设计任意数字滤波器,并对某类型信号进行滤波,并对结果进行显示和分析。 4.利用matlab 求解差分方程,并做时域和频域分析。用matlab 函数求解单位脉冲响应,并利用窗函数分离信号。 5.用matlab 产生窗函数,并做世玉和频域分析。 6.显示图像,理解图像的模型,将图像进行三原色分解和边缘分析。 三.课程设计题目 一、 1) 生成信号发生器:能产生频率(或基频)为10Hz 的周期性正弦波、三角波和方波信号。绘出它们的时域波形 2) 为避免频谱混叠,试确定各信号的采样频率。说明选择理由。 3)对周期信号进行离散傅立叶变换,为了克服频谱泄露现象,试确定截取数据的长度,即信号长度。分析说明选择理由。 4)绘出各信号频域的幅频特性和相频特性 5)以正弦周期信号为例,观察讨论基本概念(频谱混叠、频谱泄漏、整周期截取等)。 二、已知三个信号()i a p n ,经调制产生信号3 1 ()()cos(/4)i i s n a p n i n π==∑,其中i a 为常 数,()p n 为具有窄带特性的Hanning 信号。将此已调信号通过信道传输,描述该信道的差分方程为 得到接收信号()()*()y n s n h n = 1)分析Hanning 信号()p n 的时域与频域特性 2)分析已调信号()s n 的时域与频域特性 () 1.1172(1)0.9841(2)0.4022(3)0.2247(4) 0.2247()0.4022(1)0.9841(2) 1.1172(3)(4)y n y n y n y n y n x n x n x n x n x n --+---+-= --+---+-

数字信号处理课程设计报告《应用Matlab对信号进行频谱分析及滤波》 专业: 班级: 姓名: 指导老师: 二0 0五年一月一日

目录 设计过程步骤() 2.1 语音信号的采集() 2.2 语音信号的频谱分析() 2.3 设计数字滤波器和画出其频谱响应() 2.4 用滤波器对信号进行滤波() 2.5滤波器分析后的语音信号的波形及频谱() ●心得和经验()

设计过程步骤 2.1 语音信号的采集 我们利用Windows下的录音机,录制了一段开枪发出的声音,时间在1 s内。接着在C盘保存为WAV格式,然后在Matlab软件平台下.利用函数wavread对语音信号进行采样,并记录下了采样频率和采样点数,在这里我们还通过函数sound引入听到采样后自己所录的一段声音。通过wavread函数和sound的使用,我们完成了本次课程设计的第一步。其程序如下: [x,fs,bite]=wavread('c:\alsndmgr.wav',[1000 20000]); sound(x,fs,bite); 2.2 语音信号的频谱分析 首先我们画出语音信号的时域波形;然后对语音信号进行频谱分析,在Matlab中,我们利用函数fft对信号进行快速傅里叶变换,得到信号的频谱特性性。到此,我们完成了课程实际的第二部。 其程序如下: n=1024; subplot(2,1,1); y=plot(x(50:n/4)); grid on ; title('时域信号') X=fft(x,256); subplot(2,1,2); plot(abs(fft(X))); grid on ; title('频域信号'); 运行程序得到的图形:

一、语音信号去噪处理 1.设计要求: (1)在windows系统下的录音机录制一段1s左右的语音信号作为原声信号,在MATLAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数; (2)画出语音信号的时域波形,对采样后的语音进行fft变换,得到信号的频谱特性;对语音信号分别加入正弦噪声和白噪声,画出加噪信号的时域波形和频谱图; (3)根据对加噪语音信号谱分析结果,确定滤除噪声滤波器的技术指标,设计合适的数字滤波器,并画出滤波器的频域响应; (4)用所设计的滤波器对加噪的信号进行滤波,在同一个窗口画出滤波前后信号的时域图和频谱图,对滤波前后的信号进行对比,分析信号变化; (5)利用sound(x)回放语音信号,验证设计效果。 2.设计步骤: (1)找到7s的语音信号,利用函数wavread对语音信号进行信号读取;(2)计算样本时刻和频谱图的频率,并进行N+1点FFT变换; (3)加噪声为5000Hz的正弦信号正弦噪声,采用awgn函数加信噪比为10的高斯白噪声; (4)设计滤波器; (5)绘出相应的时域、频域图; (6)利用sound函数进行原始信号的语音播放,加噪声音播放,以及滤波之后的语言播放。 3.设计实现: (1)时域图与频谱图(加正弦) 录入原始信号的时域图: 加入正弦信号后的时域图:

滤波后的时域图: 录入原始信号的频域图: 加入正弦信号后的频率图: 滤波后的频域图: 采用巴斯低通滤波器滤除正弦波:

(2)具体代码实现: [x,fs,bits]=wavread('E:\mcpass.wav');%原信号 n=size(x,1); %提取采样信号的长度 t=(0:length(x)-1)/fs; %计算样本时刻 f=fs*(0:(n+1)/2-1)/n+1; %计算频域图的频率 X=fft(x,n+1); %进行N+1点FFT变换 ts=0:1/fs:(size(x)-1)/fs; %将所加噪声信号的点数调整到与原始信号相同 s=x+0.05*sin(2*pi*5000*ts)'; %加噪声为5000Hz的正弦信号正弦噪声 S=fft(s,n+1); %加正弦噪声后的频域 %正弦滤波 wp=2000/fs*2*pi; %2000为通带截止频率 ws=3000/fs*2*pi; %3000为阻带下限截止频率 Rp=4; %通带波纹 Rs=25; %阻带波纹 T=1/fs;Fs=1/T; %定义采样间隔 Wp=2/T*tan(wp/2); %计算对应的数字频率 Ws=2/T*tan(ws/2); [N,wn]=buttord(Wp,Ws,Rp,Rs,'s'); %计算滤波器介数和截止频率 [c,d]=butter(N,wn,'s'); %计算滤波器系统函数分子分母系数 [B,A]=bilinear(c,d,Fs); %双线性变换得到数字滤波器系统函数分子分母系数[Hb,Wc]=freqz(B,A); sf=filter(B,A,s); %对加噪信号进行滤波 Sf=fft(sf,n+1); %对滤波后进行N+1点FFT变换 %绘图部分 figure(3); plot(fs*Wc/(2*pi),20*log10(abs(Hb)));title('巴斯低通滤波器频域响应图'); xlabel('频率(Hz)'); ylabel('幅度'); figure(1); subplot(3,1,1); plot(t,x);title('原信号时域') xlabel('时间(s)'); ylabel('幅度'); figure(2); subplot(3,1,1); plot(f,abs(X(1:(n+1)/2)));title('原信号频域') xlabel('频率(Hz)'); ylabel('幅度'); figure(1); subplot(3,1,2); plot(t,s);title('加正弦信号后的时域') xlabel('时间(s)'); ylabel('幅度');

数字信号处理上机指导 设计一 正余弦信号的谱分析 【一】 设计目的 1. 用DFT 实现对正余弦信号的谱分析; 2. 观察DFT 长度和窗函数长度对频谱的影响; 3. 对DFT 进行谱分析中的误差现象获得感性认识。 【二】 设计原理 一、谱分析原理 数字信号处理方法的一个重要用途是在离散时间域中确定一个连续时间信号的频谱,通常称为频谱分析,更具体地说,它也包括确定能量谱和功率谱。数字频谱分析可以应用在很广阔领域,频谱分析方法是基于以下的观测:如果连续时间信号)(t g a 是带限的,那么它的离散时间等效信号)(n g 的DFT 进行谱分析。然而,在大多数情况下,)(t g a 是在∞<<∞-t 范围内定义的,因此)(n g 也就定义在∞<<∞-n 的无线范围内,要估计一个无限长信号的频谱是不可能的。实用的方法是:先让模拟连续信号)(t g a 通过一个抗混叠的模拟滤波器,然后把它采样成一个离散序列)(n g 。假定反混叠滤波器的设计是正确的,则混叠效应可以忽略,又假设A/D 变换器的字长足够长,则A/D 变换中的量化噪声也可忽略。 假定表征正余弦信号的基本参数,如振幅、频率和相位不随时间改变,则此信号的傅立叶变换)(ω j e G 可以用计算它的DTFT 得到 ∑ ∞ -∞ =-= n n j j e n g e G ωω )()( (1.1) 实际上无限长序列)(n g 首先乘以一个长度为M 的窗函数)(n w ,使它变成一个长为M 的有限长序列,)()()(1n w n g n g =,对)(1n g 求出的DTFT )(1ω j e G 应该可以作为原连续 模拟信号)(t g a 的频谱估计,然后求出)(1ω j e G 在πω20≤≤区间等分为N 点的离散傅立 叶变换DFT 。为保证足够的分辨率,DFT 的长度N 选的比窗长度M 大,其方法是在截断了的序列后面补上N -M 个零。计算采用FFT 算法。 二、MATLAB 函数介绍 1. 输入函数input( ) 格式:R=input(string) 功能:在屏幕上显示input 括号后的’string ’内容,提示用户从键盘输入某值,并将输入的值赋给R 。 例如,在命令窗口输入R=input(‘How many apples ’) 会显示How many apples

数字信号处理 课 程 设 计 院系:电子信息与电气工程学院 专业:电子信息工程专业 班级:电信班 姓名: 学号: 组员:

摘要 滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR 滤波器是滤波器设计的重要组成部分。利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。通过理论推导得出相应结论,再利用 MATLAB 作为编程工具进行计算机实现。在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器,过程简单方便,结果的各项性能指标均达到指定要求。 关键词数字滤波器 MATLAB 窗函数法巴特沃斯

目录 摘要 (1) 1 引言 (1) 1.1课程设计目的 (1) 1.2 课程设计内容及要求 (1) 1.3课程设计设备及平台 (1) 1.3.1 数字滤波器的简介及发展 (1) 1.3.2 MATLAB软件简介 (2) 2 课程设计原理及流程 (4) 3.课程设计原理过程 (4) 3.1 语音信号的采集 (4) 3.2 语音信号的时频分析 (5) 3.3合成后语音加噪声处理 (7) 3.3.1 噪声信号的时频分析 (7) 3.3.2 混合信号的时频分析 (8) 3.4滤波器设计及消噪处理 (10) 3.4.1 设计IIR和FIR数字滤波器 (10) 3.4.2 合成后语音信号的消噪处理 (13) 3.4.3 比较滤波前后语音信号的波形及频谱 (13) 3.4.4回放语音信号 (15) 3.5结果分析 (15) 4 结束语 (15) 5 参考文献 (16)

一、数字信号处理课程设计内容及考核要求 1、课程设计内容: (1)从以下四个题目中任选其中一个题目,根据题目要求完成程序的编制、调试和仿真; (2)按照题目要求撰写课程设计报告,回答题目设定的问题。 2、考核要求: (一)课程设计以(6——8人)小组完成,但不能出现设计报告雷同情况,一经发现,雷同报告均按不合格处理;最终以PPT小组答辩作为考核。

题目二:有限冲激响应滤波器(FIR)的设计1. 设计目的: 1、加深对数字滤波器的常用指标理解。

2、学习数字滤波器的设计方法。 3. 掌握FIR 滤波器的原理。 2. 设计内容: 利用MATLAB 编程,分别用窗函数法和等波纹滤波器法设计两种FIR 数字滤波器,指标要求如下: 通带边缘频率:ππ65.045.021=Ω=ΩP P ,,通带峰值起伏:][1dB P ≤α。 阻带边缘频率:ππ75.03.021=Ω=ΩS S ,,最小阻带衰减:][40dB S ≥α。 3. 设计原理: 图1 一个典型数字低通滤波器的结构 低通滤波器的常用指标: ? ? ?≤Ω≤Ω≤ΩΩ≤Ω+≤Ω≤-πδδδ|||)(|||1|)(|1S S P P P H H ,, (1)通带边缘频率P Ω; (2)阻带边缘频率S Ω; (3)通带起伏P δ; (4)通带峰值起伏])[1(log 2010dB P P δα--=; (5)阻带起伏S δ,最小阻带衰减])[(log 2010dB S S δα-=。 4. 设计步骤: 1.熟悉MATLAB 的开发环境和使用方法。 2.按照实验内容,编写一个.m 脚本文件,利用MA TLAB 函数fir1和窗函数法设计FIR 数字滤波器。具体参数为:b=fir1(N,Wn,’ftype ’,taper),N 代表滤波器阶数;Wn 代表滤波器的截止频率(归一化频率),当设计带通和带阻滤波器时,Wn 为双元素相量;ftype 代表滤

¥ 课程设计报告? < 课程名称通信原理 设计题目 DSB与2ASK调制与解调 专业通信工程 班级 学号 姓名 完成日期 …

课程设计任务书 设计题目:DSB与2ASK调制与解调 设计内容与要求: 设计内容: 1.根据DSB的调制原理设计线路,进行仿真模拟调制DSB的调制和解调过程,并通过仿真软件观察信号以及的调制过程中信号波形和频谱的变化。 2. 根据ASK的调制原理设计线路,进行仿真模拟调制DSB的调制和解调过程,并通过仿真软件观察信号以及的调制过程中信号波形和频谱的变化。 3.在设计过程中分析信号变化的过程和思考仿真过程的设计原理。 ; 设计要求: 1.独立完成DSB与ASK的调制与解调; 2.运用仿真软件设计出DSB与ASK的调制线路 3.分析信号波形和频谱 指导教师:范文 2012年12月16日 课程设计评语 ( 成绩: 指导教师:_______________

年月日

一.调制原理: 调制: 将各种数字基带信号转换成适于信道传输的数字调制信号(已调信号或频带信号); 时域定义:调制就是用基带信号去控制载波信号的某个或几个参量的变化,将信息荷载在其上形成已调信号传输,而解调是调制的反过程,通过具体的方法从已调信号的参量变化中将恢复原始的基带信号。 频域定义:调制就是将基带信号的频谱搬移到信道通带中或者其中的某个频段上的过程,而解调是将信道中来的频带信号恢复为基带信号的反过程. 根据所控制的信号参量的不同,调制可分为: 调幅,使载波的幅度随着调制信号的大小变化而变化的调制方式。 调频,使载波的瞬时频率随着调制信号的大小而变,而幅度保持不变的调制方式。 调相,利用原始信号控制载波信号的相位。 调制的目的是把要传输的模拟信号或数字信号变换成适合信道传输的信号,这就意味着把基带信号(信源)转变为一个相对基带频率而言频率非常高的代通信号。该信号称为已调信号,而基带信号称为调制信号。调制可以通过使高频载波随信号幅度的变化而改变载波的幅度、相位或者频率来实现。调制过程用于通信系统的发端。在接收端需将已调信号还原成要传输的原始信号,也就是将基带信号从载波中提取出来以便预定的接受者(信宿)处理和理解的过程。该过程称为解调。

实验1 1、音乐信号的音谱和频谱观察 ○1使用wavread语句读取音乐信号,获取抽样率; ○2输出音乐信号的波形和频谱,观察现象; ○3使用sound语句播放音乐信号,注意不同抽样率下的音调变化,解释现象。 clear all;close all;clc [a,fs,bit]=wavread('c:\MATLAB6p5\work\陪你一起看草原.wav'); size(a); y1=a(:,1); a1=y1(10000:60000) figure; subplot(2,1,1),plot(a); subplot(2,1,2),plot(a1); x1=resample(a1,2,1); %y=resample(x,p,q)返回量的长度是向量x的p/q倍sound(x1,fs); %sound(a,fs); N1=length(a1); F1=fft(a1,N1); w=2/N1*[0:N1-1]; %频谱图横坐标设置 figure; plot(w,abs(F1)); N2=length(a1); t=0:1/N2:1/N2*(N2-1); title('傅利叶变换'); %傅利叶变换; figure; plot(a1); title('时域波形'); %时域波形;

1,以二倍的抽样率听声音信号时,音乐播放的特别快,像被压缩了,播放的时间比原信号短。 2,以二分之一的抽样率听声音信号时,音乐播放的特别慢,像被拉长了,播放的时间比原信号长。 3,原信号频谱截止频率为0.5*pi 实验2 2、音乐信号的抽取(减抽样) ○1观察音乐信号频率上限,选择适当的抽取间隔对信号进行减抽样(给出两种抽取间隔, 代表混叠和非混叠); ○2输出减抽样音乐信号的波形和频谱,观察现象,给出理论解释; ○3播放减抽样音乐信号,注意抽样率的改变,比较不同抽取间隔下的声音,解释现象。 clear all;close all;clc [a,fs,bit]=wavread('c:\MATLAB6p5\work\陪你一起看草原.wav'); size(a); y1=a(:,1); a1=y1(10000:60000)

山西大学 课程设计说明书 题目名称:滤波器的设计 课程名称:数字信号处理 学院(系):电子信息工程系 专业:电子信息工程 学号: 201515708102 学生姓名:史韵 指导教师:张玉华 教师职称:讲师 2017年 12月28日

目录 摘要 (2) 第一章软件的介绍——MATLAB (3) 第二章设计分析 (5) 2.1理论依据 (5) 2.2IIR数字滤波器的设计步骤 (5) 2.3本课程设计设计思想 (6) 第三章设计内容及结果 (6) 3.1设计任务一 (6) 3.1.1自行设计的连续时间信号: (6) 3.1.2三种滤波器设计分析 (8) 3.2设计任务二 (15) 3.2.1数据的计算 (15) 3.2.2编程代码 (15) 3.2.3实验结果 (16) 第四章结果分析及心得体会 (17) 附参考文献 (17)

摘要: 数字技术的飞速发展,已经影响每一个人的生活,它不仅与国民经济息息相关,与国防建设紧密相连;而且直接或间接的影响或改变着我们的生产及生活方式,因此受到人们普遍的关注。在信号处理过程中,所处理的信号往往混有噪音,从接受的信号中消除或减弱噪音是信号传输和处理中十分重要的问题。根据有用信号和噪声的不同特性,提取有用信号的过程称为滤波,实现滤波功能的系统称为滤波器。在近代电信设备和各类控制系统中,数字滤波器应用极为广泛,包括语音处理、图像处理、数字电视、生物医学处理等方面。 关键字:信号采样频谱分析滤波器的设计

第一章软件的介绍——MATLAB MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,代表了当今国际科学计算软件的先进水平。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB 可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连MATLAB开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB具有以下六个特点: 1.编程效率高 用MATLAB编写程序犹如在演算纸上排列出公式与求解问题,MATLAB语言也可通俗地称为演算纸式的科学算法语言。由于它编写简单,所以编程效率高,易学易懂。 2.用户使用方便 MATLAB语言把编辑、编译、连接和执行融为一体,其调试程序手段丰富,调试速度快,需要学习时间少。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语

(一)用窗函数法设计FIR数字滤波器 一、设计题目用窗函数法设计FIR数字低通滤波器 二、设计目的 1. 熟悉设计线性相位数字滤波器的一般步骤。 2. 掌握用窗函数法设计FIR数字滤波器的原理和方法。 3. 熟悉各种窗函数的作用以及各种窗函数对滤波特性的影响。 4. 学会根据指标要求选取合适的窗函数。 三、设计原理 窗函数法又称为傅里叶级数法,FIR数字滤波器的设计问题就是要所设计的FIR数字滤波器的响应H(ejw)去逼近所要求的理想滤波器的响应Hd(ejw)。从单位取样响应序列来看,就是使所设计的滤波器的h(n)逼近理想单位取样响应序列hd(n)。而且Hd(ejw)=逐段恒定的,且在频带边界处有不连续点,因此序列hd(n)是无限长的,通过直接截取无限长序列以得到有限长序列的办法,可以形象的比喻为h(n)通过一个窗口所看到的一段hd(n)。因此,h(n)也可以表达为hd(n)和一个窗函数w(n)的乘积,h(n)=w(n)hd(n)。这里的窗函数就是矩形序列RN(n)。 四、实现方法 用MATLAB编程实现给定指标要求的滤波器设计 五、设计内容及要求 1、各窗函数图(假设N=67;) N=67;

n=0:N-1; wn1=ones(1,N); stem(n, wn1);矩形窗 figure; wn2=hamming(N); stem(n, wn2);海明窗 figure; wn3=BARTLETT(N); stem(n, wn3);巴特列特 figure; wn4= Hanning(N); stem(n, wn4);汉宁窗 将窗函数分别画出来 2、计算理想低通滤波器单位冲激响应的源程序function[hd]=ideal(wc,N) q=(N-1)/2; n=0:N-1; m=n-q+eps; hd=sin(wc*m)./(pi*m); 3、计算频率响应的源程序 function[H]=fr(b,a,w); m=0:length(b)-1; l=0:length(a)-1; num=b*exp(-j*m'*w); den=a*exp(-j*l'*w); H=num./den;

实验一:基于DFT的数字谱分析以及可能出现的问题 一、实验目的: 1.进一步加深对DFT的基本性质的理解。 2.掌握在MATLAB环境下采用FFT函数编程实现DFT的语句用法。 3.学习用DFT进行谱分析的方法,了解DFT谱分析中出现的频谱泄露和栅栏效应现 象,以便在实际中正确应用DFT。 二、实验步骤: 1.复习DFT的定义、物理含义以及主要性质。 2.复习采用DFT进行谱分析可能出现的三个主要问题以及改善方案。 3.按实验内容要求,上机实验,编写程序。 4.通过观察分析实验结果,回答思考题,加深对DFT相关知识的理解。 三、上机实验内容: 1.编写程序产生下列信号供谱分析用: 离散信号: x1=R10(n) x2={1,2,3,4,4,3,2,1},n=0,1,2,3,4,5,6,7 x3={4,3,2,1, 1,2,3,4},n=0,1,2,3,4,5,6,7 连续信号: x4=sin(2πf1t)+sin(2πf2t) f1=100Hz, f2=120Hz,采样率fs=800Hz 2.对10点矩形信号x1分别进行10点、16点、64点和256点谱分析,要求256点 频谱画出连续幅度谱,10点、16点和64点频谱画出离散幅度谱,观察栅栏效应。 3.产生信号x2和x3分别进行8点、16点谱分析,画出离散幅度谱,观察两个信 号的时域关系和幅度谱的关系。 4.对双正弦信号x4以采样率fs=800Hz抽样,生成离散双正弦信号并画出连续波形; 对离散双正弦信号进行时域截断,截取样本数分别为1000、250、50。对不同样本的双正弦信号分别进行1024点谱分析,画出连续幅度谱,观察频谱泄露现象。

数字信号处理课程设计 指导书 Mr yang 兴化大学电子信息工程系 2010.10

设计一 正余弦信号的谱分析 【一】 设计目的 1. 用DFT 实现对正余弦信号的谱分析; 2. 观察DFT 长度和窗函数长度对频谱的影响; 3. 对DFT 进行谱分析中的误差现象获得感性认识。 【二】 设计原理 一、谱分析原理 数字信号处理方法的一个重要用途是在离散时间域中确定一个连续时间信号的频谱,通常称为频谱分析,更具体地说,它也包括确定能量谱和功率谱。数字频谱分析可以应用在很广阔领域,频谱分析方法是基于以下的观测:如果连续时间信号)(t g a 是频带有限的,那么对其离散时间等效信号)(n g 的DFT 进行谱分析。然而,在大多数情况下,)(t g a 是在 ∞<<∞-t 范围内定义的,因此)(n g 也就定义在∞<<∞-n 的无线范围内,要估计一个 无限长信号的频谱是不可能的。实用的方法是:先让模拟连续信号)(t g a 通过一个抗混叠的模拟滤波器,然后把它采样成一个离散序列)(n g 。假定反混叠滤波器的设计是正确的,则混叠效应可以忽略,又假设A/D 变换器的字长足够长,则A/D 变换中的量化噪声也可忽略。 假定表征正余弦信号的基本参数,如振幅、频率和相位不随时间改变,则此信号的傅立叶变换)(ωj e G 可以用计算它的DTFT 得到 ∑∞ -∞ =-= n n j j e n g e G ωω )()( (1.1) 实际上无限长序列)(n g 首先乘以一个长度为M 的窗函数)(n w ,使它变成一个长为M 的有限长序列,)()()(1n w n g n g =,对)(1n g 求出的DTFT )(1ω j e G 应该可以作为原连续 模拟信号)(t g a 的频谱估计,然后求出)(1ω j e G 在πω20≤≤区间等分为N 点的离散傅立 叶变换DFT 。为保证足够的分辨率,DFT 的长度N 选的比窗长度M 大,其方法是在截断了的序列后面补上N -M 个零。计算采用FFT 算法。 二、MATLAB 函数介绍 1. 输入函数input( ) 格式:R=input(string) 功能:在屏幕上显示input 括号后的?string ?内容,提示用户从键盘输入某值,并将输入的值赋给R 。 例如,在命令窗口输入R=input(…How many apples ?) 会显示How many apples 从键盘输入 3

课程设计报告书 数字信号处理课程设计报告书基于Matlab对语音信号进行频谱分析及滤波 学院: 专业: 设计者: 学号: 设计周数: 完成日期:

目录 目录 (2) 一、课程设计目的 (2) 二、课程设计题目 (3) 三、课程设计题目描述和要求 (3) 五、课程设计流程 (5) 六、基于MATLAB的滤波器设计结果分析 (18) 八、设计经验总结 ...................................................................... 错误!未定义书签。 七、参考资料及网址 .................................................................. 错误!未定义书签。 八、附录 ...................................................................................... 错误!未定义书签。

[作者] 钟伟雄 [机构] 广东工业大学在校本科生 摘要: 数字信号处理是通信工程专业的一门相当重要的学科,对日后就业和科研有重大意义,通过MATLAB,我们可以清晰地理解数字信号处理中难以理解的一面,对理论的知识加以深化。 关键字:MATLAB 数字信号处理 GUI 频谱相位滤波器 一、课程设计题目 应用Matlab对语音信号进行频谱分析及滤波 二、课程设计目的 数字信号处理是一门以算法为核心,理论和实践性较强的学科。是电子信息工程、通信工程专业、电子信息科学与技术专业的一门重要的专业技术基础课。数字信号处理课程是在学习完数字信号处理的相关理论后,进行的综合性训练课程,其目的是: 1.使学生进一步巩固数字信号处理的基本概念、理论、分析方法和实现方法; 2.增强学生应用Matlab语言编写数字信号处理的应用程序及分析、解决实际问题的能 力; 三、课程设计内容描述和要求 为了巩固所学的数字信号处理理论知识,使学生对信号的采集、处理、传输、显示和存储等有一个系统的掌握和理解,安排了以下的课程设计的内容:录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集

课程设计任务书 学生姓名:专业班级:电信1203班 指导教师:工作单位: 题目:离散时间信号与系统的频域分析及其编程实现 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“数字信号处理原理与实现”、 “Matlab及在电子信息课程中的应用”等; 3.先修课程:信号与系统、数字信号处理、Matlab应用实践及信号处理类课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计时间:1周(课内实践); 2.课程设计内容:离散时间信号与系统的频域分析及其编程实现,具体包括:离散时间信 号的傅里叶变换、离散傅里叶变换、系统的幅频和相频特性等; 3.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析, 针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结; 4.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献; ⑦其它必要内容等。 指导教师签名:年月日 系主任(或责任教师)签名:年月日

目录 1.课程设计内容及要求 (1) 2.课程设计原理............................................ 错误!未定义书签。 2.1离散时间信号的傅里叶变换............................... 错误!未定义书签。 2.1.1离散时间信号的傅里叶变换概念 (1) 2.1.2离散时间信号的傅里叶变换性质 (2) 2.2离散傅里叶变换 (3) 2.2.1离散傅里叶变换概念 (3) 2.2.2离散傅里叶变换性质 (3) 2.3逆离散傅里叶变换...................................... 错误!未定义书签。 2.3.1逆离散傅里叶变换概念 (3) 3.程序源代码及仿真效果 (5) 3.1题目一 (5) 3.2题目二 (6) 3.3题目三 (11) 4.心得体会 (14) 5.参考文献 (15)

相关主题
文本预览
相关文档 最新文档