数字信号处理课程设计(2)

2020-02-21 15:31

wavplay(x,Fs); %按任意键播放语音信号

wavwrite(x,Fs,'C:\\Users\\acer\\Desktop\\数字信号\\sound.wav'); %存储语音信号

N=length(x);%返回采样点数 df=fs/N;%采样间隔 n1=1:N/2;

f=[(n1-1)*(2*pi/N)]/pi;%频带宽度 figure(2); subplot(2,1,1);

plot(x);%录制信号的时域波形 title('原始信号的时域波形');%加标题 ylabel('幅值/A');%显示纵坐标的表示意义 grid;%加网格

y0=fft(x);%快速傅立叶变换 figure(2); subplot(2,1,2);

plot(f,abs(y0(n1)));%原始信号的频谱图 title('原始信号的频谱图');%加标题 xlabel('频率w/pi');%显示横坐标表示的意义 ylabel('幅值 ');%显示纵坐标表示的意义 title('原始信号的频谱图');%加标题

6

grid;%加网格

图1.1 原始信号的时域与频谱图

1.2滤除无效点

针对实际发出声音落后录制动作半拍的现象,如何拔除对无效点的采样的问题: 出现这种现象的原因主要是录音开始时,人的反应慢了半拍,导致出现了一些无效点,而后而出现的无效的点,主要是已经没有声音的动作,先读取声音出来,将原始语音信号时域波形图画出来,根据己得到的信号,可以在第二次读取声音的后面设定采样点,取好有效点,画出滤除无效点后的语音信号时域波形图,对比可以看出。这样就可以解决这个问题。

x=wavread('C:\\Users\\acer\\Desktop\\数字信号\\sound.wav',

7

[4000,24000] );

%从4000点截取到24000结束 plot (x);%画出截取后的时域图形 title('截取后的声音时域图形');%标题 xlabel('频率');ylabel('振幅') ; grid; %画网格

图1.2 去除无效点

2.巴特沃斯滤波器的设计

2.1设计巴特沃思低通滤波器

MATLAB程序如下。滤波器图如图3.3所示。

8

%低通滤波

fp=1000;fs=1200;Fs=22050; rp=1;rs=100; wp=2*pi*fp/Fs; ws=2*pi*fs/Fs; Fs1=1;

wap=2*tan(wp/2); was=2*tan(ws/2);

[N,wc]=buttord(wap,was,rp,rs,'s'); [B,A]=butter(N,wc,'s'); [Bz,Az]=bilinear(B,A,Fs1); figure(1);

[h,w]=freqz(Bz,Az,512,Fs1*22050); plot(w,abs(h));

title('巴特沃斯低通滤波器');

xlabel('频率(HZ)');ylabel('耗损(dB)'); gridon;

9

图2.1 巴特沃思低通滤波器

2.2设计巴特沃思高通滤波器

MATLAB程序如下。滤波器图如图3.5所示。 %高通滤波

fp=4800;fs=5000;Fs=22050; rp=1;rs=100; wp=2*pi*fp/Fs; ws=2*pi*fs/Fs; T=1;Fs1=1; wap=2*tan(wp/2); was=2*tan(ws/2);

10


数字信号处理课程设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:(冀教版)六年级数学上册教案 测量旗杆高度

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: