(完整word版)综合训练.docxVIP

  • 11
  • 0
  • 约1.99万字
  • 约 43页
  • 2021-03-10 发布于山东
  • 举报
数字信号处理课程研究报告 项目 : 综合训练课题 班级 : 测控 142 姓名 : 吉宇 学号 : 160514205 学年 : 2016 —2017 常熟理工学院电气与自动化工程学院 1 课题一:基于 MATLAB的语音信号分析与处理 一、课题描述 录制一段自己的语音信号, 并对录制的信号进行采样; 画出采样后语音信号的时域波形和频谱波形;根据频率特征,分别设计 IIR 和 FIR 低通、高通、带通滤波器,并对声音信号进行滤波处理, 回放声音信号,分析比较处理前后声音的变化。 二、课题分析 语音信号处理主要分成三个部分: 语音信号的录制与采样; 由于信号会有噪声,因此需要有相滤波器的设计; 最后对采样信号进行滤波。 三、课题设计 对原始声音信号采样并画出时域波形和频域波形程序设计如下: 原始声音信号采集 [y,fs,nbits]=wavread(shengyin.wav); % 读取声音 sound(y,fs,nbits); %回放声音 N=length(y); n=0:N-1;%长度 w=2*n*pi/N; y1=fft(y);% 对原始信号做傅里叶变化 subplot(2,1,1); plot(n,y); title( 原始语音信号时域图 ); xlabel( 时间 t); ylabel( 幅值 y); subplot(2,1,2); plot(w/pi,abs(y1)); title( 原始语音信号频谱 ); xlabel( 频率 Hz); ylabel( 幅度 ); 2 设计合适的滤波器前首先需要设计一个原型滤波器,下面分别设计了 IIR 和 FIR 低通,带通高通滤波器,设计程序过程如下: 原型滤波器设计 IIR 低通滤波器: Ft=8000;% 模拟指标采样周期 Fp=1000;% 通带截止频率 Fs=1200;% 阻带截止频率 wp=2*pi*Fp/Ft;% 数字指标 ws=2*pi*Fs/Ft; ft=2*Ft*tan(wp/2);% 双线性变化 fs=2*Ft*tan(ws/2); [n11,wn11]=buttord(wp,ws,1,50,s); [b11,a11]=butter(n11,wn11,s); [num11,den11]=bilinear(b11,a11,0.5); [h,w]=freqz(num11,den11);figure; plot(w*8000*0.5/pi,abs(h)); legend(IIR 低通滤波器 ); grid; 3 IIR 带通滤波器 Fp1=1200; Fp2=3000; Fs1=1000; Fs2=3200; Ft=8000; wp1=tan(pi*Fp1/Ft); wp2=tan(pi*Fp2/Ft); ws1=tan(pi*Fs1/Ft); ws2=tan(pi*Fs2/Ft); w=wp1*wp2/ws2; bw=wp2 -wp1; wp=1; ws=(wp1*wp2 -w.^2)/(bw*w); [n12,wn12]=buttord(wp,ws,1,50,s); [b12,a12]=butter(n12,wn12,s); [num2,den2]=lp2bp(b12,a12,sqrt(wp1*wp2),bw); [num12,den12]=bilinear(num2,den2,0.5); [h,w]=freqz(num12,den12); figure; plot(w*8000*0.5/pi,abs(h)); axis([0 4500 0 1.5]); 4 legend(IIR 带通滤波器 ,Location,NorthWest); grid; IIR 高通滤波器: Ft=8000; Fp=4000; Fs=3500; wp1=tan(pi*Fp/Ft); ws1=tan(pi*Fs/Ft); wp=1; ws=wp1*wp/ws1; [n13,wn13]=cheb1ord(wp,ws,1,50,s); [b13,a13]=cheby1(n13,1,wn13,s); [num,den]=lp2hp(b13,a13,wn13); [num13,den13]=bilinear(num,den,0.5); [h,w]=freqz(num13,den13); figure; plot(w*21000*0.5/pi,abs(h)); legend(IIR 高通滤波器 ,Location,NorthWest); axis([0 11000 0 1.5]); grid; 5 FIR低通滤波器: Ft=8000; Fp=1000; Fs=1200; wp=2*Fp/Ft; ws=2*Fs/Ft; rp=1; rs=50; p=1-10.^( -rp/20); s=

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档