数字信号与处理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字信号与处理信号的分析与处理综合实验

学生姓名

学号

实验二

一、实验目的

目的:综合运用数字信号处理的理论知识进行信号的采样,重构,频谱分析和滤波器的设计,通过理论推导得出相应结论,再利用Matlab作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。

二、基本要求

1.掌握数字信号处理的基本概念、基本理论和基本方法;

2.学会MATLAB的使用,掌握MATLAB的程序设计方法;

3.掌握用MATLAB设计简单实验验证采样定理的方法;

4.掌握在Windows环境下语音信号采集的方法;

5.学会用MATLAB对信号进行频谱分析;

6.掌握MATLAB设计FIR和IIR数字滤波器的方法;

三、实验内容

1.利用简单正弦信号设计实验验证采样定理:

(1)Matlab产生离散信号的方法,作图的方法,以及基本运算操作

(2)对连续正弦信号以不同的采样频率作采样

(3)对采样前后信号进行傅立叶变换,并画频谱图

(4)分析采样前后频谱的有变化,验证采样定理。

掌握画频谱图的方法,深刻理解采样频率,信号频率,采样点数,频率分辨率等概念2.真实语音信号的采样重构:录制一段自己的语音信号,并对录制的信号进行采样;画出采样前后语音信号的时域波形和频谱图;对降采样后的信号进行插值重构,滤波,恢复原信号。

(1)语音信号的采集

(2)降采样的实现(改变了信号的采样率)

(3)以不同采样率采样后,语音信号的频谱分析

(4)采样前后声音的变化

(5)对降采样后的信号进行插值重构,滤波,恢复原信号

3.带噪声语音信号的频谱分析

(1)设计一频率已知的噪声信号,与实验2中原始语音信号相加,构造带噪声信号

(2) 画出原始语音信号和加噪声后信号,以及它们的频谱图

(3) 利用频谱图分析噪声信号和原语音信号的不同特性

4. 对带噪声语音信号滤波去噪:给定滤波器性能指标,采样窗函数法或双线性变换设计滤

波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采样的语音信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;

(1) 分析带噪声信号频谱,找出噪声所在的频率段

(2) 利用matlab 中已有的滤波器滤波

(3) 根据语音信号特点,自己设计滤波器滤波

(4) 比较各种滤波器性能(至少四种),选择一种合适的滤波器将噪声信号滤除

(5) 回放语音信号,比较滤波前后声音的变化

四、实验原理

参考《数字信号处理》教材

《数字信号处理的MATLAB 实现》万永革 编著

五、主要实验仪器及材料

微型计算机、Matlab 。

六、实验步骤

1.设计一简单正弦信号,通过改变采样率观察采样前后的信号变化。

例如:假设有一振幅为1,频率为10Hz ,相位为0.3的模拟信号,即sin(2100.3)t π⨯⨯+,用0.01s 的采样间隔(采样频率为100Hz )来表示原始信号(注意:实际上模拟信号不能用离散值表示,此处为了在计算机上表示,用采样率非常高的离散信号表示模拟信号)。

分别以5Hz ,10Hz (每秒采样10次,即采样间隔为0.1s ),20Hz ,40Hz ,80Hz ,200Hz 对原始信号进行采样,画出采样前后的信号,并画出其频谱图,对比前后的变化,验证采样定理。

(1)可以用t=0:1/fs:9/f; 取9个周期,通过改变采样率,自动改变采样点数。

(2)也可以通过设置dt1(采样间隔),已知采样点数n1,t1=n1*dt1,

如图所示,采样率为40Hz 时的原始信号,采样过程和采样后的信号时域图和频谱图,可见,当采样率大于原始信号频率的两倍时,采样前后信号频率基本不发生变化,信号不失真。

图2-1 采样的过程

图2-2 原始信号和采样后信号的频谱

2.语音信号的采集。

利用windows下的录音机或其他软件,录制一段自己的话音,时间控制在1秒左右。

然后在MATLAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。通过wavread函数的使用,要求理解采样频率、采样位数等概念。

wavread函数调用格式:

y=wavread(file),读取file所规定的wav文件,返回采样值放在向量y中。

[y,fs,nbits]=wavread(file),采样值放在向量y中,fs表示采样频率(Hz),nbits表示采样位数。

y=wavread(file,N),读取前N点的采样值放在向量y中。

y=wavread(file,[N1,N2]),读取从N1点到N2点的采样值放在向量y中。

3.对真实语音信号的采样、重构。

(1)降采样:

利用windows下的录音机录制的音频采样率是固定的fs(=22050),可以选择以下函数实现对语音信号的降采样。

y=x((1:N:length(x))); %对原始信号每隔N个点取一位,即采样率变为原来的1/N

y=resample(yn,L,M); %采样率变为原来的L/M倍

y=downsample(yn,N); %%采样率变为原来的1/N倍

改变采样率为原来的1/2倍,1/4倍,1/20倍,1/50倍,1/100倍等,分别画出降采样前后的信号波形和频谱图,分析采样前后信号的变化。

图2-3 采样率为原来的1/2时的信号波形频谱图

相关文档
最新文档