用matlab对信号进行频谱分析及滤波

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华东交通大学

课程设计(论文)任务书

专业 xxx 班级 xx 姓名 xxx

一、课程设计(论文)题目应用Matlab对信号进行频谱分析

及滤波

二、课程设计(论文)工作:自 xxx 年 x 月 x 日起至 xxx 年 x 月 x 日止。

三、课程设计(论文)的内容要求:

学生签名:

20 年月日

课程设计(论文)评阅意见

评阅人职称

20 年月日

目录

设计过程步骤(5)

2.1 语音信号的采集(5)

2.2 语音信号的频谱分析(6)

2.3 设计数字滤波器和画出其频谱响应(7)

2.4 用滤波器对信号进行滤波(9)

2.5滤波器分析后的语音信号的波形及频谱(10)

●心得和经验(11) ●参考文献 (12)

设计过程步骤

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('频域信号');运行程序得到的图形:

2.3 设计数字滤波器和画出其频谱响应

紧接着着我们做了一个数字滤波器:

采样频率10Hz,通带截止频率fp=3Hz,阻带截止频率fs=4Hz通带衰减小于1dB,阻带衰减大于20dB,我们主要使用双线性变换法由模拟滤波器原型设计数字滤波器。程序最后我们还利用Matlab中的函数freqz 画出了该滤波器的频率响应。

其程序如下:

%采样频率10Hz,通带截止频率fp=3Hz,阻带截止频率fs=4Hz

%通带衰减小于1dB,阻带衰减大于20dB

%使用双线性变换法由模拟滤波器原型设计数字滤波器

T=0.1; FS=1/T;

fp=3;fs=4;

wp=fp/FS*2*pi;

ws=fs/FS*2*pi;

Rp = 1; % 通带衰减

As = 20; % 阻带衰减

% 频率预畸

OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq %设计butterworth低通滤波器原型

N = ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(Omega P/OmegaS)));

OmegaC = OmegaP/((10^(Rp/10)-1)^(1/(2*N)));

[z,p,k] = buttap(N); %获取零极点参数

p = p*OmegaC;

k = k*OmegaC^N;

B = real(poly(z));

b0 = k;

cs = k*B;

ds = real(poly(p));

% 双线性变换

[b,a] = bilinear(cs,ds,FS);

% 绘制结果

freqz(b,a,512,FS);

运行程序得到的图形:

2.4 用滤波器对信号进行滤波

我们做的是IIR滤波器,所以我们利用函数filter对信号进行滤波。其程序如下:

z=filter(b,a,x);

subplot(2,1,1);

plot(z);

title('滤波后信号波形');

Z=fft(z,256);

subplot(2,1,2);

plot(abs(Z));

title('滤波后信号频谱');

2.5滤波器分析后的语音信号的波形及频谱

运行2.4程序得到滤波后的语音信号的波形及频谱图如下:

心得和经验

对录音的采集后,需要保存在C盘根目录下,否则用Matlab读取音频文件读取不了。其余操作只要输入函数按确定键得出图形后,保存就行。

参考文献

[1] 谢希仁. 计算机网络(第五版)[M]. 北京:电子工业出版社,2008年2月

[2] 胡小强计算机网络[M] 北京:北京邮电大学出版社2005年1月

致谢

(注:可编辑下载,若有不当之处,请指正,谢谢!)

精选文档

相关文档
最新文档