采样定理及在语音变采样.docx
《采样定理及在语音变采样.docx》由会员分享,可在线阅读,更多相关《采样定理及在语音变采样.docx(9页珍藏版)》请在冰豆网上搜索。
采样定理及在语音变采样
课程名称
数字信号处理
实验课时
4学时
实验项目名称和编号
采样定理及在语音变采样
同组者姓名
实验目的
学会MATLAB勺使用,掌握MATLAB勺程序设计方法;掌握在Windows环境下语音信号采集的方法;掌握数字信号处理的基本概念、基本理论和基本方法;设计型实验,创新型实验
实验环境
MATLAB
实验内容和原理
1、采样定理:
在进行模拟与数字信号的转换过程中,当采样大于最高频率的2倍时,则采样之后的数字信号完整
的保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍。
2、采样频率:
采样频率是指计算机每秒钟采样多少个声音样本,是描述声音文件的音质、音频、衡量声卡、声音文件的质量标准。
采样频率越高,即采样的时间间隔越短,则在单位时间内计算机得到的声音样本数据越多,对声音波形的表示也越准确。
3、采样位数与采样频率:
采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。
采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音
的还原就越真实越自然。
采样位数和采样率对于音频接口来说是最为重要的两个指标。
无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。
采样位数越多则捕捉到的信号越精确。
4、利用MATLAB对语音信号进行分析和处理:
采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪
声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。
5、语音信号的滤波示意图:
、语音信号的采集与分析
二、利用余弦函数构造一个高频噪声
四、程序设计及仿真图形
4.1用Matlab对原始语音信号进行分析
clear;
关
键
代
码
[y,fs,bits]=wavread('C:
\22.wav');%x语音数据fs采样频率bits采样点数sound(y,fs,bits);%话音回放
n=length(y);%求出语音信号的长度
Y=fft(y,n);%傅里叶变换
subplot(2,1,1);
plot(y);
title('原始信号波形');
subplot(2,1,2);
plot(abs(Y));title('原始信号频谱')
4.2、给原始的语音信号加上一个高频余弦噪声,频率为(22050hz)。
%加噪声
fs=22050;
x=wavread('C:
\22.wav');
f=fs*(0:
511)/1024;
Au=0.03;
t=0:
1/22050:
(length(x)-1)/22050;
d=[Au*cos(2*pi*5000*t)];
x2=x+[d'd'];
y2=fft(x2,1024);
figure
(1);
plot(t,x2)
title('加噪后的信号');
xlabel('timen');ylabel('fuzhin');
figure
(2)
subplot(2,1,1);
plot(f,abs(y2(1:
512)));%plot(f,abs(y1(1:
512)));
title('原始语音信号频谱');
xlabel('Hz');
ylabel('fuzhi');
subplot(2,1,2);
plot(f,abs(y2(1:
512)));
title('加噪后的信号频谱');
xlabel('Hz');
ylabel('fuzhi');
接
上
页
)
实验步骤
关
键
代
码
测试记录分析结论
4.3、设计合适的滤波器,滤除高频噪声,绘出滤波后的信号频域和时域波形:
程序:
%用双线性变换法设计巴特沃思低通滤波器双线性变换法低通滤波器
fp=1000;fc=1200;As=100;Ap=1;ffs=22050;wc=2*fc/ffs;wp=2*fp/ffs;
[n,wn]=ellipord(wp,wc,Ap,As);%求阶数N和通带截止频率[num,den]=ellip(n,Ap,As,wn);%设计椭圆滤波器
freqz(num,den,256,ffs);%画出频率响应
对噪音进行滤波:
x=filter(num,den,y);%滤波
X=fft(x,4096);%FFTsubplot(211),plot(x);title('subplot(212),plot(abs(X));title('
滤波后信号波形');
滤波后信号频谱');
4.4、双线性变换法的带通滤波器和对噪音滤波
fp=[3000,8000];fc=[1000,10000];Ap=1;As=100;ffs=22050wc=2*fc/ffs;wp=2*fp/ffs;
[n,wn]=ellipord(wp,wc,Ap,As);
[num,den]=ellip(n,Ap,As,wn);
freqz(num,den,256,ffs);
进行滤波:
x=filter(num,den,y);%滤波
X=fft(x,4096);%FFT
subplot(211),plot(x);title('滤波后信号波形');subplot(212),plot(abs(X));title('滤波后信号频谱');
4.1、它的时域波形和频谱
4.2、对加噪后的语音进行分析,并画出其信号时域和频谱图。
■Y
c
15
1DOX
O
5
-上1
O
wKocaxo
Hi
对躺誹号锁谱
E0X
15
-Ll.
6DOL
Hi
9JOO
1000U13000
D
5
-上Nn」
O
Iflj
4.3、设计合适的滤波器,滤除高频噪声,绘出滤波后的信号频域和时域波形:
双线性变换法低通滤波器
50
建巴占E2壘LL
1-reuuerKY(Hz)
对噪音进行滤波后图形:
4.4、双线性变换法的带通滤波器和对噪音滤波
6000
Iriquanty[Hz)
J3C:
0
oD
-25-30左?
-.匸u_^g7
Do-O
百O-6
4*1
■10«J
ODD
F--i:
i|rri\T.j
WJD
-皿D
□
〔dwgullIQL
滤波后
进一步加深了对语音信号的了解和熟练了对Matlab的使用,让我对通信原理这门课程有了更加浓厚
的兴趣。
因为以前都是基于课本上所学的理论知识,然而通过这次课程设计之后才能真正理解其意义。
在这次课程实验的过程中,我遇到不少的问题,比如刚开始,要录音的时候,没有选择正确的频率,导
致在运行程序的时候,无法调用声音,经过后来的改正才可以。
还有刚开始由于对滤波器的滤波原理并不是很了解,于是我又翻出学过的数字信号处理课本,认真研究起各种滤波器,这才使我明白了大多数滤波
器是如何工作,不再单单只是懂理论,理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论。
总的来说,通过这次的课程设计我对语音信号有了全面的认识,对Matlab的知识又有了深刻的理解,让我感受到只有在充分理解课本知识的前提下,才能更
好的应用这个工具。
这次课程设计使我了解了MATLAB的使用方法,学会分析滤波器的优劣和性能,提高了分析和动手实践能
力,
以下由实验教师填写
记事评议
成绩评疋
平时成绩实验报告成绩综合成绩
指导教师签名: