#Matlab在语音信号处理中应用Word格式文档下载.docx
- 文档编号:17960188
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:30
- 大小:1,006.73KB
#Matlab在语音信号处理中应用Word格式文档下载.docx
《#Matlab在语音信号处理中应用Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《#Matlab在语音信号处理中应用Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
Ωph=2/T*tan(wp/2>
然后用butter和buttord、cheby1和cheb1ord、ellip和ellipord设计各种模拟滤波器,再用bilinear函数进行模拟滤波器和数字滤波器之间地转换,最后用filter函数对语音信号进行滤波,并运用函数sound播放滤波后语音.
三、主要实验仪器及材料
微型计算机、Matlab7.x
四、实验程序代码、结果和滤波性能分析
1)语音信号采集及频谱分析
程序代码如下:
%语音信号地时域波形和频谱特性
clearall。
closeall。
clc。
file='
zhong.wav'
。
%zhong.wav地内容为“中华人民共和国”
[y,fs,nbits]=wavread(file>
sound(y,fs,nbits>
yn=fft(y>
figure(1>
plot(y>
title(‘语音时域波形’>
figure(2>
freqz(yn>
title(‘语音频谱特新’>
运行结果如下;
先会听到“中华人民共和国”,然后会看到如下图形:
图1语音时域波形
图2语音频谱
2)窗函数设计FIR滤波器及滤波
%用凯瑟窗设计FIR低通滤波器
clearall;
closeall;
clc;
fp=1000。
fs=1200。
rs=100。
Fs=8000。
%kaiser滤波器设计
wp=2*pi*fp/Fs。
ws=2*pi*fs/Fs。
Bt=ws-wp。
alph=0.112*(rs-8.7>
M=ceil((rs-8>
/2.285/Bt>
wc=(wp+ws>
/2/pi。
hn=fir1(M,wc,kaiser(M+1,alph>
>
freqz(hn>
[y,fn,nbits]=wavread('
zhong'
Y=fft(y>
y1=fftfilt(hn,y>
%利用kaiser滤波器对语音信号滤波
Y1=fft(y1>
n=0:
length(y>
-1。
subplot(221>
title('
未滤波语音波形'
subplot(222>
plot(y1>
滤波后语音波形'
subplot(223>
plot(n,Y>
未滤波语音频谱'
subplot(224>
plot(n,Y1>
滤波后语音频谱'
sound(y1,fn,nbits>
%滤波后语音回放
运行结果如下:
图3凯瑟窗设计FIR低通滤波器
图4Kaiser滤波器滤波前后语音波形、频谱
%用凯瑟窗设计FIR数字高通滤波器
fp=3000。
fs=2800。
FS=8000。
as=100。
wp=2*pi*fp/FS。
ws=2*pi*fs/FS。
Bt=wp-ws。
alph=0.112*(as-8.7>
M=ceil(as-8/2.285/Bt>
hn=fir1(M,wc,'
high'
kaiser(M+1,alph>
%用kaiser滤波器进行滤波
运行结果:
图5凯瑟窗设计FIR数字高通滤波器
图6Kaiser滤波器滤波前后语音波形、频谱
%用凯瑟窗设计FIR数字带通滤波器
fp1=1200。
fp2=300。
fc1=1000。
fc2=3200。
wlp=2*pi*fp1/FS。
wls=2*pi*fc1/FS。
wup=2*pi*fp2/FS。
wus=2*pi*fc2/FS。
Bt=min(wlp-wls,wus-wup>
wc=[(wlp+wls>
/2/pi,(wup+wus>
/2/pi]。
bandpass'
图7凯瑟窗设计FIR数字带通滤波器
图8Kaiser滤波器滤波前后语音波形、频谱
3 >
等波纹逼近法设计FIR滤波器及滤波
%等波纹逼近法设计FIR低通滤波器及滤波fp=1000。
rp=1。
f=[fp,fs]。
m=[1,0]。
dat1=(10^(rp/20>
-1>
/(10^(rp/20>
+1>
dat2=10^(-rs/20>
rip=[dat1,dat2]。
[M,fo,mo,w]=remezord(f,m,rip,FS>
M=M+1。
hn=remez(M,fo,mo,w>
%用remez设计地滤波器进行滤波
;
图9等波纹逼近法设计FIR低通滤波器及滤波
图10等波纹逼近法设计数字滤波器滤波前后语音波形、频谱
%等波纹逼近法设计FIR高通滤波器及滤波
f=[fs,fp]。
m=[0,1]。
rip=[dat2,dat1]。
图11等波纹逼近法设计FIR高通滤波器
图12等波纹逼近法设计数字滤波器滤波前后语音波形、频谱
%等波纹逼近法设计FIR带通滤波器及滤波
fp2=3000。
f=[fc1,fp1,fp2,fc2]。
m=[0,1,0]。
rip=[dat2,dat1,dat2]。
图13%等波纹逼近法设计FIR高通滤波器及滤波
图14等波纹逼近法设计数字滤波器滤波前后语音波形、频谱
4 )双线性变换法设计IIR数字滤波器
butter设计模拟滤波器,再经双线性变换法设计IIR数字滤波器
%butter设计模拟低通滤波器再用双线性变换法设计IIR数字低通滤波器
fc=1200。
wpz=2*pi*1000/FS。
wsz=2*pi*1200/FS。
wp=2*tan(wpz/2>
*FS。
ws=2*tan(wsz/2>
%预畸校正转换指标
[N,wc]=buttord(wp,ws,rp,rs,'
s'
[B,A]=butter(N,wc,'
[Bz,Az]=bilinear(B,A,FS>
w=0:
0.01*pi:
pi。
[h,w]=freqz(Bz,Az,w>
plot(w/pi,20*log(abs(h>
'
k'
axis([0,1,-800,100]>
xlabel('
w/pi'
ylabel('
幅度/dB'
grid。
butter数字低通滤波器'
y1=filter(Bz,Az,y>
图15butter设计地数字低通滤波器频谱
图16滤波前后语音信号地时域波形和频谱
%butter设计数字高通滤波器<
此处直接运用了butter设计数字高通滤波器)
fc=2800。
wp=2*pi*1000/FS。
ws=2*pi*1200/FS。
[N,wc]=buttord(wp,ws,rp,rs>
[h,w]=freqz(B,A,w>
butter数字高通滤波器'
y1=filter(B,A,y>
图17butter设计地数字高通滤波器频谱
图18滤波前后语音信号地时域波形和频谱
%butter设计数字带通滤波器<
此处直接运用了butter设计数字带通滤波器)
wp=[2*fp1/FS,2*fp2/FS]。
ws=[2*fc1/FS,2*fc2/FS]。
[B,A]=butter(N,wc>
axis([0,1,-1000,100]>
butter数字带通滤波器'
图19butter设计地数带低通滤波器频谱
图20滤波前后语音信号地时域波形和频谱
cheby1设计模拟滤波器,然后经双线性变换法设计数字滤波器
%cheby1设计模拟低通滤波器再经双线性变换法设计成低通数字滤波器
wpz=2*pi*fp/FS。
wsz=2*pi*fc/FS。
%预畸校正转换指标
[N,wpo]=cheb1ord(wp,ws,rp,rs,'
[BH,AH]=cheby1(N,rp,wpo,'
[Bz,Az]=bilinear(BH,AH,FS>
cheby1数字低通滤波器'
图21cheby1数字低通滤波器
图22滤波前后语音信号地时域波形和频谱
%cheby1设计模拟高通滤波器再经双线性变换法设计成数字高通滤波器
cheby1数字高通滤波器'
图2cheby1数字高通滤波器
图24滤波前后语音信号地时域波形和频谱
%cheby1设计模拟带通滤波器再经双线性变换法设计成数字带通滤波器
wpz=[2*pi*fp1/FS,2*pi*fp2/FS]。
wsz=[2*pi*fc1/FS,2*pi*fc2/FS]。
%预畸校正转换指标[N,wpo]=cheb1ord(wp,ws,rp,rs,'
数字带通滤波器'
图25cheby1数字带通滤波器
图26滤波前后语音信号地时域波形和频谱
ellip设计模拟滤波器,然后经双线性变换法设计数字滤波器
%ellip设计模拟低通滤波器再经双线性变换法设计数字低通滤波器
FS=800
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 语音 信号 处理 应用