对语音信号进行分析及处理Word文件下载.docx

上传人:b****7 文档编号:22422264 上传时间:2023-02-04 格式:DOCX 页数:28 大小:151.85KB
下载 相关 举报
对语音信号进行分析及处理Word文件下载.docx_第1页
第1页 / 共28页
对语音信号进行分析及处理Word文件下载.docx_第2页
第2页 / 共28页
对语音信号进行分析及处理Word文件下载.docx_第3页
第3页 / 共28页
对语音信号进行分析及处理Word文件下载.docx_第4页
第4页 / 共28页
对语音信号进行分析及处理Word文件下载.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

对语音信号进行分析及处理Word文件下载.docx

《对语音信号进行分析及处理Word文件下载.docx》由会员分享,可在线阅读,更多相关《对语音信号进行分析及处理Word文件下载.docx(28页珍藏版)》请在冰豆网上搜索。

对语音信号进行分析及处理Word文件下载.docx

xlabel('

时间轴n'

ylabel('

幅值A'

(2)然后用函数fft对语音号进行快速傅里叶变换,得到信号的频谱特性;

y1=fft(x,6000);

%对信号做N=6000点FFT变换

figure

(2)

subplot(2,1,1),plot(k,abs(y1));

|X(k)|'

幅度谱'

subplot(2,1,2),plot(k,angle(y1));

arg|X(k)|'

相位谱'

(3)产生高斯白噪声,并且对噪声进行一定的衰减,然后把噪声加到信号中,再次对信号进行频谱特性分析,从而加深对频谱特性的理解;

d=randn(1,60000);

%产生高斯白噪声

d=d/100;

%对噪声进行衰减

x2=x+d;

%加入高斯白噪声

3、设计数字滤波器

(1)IIR低通滤波器性能指标通带截止频,阻带截止频率Hz?

1000fc?

Hz1200?

f。

,阻带最小衰减,通带最大衰减dB100?

?

dB?

1st21

(2)FIR低通滤波器性能指标通带截止频率,阻带截止频率Hz?

1000fc?

Hz?

1200f100dB,阻带衰减,通带衰减。

1dB12st(3)IIR高通滤波器的设计指标,,,阻带最小衰Hz?

2000fHz?

1000fzpA?

30dB,通带最大衰减减。

dB1A?

sPf?

2000Hz,阻带,4(4)()FIR高通滤波器的设计指标,Hz1000f?

zpA?

50dB,通带最大衰减。

最小衰减dB?

A1sP(5)用自己设计的各滤波器分别对采集的信号进行滤波,在Matlab中,FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。

比较滤波前后语音信号的波形及频谱,在一个窗口同时画出滤波前后2

的波形及频谱。

在Matlab中,函数sound可以对声音进行回放。

其调用格式:

sound(x,fs,bits);

可以感觉滤波前后的声音有变化。

三、结果分析

1、原始语音信号采样后的时域波形及FFT变换后频谱

图1.原始信号时域图

图2.原始信号的频谱图

3

2、加入噪声后信号的时域波形及FFT变换后频谱

加入噪声后的时域信号图3.分析:

由图可以看出加入噪声后有明显的不一样,运行sound(x2,fs);

播放加入高斯噪声后的语音,可以明显听出兹兹的噪声

加入噪声后的频谱图4.图

4

3IIR后的时域波形频谱变化滤波器及原始信号通过、IIR

5.IIR图低通滤波器

低通滤波器滤波前后时域波形图6.IIR分析:

经过滤波器后的信号和原始信号很近似5

图7.IIR低通滤波器滤波前后的频谱

分析:

从图7可以看出,经过IIR低通滤波器滤波后将高频部分滤除了。

4、FIR滤波器及原始信号通过FIR后的时域波形频谱变化

图8.FIR低通滤波器

6

低通滤波器滤波前后时域波形图9.FIR

10.FIR低通滤波器滤波前后频谱图

FIR可以看出,经过低通滤波器滤波后将高频部分滤除了。

10分析:

从图

7

5、IIR高通滤波器的设计

图11.IIR高通滤波器

图12.IIR高通滤波器滤波前后时域波形

8

图13.IIR高通滤波器滤波前后频谱

6、FIR高通滤波器的设计

高通滤波器图14.FIR9

15.FIR高通滤波器滤波前后时域波形图

16.FIR高通滤波器滤波前后频谱图

10

四、结束语

这次的数字信号处理大作业的题目是应用Matlab对语音信号进行频谱分析及滤波,首先通过网络和书籍查找有关本次作业所需的资料,编写相关程序,并通过Matlab软件运行得到相关波形频谱图。

在做作业的过程中,我将上课所学的理论知识运用到实践中。

通过这次应用Matlab对语音信号进行频谱分析及滤波,让我对Matlab的应用以及数字滤波器的设计有了更深层次的理解,每个程序中的语句表示什么意思也有了很清楚的了解。

在实践中增强了我的动手能力,并提高了我的综合能力,使自身得到了很大的锻炼。

另外,在设计滤波器的过程中由于个人知识学得不到位,后面的仿真结果不是很理想,我希望以后多查阅资料,多积累,多思考,只有这样,才能取得更大的进步,才能学有所用,学有所长。

11

五、程序附录

(1)采样+噪声

clear

clc

%读取语音信号的数据,赋给变量x1

sound(x1,fs);

%播放原始语音信号

N=length(x1)

fs%采样频率为44100Hz

bits%比特率为16

N1=length(x)

figure

(1)

sound(x,fs);

%播放截取后语音信号,仍能清晰地听到“数字信号”

k=0:

5999;

mean(x)%求得语音信号平均幅值-2.1368e-04

mean(d)

%对噪声进行衰减

sound(x2,fs);

%播放加入高斯噪声后的语音,可以明显听出噪声

figure(3)

plot(x2)

加入噪声后时域信号'

12

y2=fft(x2,6000);

%对信号做N点FFT变换

figure(4)

subplot(2,1,1),plot(k,abs(y2));

加入噪声后|X(k)|'

subplot(2,1,2),plot(k,angle(y2));

加入噪声后arg|X(k)|'

(2)IIR低通滤波器

%IIR低通滤波器

%读取语音信号的数据,赋给变量x1

mean(d);

%播放加入高斯噪声后的语音,可以明显听出噪声

fs=44100;

Ts=1/fs;

wp=2*pi*45000/fs;

%通带截止频率

ws=2*pi*50000/fs;

%阻带截止频率

Rp=1;

%通带衰减

Rs=100;

%阻带衰减

wp1=2/Ts*tan(wp/2);

%将模拟指标转换成数字指标

ws1=2/Ts*tan(ws/2);

[N,Wn]=buttord(wp1,ws1,Rp,Rs,'

s'

%选择滤波器的最小阶数

[Z,P,K]=buttap(N);

%创建butterworth模拟低通滤波器

[Bap,Aap]=zp2tf(Z,P,K);

[b,a]=lp2lp(Bap,Aap,Wn);

%将模拟原型低通滤波器转换为低通滤波器

[bz,az]=bilinear(b,a,fs);

%用双线性变换法实现模拟滤波器到数字滤波器的转换

[H,W]=freqz(bz,az);

%绘制频率响应曲线

plot(W*fs/(2*pi),abs(H))

grid

频率/Hz'

频率响应幅度'

IIR低通滤波器'

13

f1=filter(bz,az,x2);

subplot(2,1,1)

plot(x2)%画出滤波前的时域图

IIR低通滤波器滤波前的时域波形'

subplot(2,1,2)

plot(f1);

%画出滤波后的时域图

IIR低通滤波器滤波后的时域波形'

sound(f1,44100);

%播放滤波后的信号

F0=fft(f1,1024);

f=fs*(0:

511)/1024;

y2=fft(x2,1024);

subplot(2,1,1);

plot(f,abs(y2(1:

512)));

%画出滤波前的频谱图

IIR低通滤波器滤波前的频谱'

频率/Hz'

幅值'

F1=plot(f,abs(F0(1:

%画出滤波后的频谱图

IIR低通滤波器滤波后的频谱'

(3)FIR低通滤波

%FIR低通滤波

x1=wavread('

产生高斯白噪声d=randn(1,60000);

%%对噪声进行衰减d=d/100;

%加入高斯白噪声x2=x+d;

sound(x2,fs);

wp=2*pi*1000/fs;

ws=2*pi*1200/fs;

Rp=1;

Rs=100;

wdelta=ws-wp;

取整N=ceil(8*pi/wdelta);

%14

wn=(wp+ws)/2

[b,a]=fir1(N,wn/pi,hamming(N+1));

%选择窗函数,并归一化截止频率

freqz(b,a,512);

FIR低通滤波器'

f2=filter(b,a,x2);

plot(x2)

FIR低通滤波器滤波前的时域波形'

subplot(2,1,2)plot(f2);

'

FIR低通滤波器滤波后的时域波形播放滤波后的语音信号sound(f2,44100);

%F0=fft(f2,1024);

f=fs*(0:

figure(3)y2=fft(x2,1024);

subplot(2,1,1);

plot(f,abs(y2(1:

title('

FIR)低通滤波器滤波前的频谱'

);

'

xlabel();

subplot(2,1,2)F2=plot(f,abs(F0(1:

)title('

FIR低通滤波器滤波后的频谱);

ylabel('

高通滤波器4)IIR(wp=2*2000/fs;

ws=2*1000/fs;

ap=1;

as=30;

[N,Wc]=buttord(wp,ws,ap,as);

[B,A]=butter(N,Wc,'

high'

[H,W]=freqz(B,A);

figure

(1)plot(W,abs(H))高通滤波的幅值响应title('

)f1=filter(B,A,x2);

15

sound(f1,fs)

IIR高通滤波器滤波前的时域波形'

plot(f1)

IIR高通滤波器滤波后的时域波形'

f0=fft(f1,2048);

1023)/2048;

y=fft(x2,2048);

y0=fft(f1,2048);

plot(f,abs(y(1:

1024)))

IIR高通滤波前的幅频图'

plot(f,abs(y0(1:

1024)));

IIR高通滤波厚的幅频图'

(5)FIR高通滤波器

clc;

t=(0:

length(x1)-1)/fs;

Au=0.05;

d=[Au*cos(2*pi*11025*t)];

x2=x1'

+d;

T=1/fs;

wp=2*pi*2000/fs;

ws=2*pi*1000/fs;

as=50;

B=wp-ws;

N0=ceil(6.6*pi/B);

N=N0+mod(N0+1,2);

wc=(wp+ws)/2/pi;

hanning(N));

h=fir1(N-1,wc,'

t=1:

N;

figure

(1)plot(t,h)y=fftfilt(h,x2);

sound(y,fs)figure

(2)subplot(2,1,1)plot(x2)16

FIR高通滤波器滤波前的时域波形'

plot(y)

FIR高通滤波器滤波后的时域波形'

f0=fft(y,2048);

y0=fft(x2,2048);

FIR高通滤波前的幅频图'

plot(f,abs(f0(1:

FIR高通滤波厚的幅频图'

17

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 药学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1