数字信号处理Word下载.docx
《数字信号处理Word下载.docx》由会员分享,可在线阅读,更多相关《数字信号处理Word下载.docx(23页珍藏版)》请在冰豆网上搜索。
3、数字信号处理的基本概念、基本理论和基本方法。
4、TLAB设计FIR和nR数字滤波器的方法。
5、用MATLAB对信号进行分析和处理
6、计报告4000以上,含程序设计说明,用户使用说明,源程序清单及程序框图。
7、机演示。
8、有详细的文档。
文档中包括设计思路、设计仿真程序、仿真结果及相应的分析与结论。
三、进度安排
第一周星期一:
课题讲解,查阅资料
星期二:
总体设计,详细设计
星期三:
编程,上机调试、修改程序
星期四:
上机调试、完善程序
星期五:
答辩
星期六-星期天:
撰写课程设计报告
附:
课程设计报告装订顺序:
封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。
正文的格式:
一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;
行距为22。
正文的内容:
一、课题的主要功能;
二、课题的功能模块的划分;
三、主要功能的实现;
四、程序调试;
五、总结;
六、附件(所有程序的原代码,要求对程序写出必要的注释);
七、评分表。
目录
一、课题的主要功能5
(一).问题描述5
(二).功能要求6
(三).算法提示6
二、课题的功能模块7
(一)、采集的原始信号时域波形和频谱图7
(二)、加白噪声语音信号的时域波形和频谱图8
(三)、加单频余弦信号的语音信号时域波形和频谱图9
(四)、哈名窗设计的带通滤波器对白噪声进行滤波9
(五)、用哈名窗设计的高通滤波器对单频干扰进行滤波10
(六)、用哈名窗设计的低通滤波器对白噪声进行滤波10
(七)、用凯撒窗设计的高通滤波器对单频干扰进行滤波11
(八)用凯撒窗设计的低通滤波器对单频干扰进行滤波12
三、课题主要功能的实现13
(一)、采集的声音信号的时域波形和频谱图的绘制13
(二)、加入噪声信号13
(三)、用窗函数设计数字滤波器(部分)14
四、总结15
五、附件16
七、评分表23
一、课题的主要功能
(一).问题描述
要求录制一段声音信号并保存为文件(长度不不小于10秒),对录制的信号进行采样。
使用MATLAB软件绘出采样后信号的时域波形和频谱图。
并对采样信号进行加噪,绘出加噪后的语音信号时域波形和频谱图,进行直观比较。
给定滤波器的归一化性能指标(视个人情况而定)。
采用窗函数法设计各型FIR滤波器(低通、高通、带通、带阻中的至少三种类型)对叠加噪声前后的语音信号进行滤波处理,绘出滤波器的频率响应以及滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;
在相同的性能指标下比较各发放的滤波效果,并从理论上进行分析。
(二).功能要求
用设计出的三种滤波器对加噪后的语音信号进行滤波处理,加入的噪声有三种:
白噪声、单频噪声、多频噪声。
滤波要求尽可能的保留正常的语音信号,滤除加入的各种噪音,以达到恢复原始信号的目的。
(三).算法提示
加入噪声的程序:
白噪声:
x2=awgn(x1,10);
sound(x2,fs,bits)
y2=fft(x2,32768);
figure
(2)
subplot(2,1,1)
plot(x2);
title('
加高斯白噪声语音信号的时域波形'
)
subplot(2,1,2)
plot(abs(y2));
加高斯白噪声语音信号的频谱'
单频干扰:
N=length(x1)-1;
t=0:
1/fs:
N/fs;
d=[0.8*cos(2*pi*5000*t)]'
;
x3=x1+d;
sound(x3,fs,bits);
figure(3)
plot(x3)
加单频余弦信号的语音信号时域波形'
y3=fft(x3,32768);
plot(abs(y3));
加单频余弦信号的语音信号频谱'
二、课题的功能模块
(一)、采集的原始信号时域波形和频谱图
(二)、加白噪声语音信号的时域波形和频谱图
(三)、加单频余弦信号的语音信号时域波形和频谱图
(四)、哈名窗设计的带通滤波器对白噪声进行滤波
(五)、用哈名窗设计的高通滤波器对单频干扰进行滤波
(六)、用哈名窗设计的低通滤波器对白噪声进行滤波
(七)、用凯撒窗设计的高通滤波器对单频干扰进行滤波
(八)用凯撒窗设计的低通滤波器对单频干扰进行滤波
三、课题主要功能的实现
(一)、采集的声音信号的时域波形和频谱图的绘制
[xn,Fs,Nbits]=wavread('
F:
\del.wav'
);
%sound(xn,Fs,Nbits);
yn=fft(xn,32768);
figure
(1);
subplot(2,1,1);
plot(xn);
原始语音信号时域波形'
plot(abs(yn));
原始语音信号频谱'
(二)、加入噪声信号
xn2=awgn(xn,20);
sound(xn2,Fs,Nbits);
yn2=fft(xn2,32768);
figure
(2);
plot(xn2);
加白噪声语音信号的时域波形'
subplot(2,1,2);
plot(abs(yn2));
加白噪声语音信号的频谱'
N=length(xn)-1;
1/Fs:
N/Fs;
d2=[0.01*cos(2*pi*20*t)]'
xn2=xn+d2;
plot(xn2)
(三)、用窗函数设计数字滤波器(部分)
哈名窗:
fp=1200;
fs=1600;
As=50;
Ap=0.25;
Wp=2*fp/Fs;
Ws=2*fs/Fs;
Wc=(Wp+Ws)/2;
N=ceil(6.6/(Ws-Wp));
bn=fir1(N,Wc);
[hn,wn]=freqz(bn,1,Fs);
figure(3);
subplot(3,1,1);
plot(wn/pi,abs(hn));
xlabel('
归一化频率(wn/pirad/sample'
ylabel('
幅度'
哈名窗低通幅频响应'
yn3=filter(bn,1,xn2);
subplot(3,1,2);
plot(yn3);
grid;
n'
滤波后的波形'
ynk=fft(yn3,Fs);
subplot(3,1,3);
plot(wn,abs(ynk));
set(gca,'
XTick'
0:
500:
Fs);
f/Hz'
滤波后的频谱'
sound(yn3,Fs);
凯撒窗:
fp=1800;
fs=2100;
As=40;
wp=2*pi*fp/Fs;
ws=2*pi*fs/Fs;
Bt=ws-wp;
alph=0.5842*(As-21)^0.4+0.07886*(As-21);
M=ceil((As-8)/2.285/Bt);
wc=(wp+ws)/2/pi;
hn=fir1(M,wc,kaiser(M+1,alph));
hk=fft(hn);
hk=freqz(hn,1,Fs);
xn3=fftfilt(hn,xn2);
yn3=fft(xn3);
plot(xn3);
滤波后信号波形'
plot(abs(yn3));
滤波后信号频谱'
figure(4);
stem(hn);
凯撒窗hn波形'
plot(abs(hk));
凯撒窗hn信号频谱'
sound(xn3,Fs,bits);
四、总结
曾经觉得数字信号处理是很难学的一门课程,一段时间我甚至放弃了学习它。
还记得老师上课讲授滤波器的知识时,我开了好几节课的小车,什么也没学到,很后悔。
这次因为要参加补考,看了一个假期的书,到学校来之后又赶着课程设计需要设计数字滤波器,让我尽可能的弥补了曾经的一念之差而造成的严重后果,还不迟。
看了几遍书,大致了解了数字滤波器的设计流程。
确实也只能说大致,虽然原理明白了,但是真的到自己设计的时候,却又总有摸不到头绪,思索良久我总结了几点原因。
第一,这次课程设计使用MATLAB软件,而对于这款软件,我真的是知之甚少。
本来接触时间不长,接触的机会也不多,以前的几次上机实际操作机会我都没当回事,敷衍了事。
第二,理论联系实际的能力不行。
何谓学到了知识,掌握了一个技术?
那就得应用到实际中去。
第三,我发觉了制约我的一个缺点就是动手操作的能力不强,不敢尝试,懒于尝试。
自己的想法总没有写进软件中进行验证,让我觉得这次的收获有了大幅的打折。
当然也有客观原因,就是为了准备补考,没有好好投入。
不过说白了,这个结果也是我的主观原因造成的,没什么可怨谁的。
谈一谈收获,说真的我觉得我收获真的不大。
因为首先对数字滤波器了解就不透彻,还有应用MATLAB真的是两眼一摸黑,很多东西都是在网上查找和请教老师、同学的,只能先自己死记硬背了,没有真正的消化。
不过我突然发觉找回了一些学习的兴趣了,自己真的差了好多好多,得换一种活法了,不想在浑浑噩噩的下去。
课程设计快结束了,这只是一个驿站,而我需要学习的东西还太多,还得好好走下去。
五、附件
[xn,Fs,Nbits]=wavread('
%sound(xn2,Fs,Nbits);
fs1=30;
fp1=50;
fs2=2100;
fp2=2000;
ws1=2*pi*fs1/Fs;
wp1=2*pi*fp1/Fs;
ws2=2*pi*fs2/Fs;
wp2=2*pi*fp2/Fs;
As=60;
wd=min((wp1-ws1),(ws2-wp2));
alph=0.112*(As-8.7);
N=ceil((As-8)/2.285/wd);
wc1=(ws1+wp1)/2;
wc2=(wp2+ws2)/2;
bn=fir1(N,[wc1wc2]/pi,kaiser(N+1,alph));
幅度hn'
哈名窗带通幅频响应'
fp=60;
fs=50;
wd=wp-ws;
N0=ceil(6.6*pi/wd);
N=N0+mod(N0+1,2);
wc=(wp+ws)/2;
bn=fir1(N-1,wc,'
high'
hamming(N));
哈名窗高通幅频响应'
%sound(yn3,Fs);
fs=40;
Bt=wp-ws;
M0=ceil((As-8)/2.285/Bt);
M=M0+mod(M0,2);
hn=fir1(M,wc,'
kaiser(M+1,alph));
%hk=fft(hn);
%sound(xn3,Fs,Nbits);
fp=1500;
fs=2000;
fp=1000;
fs=1500;
fs1=20;
fs2=1600;
fp2=1500;
ws1