语音信号的数字滤波处理(三)
- 格式:doc
- 大小:42.00 KB
- 文档页数:4
DSP工作原理DSP(Digital Signal Processing,数字信号处理)是一种通过数字计算来处理模拟信号的技术。
它在现代通信、音频、图像处理等领域得到广泛应用。
本文将详细介绍DSP的工作原理。
一、数字信号处理的基本概念1.1 数字信号数字信号是通过离散化的方式对模拟信号进行采样和量化得到的信号。
它由一系列离散的采样点组成,每个采样点表示信号在某个时间点的幅度。
数字信号可以通过AD转换器将模拟信号转换为数字形式。
1.2 数字滤波器数字滤波器是DSP中最基本的模块之一,用于对数字信号进行滤波处理。
它可以通过去除或增强特定频率的成分来改变信号的频谱特性。
数字滤波器可以分为FIR滤波器和IIR滤波器两种类型,分别采用有限冲激响应和无限冲激响应的方式进行滤波。
1.3 快速傅里叶变换(FFT)FFT是一种高效的频域分析方法,用于将时域信号转换为频域表示。
它通过将信号分解为一系列正弦和余弦函数的叠加来描述信号的频谱特性。
FFT算法可以大大提高频谱分析的速度和效率。
二、DSP的工作原理2.1 采样与量化DSP首先对模拟信号进行采样和量化。
采样是指以一定的频率对模拟信号进行离散化处理,采集一系列离散的采样点。
量化是指将采样点的幅度值映射为数字形式,通常采用固定位数的二进制表示。
2.2 数字滤波接下来,DSP对数字信号进行滤波处理。
滤波器可以根据需要选择合适的滤波器类型和参数,如低通滤波器、高通滤波器、带通滤波器等。
滤波器通过去除或增强特定频率的成分来改变信号的频谱特性。
2.3 快速傅里叶变换为了进行频域分析,DSP通常使用FFT算法将时域信号转换为频域表示。
FFT算法可以高效地计算信号的频谱,得到信号在不同频率上的能量分布。
这对于音频、图像等信号处理应用非常重要。
三、DSP的应用领域3.1 通信系统DSP在通信系统中广泛应用,如调制解调、信号编码、信道均衡等。
它可以提高通信系统的抗干扰性能和传输效率,实现高质量的语音和图像传输。
)(9cos 15.0)(12cos 15.0)(1919n R n n R N n n w ⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-=⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛--=ππ2.3进行语音信号的采集(1)按“开始”-“程序”-“附件”-“娱乐”-“录音机”的顺序操作打开W indo ws系统中的录音机软件。
如图1所示。
图1 wind ows 录音机(2)用麦克风录入自己的声音信号并保存成wav 文件。
如图2所示。
图2 保存文件保存的文件按照要求如下:① 音信号文件保存的文件名为“yuxue jiao .wav ”。
②语音信号的属性为“8.000KHz,8位,单声道 7KB/秒” ,其它选项为默认。
2.4语音信号的分析将“y ux uejia o.wav ”语音文件复制到计算机装有Matlab 软件的磁盘中相应图3语音信号的截取处理图在图3中,其中第一个图为原始语音信号;第二个图是截短后的信号图。
图4频谱分析图其中第二个图是信号的FFT 结果,其横坐标的具体值是X(k)中的序号k;第三个图是确定滤波频率范围的参考图,其横坐标的具体值应当是遵循D FT 定义式和频率分辨率求得的:∑-===10)()]([)(N n k N W n x n x DFT k X π当k 等于0时, 020j kn Njk knNe eW ==⋅-=π,从数字角频率上看,对应的正好是0=ω即直流的位置,也就是说,在取滤波频段时,当将主要能量(即红色框的部分)保留,其余频段部分的信号滤除。
)]([)(n x DFT k X =相当于是信号)(n x 的实际频谱)]([)(n x DFT ej X w =采样,而)(n x 又是连续时间语音信号)(t x 的采样。
)(k X 的每两个相邻取值之间的频率间隔大小对应到语音信号)(n x 的频谱中去,其频率间隔大小正好是采样结果的长度采样速率===∆L f f f s det f ∆称频率分辨率,其中Hz f s 8000=,10000=L ,p2=sum(s2.^2)-sum(s1.^2);SNR1=10*log10(p1/p2);p3=sum(s4.^2)/8000;p4=sum(s3.^2)/8000-sum(s4.^2)/8000;SNR2=10*log10(p3/p4);2.6噪声叠加图5 语音信号与加噪声后语音信号对比图五为语音信号与加噪声后语音信号对。
语音信号处理与特征提取第一章语音信号处理概述语音信号处理是一门研究语音信号与数据处理技术的学科,其主要任务是通过处理语音信号,提取出其中的相关信息,以便进一步应用于语音识别、语音合成等领域。
语音信号处理的研究范畴十分广泛,包括语音录制、数字信号处理、语音特征提取等方面。
语音信号是一种模拟信号,但为了便于计算机进行处理,需要将其转化为数字信号。
通常通过采用一定的采样率,将语音信号转化为数字信号。
在数字信号处理过程中,通常采用数字滤波器、卷积算法、傅里叶变换等技术对语音信号进行处理。
第二章语音信号处理技术2.1 数字滤波器数字滤波器是一种对数字信号进行滤波的工具,其基本原理是将数字信号通过一定的滤波器,去除其中不需要的部分,得到需要的部分。
数字滤波器中常用的滤波器包括有限脉冲响应滤波器、无限脉冲响应滤波器等。
2.2 卷积算法卷积算法是一种重要的数字信号处理技术,其基本原理是将两个信号进行卷积运算,得到一个新的信号。
卷积算法在数字信号处理、图像处理等领域中应用广泛。
2.3 傅里叶变换傅里叶变换是一种对信号进行分析的方法,通过将信号分解为不同频率的正弦波,进行频率分析和滤波处理。
傅里叶变换在语音信号处理中常用于频域分析、滤波和特征提取等方面。
第三章语音特征提取语音特征提取是将语音信号转化为可识别的特征向量的过程,其主要目的是通过提取语音信号中的关键信息,便于进行语音识别等操作。
常用的语音特征提取技术包括短时能量、过零率、自相关函数、线性预测系数等。
3.1 短时能量短时能量是指信号在短时间内的能量值,在语音信号处理中常用于检测语音信号的起止点、语调等方面。
3.2 过零率过零率是指信号经过 x 轴的次数,在语音信号处理中常用于检测语音信号中的语速、音高等方面。
3.3 自相关函数自相关函数是描述信号与其自身延迟后的信号之间的相似程度,在语音信号处理中可用于识别语音信号中的共振峰等特征。
3.4 线性预测系数线性预测系数是一种对语音信号进行分析的方法,通过建立线性模型,预测语音信号采样周期内的取值,并将其用于特征提取等操作。
数字信号处理实验报告设计数字低通IIR和FIR滤波器对语音信号进行滤波处理班级:物联网1104班学号:**********姓名:***指导老师:***一、实验内容1.选择一个.wav格式的语音信号作为分析的对象,对其进行频谱分析。
2.设计FIR和IIR数字滤波器,并对带噪语音信号进行滤波,分析滤波后信号的时域和频域特征。
二、实验目的1.学会使用Matlab来分析音频信号的时域和频域特性。
2.熟悉用双线性变换法设计IIR和FIR数字滤波器的原理与方法。
3.学会设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。
4.掌握IIR\FIR数字滤波器的MATLAB实现方法。
5.通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。
三、实验原理1.IIR滤波器:利用双线性变换设计IIR滤波器(只介绍巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数,然后由通过双线性变换可得所要设计的IIR滤波器的系统函数。
如果给定的指标为数字滤波器的指标,则首先要转换成模拟滤波器的技术指标,这里主要是边界频率的转换,对指标不作变化。
边界频率的转换关系为。
接着,按照模拟低通滤波器的技术指标根据相应设计公式求出滤波器的阶数和截止频率;根据阶数查巴特沃斯归一化低通滤波器参数表,得到归一化传输函数;最后,将代入去归一,得到实际的模拟滤波器传输函数。
之后,通过双线性变换法转换公式,得到所要设计的IIR滤波器的系统函数。
2.FIR滤波器:如果所希望的滤波器的理想频率响应函数为(e )j d H ω,则其对应的单位脉冲响应为⎰-=πππdwe e Hn h jwn jw dd )(21)(窗函数设计法的基本原理是用有限长单位脉冲响应(n)h 逼近(n)d h 。
由于(n)d h 往往是无限长序列,且是非因果的,所以用窗函数(n)w 将(n)d h 截断,并进行加权处理,得到:)()()(n w n h n h d ⋅=(n)h 就作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数(e )j d H ω为∑-=-=10)()(N n jwnjwe n h e H式中,N为所选窗函数(n)w 的长度。
IIR数字滤波器处理实际案例I.概述数字信号处理作为一门重要的学科,其在工程领域中得到了广泛的应用。
数字滤波器作为数字信号处理的重要工具,常常用于对信号进行去噪、滤波等处理。
本文将以IIR数字滤波器处理实际案例为主题,探讨IIR数字滤波器的原理、应用以及实际案例分析。
II.IIR数字滤波器原理1. IIR数字滤波器概述IIR数字滤波器(Infinite Impulse Response)是一种常见的数字滤波器,其基本原理是根据输入信号的当前值和过去的输出值计算当前的输出值。
IIR数字滤波器具有反馈,可以实现很复杂的频率响应。
2. IIR数字滤波器结构IIR数字滤波器通常由系统函数和差分方程两部分组成。
系统函数是用来描述滤波器的频率响应特性,而差分方程则是描述滤波器的输入输出关系。
常见的IIR数字滤波器包括Butterworth、Chebyshev等。
III.IIR数字滤波器应用1. 语音信号处理在语音信号处理中,常常需要对信号进行降噪、滤波等处理。
IIR数字滤波器可以很好地满足这一需求,对语音信号进行有效处理。
2. 生物医学信号处理生物医学信号通常包含多种噪声和干扰,需要进行滤波处理以提取有效信息。
IIR数字滤波器在心电图、脑电图等生物医学信号处理中有着广泛的应用。
IV.IIR数字滤波器实际案例分析以一种生物医学信号处理为例,对IIR数字滤波器进行实际案例分析。
1.问题描述假设有一组心电图信号,该信号包含多种噪声和干扰,需要对其进行滤波处理,以提取有效的心电信号。
2.解决方案针对该问题,可以采用Butterworth低通滤波器进行处理。
利用Matlab等工具,设计并实现Butterworth低通滤波器,对心电图信号进行滤波处理。
3.实验结果经过Butterworth低通滤波器处理后,心电图信号的噪声和干扰得到了有效抑制,同时保留了有效的心电信号,达到了预期的滤波效果。
V.总结IIR数字滤波器作为数字信号处理领域中的重要工具,具有着广泛的应用前景。
数据的滤波处理1. 什么是数据滤波处理数据滤波处理是指对采集到的原始数据进行处理,去除噪声、平滑数据、提取有效信息等操作,以得到更加准确、可靠的数据。
在实际应用中,数据滤波处理广泛应用于信号处理、图像处理、语音处理等领域。
2. 数据滤波处理的意义数据滤波处理的主要目的是提高数据的质量和可用性,去除噪声和干扰,使得数据更加准确、可靠。
数据滤波处理可以帮助我们提取信号中的有效信息,去除无用的干扰,从而更好地理解和分析数据。
在很多实际应用中,原始数据往往包含噪声和干扰,这些干扰会影响对数据的分析和处理。
通过合适的滤波处理,可以去除这些干扰,使得数据更加清晰、准确。
数据滤波处理还可以平滑数据,降低数据的噪声,提高数据的信噪比,使得数据更易于处理和分析。
3. 常用的数据滤波方法3.1 均值滤波均值滤波是一种简单的滤波方法,它通过计算数据的平均值来平滑数据。
均值滤波可以有效地去除随机噪声,但对于非随机噪声和脉冲噪声的去除效果较差。
均值滤波的计算公式如下:y(n)=1N∑xN−1k=0(n−k)其中,y(n)是滤波后的数据点,x(n)是原始数据点,N是滤波窗口的大小。
3.2 中值滤波中值滤波是一种非线性滤波方法,它通过计算数据的中值来平滑数据。
中值滤波对于去除非随机噪声和脉冲噪声效果较好,但对于随机噪声的去除效果较差。
中值滤波的计算公式如下:y(n)=median(x(n−k),x(n−k+1),...,x(n+k))其中,y(n)是滤波后的数据点,x(n)是原始数据点,k是滤波窗口的半径。
3.3 低通滤波低通滤波是一种常用的滤波方法,它可以去除高频噪声,保留低频信号。
低通滤波可以用于平滑数据、去除高频噪声、提取低频信号等应用场景。
常见的低通滤波器包括移动平均滤波器、巴特沃斯滤波器、无限脉冲响应(IIR)滤波器等。
3.4 高通滤波高通滤波是一种常用的滤波方法,它可以去除低频信号,保留高频信号。
高通滤波可以用于去除低频噪声、提取高频信号等应用场景。
数字信号处理技术在音频处理中的应用随着数字化的普及,人们对音频处理的需求也越来越高。
在这种背景下,数字信号处理技术的应用日趋广泛。
数字信号处理技术是利用计算机对数字信号进行处理的一种技术。
它可以对各种形式的数字信号进行采样、数字化、压缩、编码、滤波、分析、处理等操作,从而实现对音频信号的处理和改变。
本文将从以下几个方面详细探讨数字信号处理技术在音频处理中的应用。
一、数字信号处理在音频采样中的应用音频采样是指将声音信号转化为数字信号的过程。
数字信号处理技术可以对采样的音频信号进行精密处理,从而满足不同领域的需求。
比如,在工业领域,数字信号处理技术可以对工厂中的各种声音进行采集,从而实现对机器设备的状态监测。
而在娱乐领域,则可以利用数字信号处理技术对音乐进行数字化处理,实现对音频的高品质处理。
二、数字信号处理在音频滤波中的应用音频滤波是指将原始信号中的某些频率成分滤除或加强的过程。
数字信号处理技术可以对音频进行数字化滤波处理。
利用数字滤波器的滤波算法,可以通过对频域的分析和处理,实现滤波效果的优化。
比如,在语音识别领域,数字信号处理技术可以对语音信号进行数字化滤波,从而提升识别率。
三、数字信号处理在音频编解码技术中的应用音频编解码技术可以将音频信号进行数字化压缩或解压缩。
数字信号处理技术通过对音频信号进行数据压缩,可以实现对音频数据传输的效率和容量的提升。
比如,在传输音频数据时,数字信号处理技术可以利用压缩算法对数据进行压缩,从而节省传输带宽和存储空间。
四、数字信号处理在音频特效中的应用音频特效是指对音频信号进行特殊处理,使其产生不同的音效。
数字信号处理技术可以实现各种音效的数字化处理。
通过对音频进行数字信号处理,可以实现音效的精细调节和处理,从而达到更好的音效效果。
比如,在音乐制作领域,数字信号处理技术可以对音乐进行数字化处理,实现包括增益、音调、失真、滤波等各种音效效果。
综上所述,数字信号处理技术的应用范围非常广泛,在音频处理中有着不可替代的重要作用。
数据滤波算法一、引言数据滤波是信号处理中的一个重要步骤,通过滤波算法可以去除信号中的噪声和干扰,使得信号更加清晰、准确。
在工业控制、医学诊断、图像处理等领域都有广泛应用。
本文将介绍常见的数据滤波算法及其原理。
二、低通滤波算法1. 概述低通滤波器是一种能够通过去除高频成分来平滑信号的滤波器。
在信号处理中,低通滤波器被广泛应用于去除噪声和平滑信号。
2. 原理低通滤波器可以看做是一个带通滤波器加上一个带阻滤波器的组合。
它通过截止频率将高频成分去除,使得信号变得平缓。
3. 常见算法(1)移动平均法:将连续n个数据求平均值作为当前数据的值,其中n为窗口大小。
(2)指数平均法:根据当前数据和前一次计算结果进行加权平均计算,权重由α决定。
4. 应用场景低通滤波器适用于需要保留较慢变化的信号,例如温度、压力等传感器信号。
三、高通滤波算法1. 概述高通滤波器是一种能够通过去除低频成分来突出高频成分的滤波器。
在信号处理中,高通滤波器被广泛应用于去除直流分量和平滑信号。
2. 原理高通滤波器可以看做是一个带阻滤波器加上一个带通滤波器的组合。
它通过截止频率将低频成分去除,使得信号变得尖锐。
3. 常见算法(1)一阶差分法:将当前数据与前一次数据进行差分计算。
(2)二阶差分法:将当前数据与前两次数据进行差分计算。
4. 应用场景高通滤波器适用于需要突出较快变化的信号,例如震动、声音等传感器信号。
四、带通/带阻滤波算法1. 概述带通/带阻滤波器是一种能够选择性地通过或者拒绝某些频率范围内的信号的滤波器。
在信号处理中,带通/带阻滤波器被广泛应用于去除特定频率范围内的噪声和干扰。
2. 原理带通/带阻滤波器可以看做是一个低通滤波器和高通滤波器的组合。
它通过选择特定的截止频率来选择性地通过或者拒绝某些频率范围内的信号。
3. 常见算法(1)巴特沃斯滤波法:采用极点归一化方法来设计数字滤波器,可实现带通、带阻、低通、高通等多种滤波器类型。
(2)切比雪夫滤波法:采用等纹图方法来设计数字滤波器,可实现带通、带阻、低通、高通等多种滤波器类型。
基于matlab的语音信号滤波处理论文一、论文题目基于matlab的语音信号滤波处理二、论文摘要语音信号是一种重要的人机交互方式,但常常受到环境噪声、话筒质量等因素的影响,导致信号质量不佳。
本论文针对该问题展开研究,通过matlab实现多种滤波算法对语音信号进行处理。
首先,基于短时傅里叶变换(STFT)将语音信号分解为时频图像,采用最小均方(LMS)算法实现自适应滤波,进一步排除环境噪声。
其次,采用语音增强方法,对于语音信号中存在的低频噪声进行滤除。
最后,结合加权平均滤波器、中值滤波器等,对语音信号进行综合性过滤处理。
实验结果表明,所提出的滤波方法可以有效地提高语音信号的质量,提升人机交互的体验效果。
三、论文关键词语音信号、滤波、matlab、自适应滤波、语音增强四、论文正文1. 绪论语音信号是一种重要的人机交互方式,而语音识别、语音合成、语音码率压缩等技术的发展也在不断推动着语音信号的应用。
但常常受到环境噪声、话筒质量等因素的影响,导致信号质量不佳,从而严重影响了人机交互的体验。
因此,对于语音信号的滤波处理具有重要的研究意义和应用价值。
本论文旨在对于matlab的语音信号滤波处理进行研究,通过对于多种滤波算法的探讨,以提高语音信号的质量,提升人机交互的体验效果。
具体算法包括自适应滤波、语音增强、中值滤波器等。
2. 基于STFT的自适应滤波自适应滤波是一种基于最小均方误差的滤波算法,在语音信号处理中,常用于消除环境噪声。
其基本思路是将输入信号分解为噪声信号和语音信号两个部分,构建自适应滤波器,通过不断调整滤波器的系数,使得滤波器的输出与语音信号接近。
自适应滤波常用的方法包括LMS算法、RLS算法等。
在本论文中,我们采用了LMS算法实现自适应滤波,基本步骤如下:1)对于输入语音信号,先进行时域分帧,然后通过FFT变换获得每帧的频域信息,得到时频图像。
2)将时频图像与期望信号(即语音信号)相比较,得到残差信号,该残差信号主要包含噪声部分。
语音信号处理的基本步骤语音信号处理的基本步骤包括以下五步:1.预处理:这一步主要包括滤波、放大和增益控制、反混叠滤波等,目的是消除工频信号的干扰,提升高频部分,并进行适当的放大和增益控制。
2.数字化:将模拟信号转换为数字信号,便于计算机处理。
3.特征提取:对数字化的信号进行分析,提取出反映语音信息的特征参数。
4.语音识别或语音编码:根据不同的处理目的,选择相应的处理方法。
语音识别主要分为识别和训练阶段;语音编码则是将语音进行压缩编码和解压。
5.信息提取和使用:这是由听者或机器自动完成的一步,从处理后的信号中提取出有用的信息。
这些步骤的正确性和重要性各不相同,需要根据实际应用的需求来选择合适的步骤和算法。
在实际应用中,还需要注意以下几个方面:1.实时性:语音信号处理需要在有限的时间内完成,以满足实时通信和语音识别的需求。
因此,需要选择高效的算法和实现优化的软件。
2.稳定性:语音信号处理的结果需要具有稳定性,即对于相同的输入,处理结果应该相同。
这需要选择稳定的算法和参数,并注意避免随机噪声和其他干扰的影响。
3.泛化性:对于语音识别等任务,处理后的结果需要具有一定的泛化性,即对于不同的说话人和不同的语音环境,处理结果应该具有较好的一致性和准确性。
这需要选择泛化性较强的算法和模型,并注意收集和处理大量的语音数据。
4.鲁棒性:语音信号处理系统需要具有一定的鲁棒性,即对于不同的语音信号和不同的环境噪声,系统应该能够适应并保持良好的性能。
这需要选择鲁棒性较强的算法和模型,并注意进行充分的测试和评估。
总之,语音信号处理的基本步骤需要根据实际应用的需求来选择合适的步骤和算法,同时需要注意实时性、稳定性、泛化性和鲁棒性等方面的问题。
第29卷 第5期2007年10月电气电子教学学报J OURNAL OF EEEVol.29 No.5Oct.2007语音信号预滤波的几种仿真实现方法李凤莲,张雪英,张小玫(太原理工大学信息工程学院,山西太原030024)收稿日期22;修回日期2625 基金项目山西省晋教育[5]号太原理工大学5年高等教育教学改革省级项目作者简介李凤莲(2),女,山西芮城人,讲师,博士生,主要从事语音编码方面的研究工作。
张雪英(62),女,河北行唐人,博士,教授,博士生导师,主要从事语音信号处理及多媒体信息处理方面的研究工作。
摘 要:滤波器设计是数字信号处理的主要内容,用滤波器对语音信号进行预滤波是比较经典的一种方法。
文章详细介绍了用滤波法对语音信号进行预滤波的几种典型的仿真实现方法,主要包括在Matl ab 环境中语音信号预滤波的仿真实现,在Syst em View 中语音信号预滤波的设计实现,以及在CCS 集成开发环境下,用C54x S i mulato r 模拟在TM S 320VC54x DSP 上进行的语音信号预滤波的实现等。
关键词:滤波器设计;语音信号预滤波;Mat lab ;Sy s t emView ;TMS320VC54x DSP 中图分类号:TN912.3 文献标识码:A 文章编号:100820686(2007)0520038204Several Simulat ion Met hods of Speech Signal Pre 2f ilter ingL I Feng 2l ian ,ZHANG X ue 2ying,Z H ANG X ia o 2mei(The coll ege of In f ormati on Engi neeri ng ,Tai yuan Univers it y of Technolo gy ,Tai y uan 030024,Chi na )Abstract :Fil te r design i s an i mporta nt part of digit al si gnal process.It is a cla ssical met hod to suppress speech signal noise by fil t eri ng.This paper int roduces several t ypical sim ulation met hods t o suppress speech si gnal noise by filt ering in det ail.The fir st met hod to design t he speech si gnal noi se suppressi ng system i s by Mat lab.The second met hod of designi ng t he noi se suppressi ng syst em i s by Syst emView.The last met hod but not li st i s operat ed i n CCS (Code Composer St udio)int egrat ive exploi ti ng condi tion.C54x Si mulator is used t o realize signal noi se suppressi ng syst em based on TMS320VC54x DSP.K eyw or ds :filt er design ;speech si gnal p re 2filt eri ng ;MA TLAB ;Syst emView ;TMS320VC54x DSP0 引言“数字信号处理”作为一门独立的学科体系,几乎遍及所有的技术领域,目前已被多数工科院校设为专业基础课。
课题一数字信号处理系统设计一、项目要求用本课程所学的数字信号处理理论知识,设计一个具有信号的采集、处理、传输、显示和存储等功能的系统,内容如下:1、录制一段语音信号,并对录制的语音信号进行采样(采样频率可取fs=22050Hz);2、画出采样后的语音信号的时域波形和频谱图;3、滤波器的性能指标:低通滤波器:通带边界频率fp=1kHz,通带最大衰减Ap=1dB;阻带边界频率fp=1.2kHz,阻带最小衰减Ap=100dB;高通滤波器:通带边界频率fp=5kHz,通带最大衰减Ap=1dB;阻带边界频率fp=4.8kHz,阻带最小衰减Ap=100dB;带通滤波器:通带上限截止频率fp2=3kHz, 通带下限截止频率fp1=1.2kHz;阻带上限截止频率fs2=3.2kHz, 通带下限截止频率fp1=1kHz;通带最大衰减Ap=1dB, 阻带最小衰减As=100dB;采用双线性变换法设计滤波器,并画出滤波器的频率响应;4、用自己设计的滤波器对采样的信号进行滤波,画出滤波后信号的时域波形和频谱图,并对滤波前后的信号进行对比,分析信号的变化;5、回放语音6、用GUI设计一个信号系统的用户界面。
二、实验所要用到的MATLAB函数1、语音信号的采样与播放wavread();[y,fs,bite]=wavread();%语音信号的采样sound(y,fs,bite);%播放语音2.滤波器:IIR:butte();%巴特沃思滤波器cheby1(); %切比雪夫I滤波器elliptical();%椭圆滤波器3.频率响应:[h,f]=freqz(b,a,n,fs)freqz(b,a,n,fs)5.快速傅里叶变换fft (x, n)6.画曲线plot(x, y)stem(x, y)7.在MATLAB中,设计辅助低通原型巴特沃思和切比雪夫滤波器的阶数和截止频率;1)利用buttord和cheblord确定阶数;2)[num,den]=butter(N,Wn),[num,den]=cheby1(N,Wn)3)lp2hp,lp2bp,lp2bs可以完成低通滤波器到高通,带通,带阻的转换4)使用biliner对模拟滤波器进行双线性变换,求得数字滤波器的传输函数系数三、数字滤波器(代码)1.IIR低通滤波器fp=1000;ft=5500;fs=1200;wp=2*pi*fp/ft;ws=2*pi*fs/ft;Fp=2*ft*tan(wp/2);Fs=2*ft*tan(ws/2);[n,Omgc]=buttord(Fp,Fs,1,100,'s');[z,p,k]=buttap(n);B=k*real(poly(z));A=real(poly(p));[b1,a1]=lp2lp(B,A,Omgc);[ba1,aa1]=bilinear(b1,a1,ft); %模拟转数字[Ha,w]=freqz(ba1,aa1); %求频率相应plot(w*ft/(2*pi),20*log10(abs(Ha)));title('IIR 低通滤波器');xlabel('频率/HZ');ylabel('幅值');2.IIR高通滤波器fp=5000;ft=25000;%取抽样频率•fs=4800;Rp=1;As=100;wp=2*pi*fp/ft;%通带频率ws=2*pi*fs/ft;%截止频率Fp=2*ft*tan(wp/2);Fs=2*ft*tan(ws/2);[n,Omgc]=ellipord(Fp,Fs,Rp,As,'s'); %计算阶数n和截止频率[z,p,k]=ellipap(n,Rp,As);B3=k*real(poly(z));A3=real(poly(p));[b3,a3]=lp2hp(B3,A3,Omgc);[ba3,aa3]=bilinear(b3,a3,ft);[Ha,w]=freqz(ba3,aa3);plot(w*ft/(2*pi),20*log10(abs(Ha)));title('IIR高通滤波器');xlabel('频率/HZ');ylabel('幅值');3.IIR带通滤波器fp1=1200;fp2=3000;fs1=1000;fs2=3200;ft=10000; As=100;Rp=1;wp1=2*pi*fp1/ft;wp2=2*pi*fp2/ft;ws1=2*pi*fs1/ft;ws2=2*pi*fs2/ft;Fp1=2*ft*tan(wp1/2);Fp2=2*ft*tan(wp2/2);Fp=[Fp1,Fp2];Fs1=2*ft*tan(ws1/2);Fs2=2*ft*tan(ws2/2);Fs=[Fs1,Fs2];bw=Fp2-Fp1;w0=sqrt(Fp1*Fp2);%通带宽和中心频率[n,Omgn]=cheb1ord(Fp,Fs,Rp,As,'s');[z,p,k]=cheb1ap(n,Rp);B2=k*real(poly(z));A2=real(poly(p));[b2,a2]=lp2bp(B2,A2,w0,bw);[ba2,aa2]=bilinear(b2,a2,ft);[Ha,w]=freqz(ba2,aa2);plot(w*ft/(2*pi),20*log10(abs(Ha)));title('IIR 带通滤波器'); xlabel('频率/HZ'); ylabel('幅值');四、总代码function varargout = bzh(varargin)% BZH M-file for bzh.fig% BZH, by itself, creates a new BZH or raises the existing% singleton*.%% H = BZH returns the handle to a new BZH or the handle to% the existing singleton*.%% BZH('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in BZH.M with the given input arguments.%% BZH('Property','Value',...) creates a new BZH or raises the % existing singleton*. Starting from the left, property value pairs are% applied to the GUI before ko_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application% stop. All inputs are passed to bzh_OpeningFcn via varargin. %% *See GUI Options on GUIDE's Tools menu. Choose "GUI allowsonly one% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Copyright 2002-2003 The MathWorks, Inc.% Edit the above text to modify the response to help bzh% Last Modified by GUIDE v2.5 09-Jan-2014 08:54:22% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @bzh_OpeningFcn, ...'gui_OutputFcn', @bzh_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before bzh is made visible.function bzh_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% varargin command line arguments to bzh (see VARARGIN)% Choose default command line output for bzhhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes bzh wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line. function varargout = bzh_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} = handles.output;% --- Executes on button press in tag_start.function tag_start_Callback(hObject, eventdata, handles)% hObject handle to tag_start (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes1)cla;global z0;global yy;fs=22050;nbits=32;[yy,fs,nbits]=wavread('D:\f.wav'); %语音信号加载sound(yy,fs); %回放语音z0=yy;axes(handles.axes1);plot(yy);title('时域采样信号波形');grid onn=length(yy); %求出语音信号的长度Y=fft(yy,n); %傅里叶变换axes(handles.axes2);plot(20*log10(abs(Y)));title('时域采样信号频谱');guidata(hObject,handles);grid on% --- Executes on button press in tag_ditong.function tag_ditong_Callback(hObject, eventdata, handles)% hObject handle to tag_ditong (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes1)cla;global z1;global yy;global ba1;global aa1;global Fp;global Fs;fp=1000;ft=5500;fs=1200;wp=2*pi*fp/ft;ws=2*pi*fs/ft;Fp=2*ft*tan(wp/2);Fs=2*ft*tan(ws/2);[n,Omgc]=buttord(Fp,Fs,1,100,'s');[z,p,k]=buttap(n);B=k*real(poly(z));A=real(poly(p));[b1,a1]=lp2lp(B,A,Omgc);[ba1,aa1]=bilinear(b1,a1,ft); %模拟转数字z1=filter(ba1,aa1,yy);[Ha,w]=freqz(ba1,aa1); %求频率相应plot(w*ft/(2*pi),20*log10(abs(Ha)));title('IIR 低通滤波器');xlabel('频率/HZ');ylabel('幅值');% --- Executes on button press in tag_gaotong.function tag_gaotong_Callback(hObject, eventdata, handles)% hObject handle to tag_gaotong (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes2)cla;global yy;global z2;global B3;global ba3;global aa3;global Fp;global Fs;fp=5000;ft=25000;%取抽样频率•fs=4800;Rp=1;As=100;wp=2*pi*fp/ft;%通带频率ws=2*pi*fs/ft;%截止频率Fp=2*ft*tan(wp/2);Fs=2*ft*tan(ws/2);[n,Omgc]=ellipord(Fp,Fs,Rp,As,'s'); %计算阶数n和截止频率[z,p,k]=ellipap(n,Rp,As);B3=k*real(poly(z));A3=real(poly(p));[b3,a3]=lp2hp(B3,A3,Omgc);[ba3,aa3]=bilinear(b3,a3,ft);z2=filter(ba3,aa3,yy);[Ha,w]=freqz(ba3,aa3);plot(w*ft/(2*pi),20*log10(abs(Ha)));title('IIR高通滤波器');xlabel('频率/HZ');ylabel('幅值');% --- Executes on button press in tag_daitong.function tag_daitong_Callback(hObject, eventdata, handles)% hObject handle to tag_daitong (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes3)cla;global yy;global z3;global B2;global ba2;global aa2;fp1=1200;fp2=3000;fs1=1000;fs2=3200;ft=10000;As=100;Rp=1;wp1=2*pi*fp1/ft;wp2=2*pi*fp2/ft;ws1=2*pi*fs1/ft;ws2=2*pi*fs2/ft;Fp1=2*ft*tan(wp1/2);Fp2=2*ft*tan(wp2/2);Fp=[Fp1,Fp2];Fs1=2*ft*tan(ws1/2);Fs2=2*ft*tan(ws2/2);Fs=[Fs1,Fs2];bw=Fp2-Fp1;w0=sqrt(Fp1*Fp2);%通带宽和中心频率[n,Omgn]=cheb1ord(Fp,Fs,Rp,As,'s');[z,p,k]=cheb1ap(n,Rp);B2=k*real(poly(z));A2=real(poly(p));[b2,a2]=lp2bp(B2,A2,w0,bw);[ba2,aa2]=bilinear(b2,a2,ft);z3=filter(ba2,aa2,yy);[Ha,w]=freqz(ba2,aa2);plot(w*ft/(2*pi),20*log10(abs(Ha)));title('IIR 带通滤波器');xlabel('频率/HZ');ylabel('幅值');% --- Executes on button press in tag_dibo.function tag_dibo_Callback(hObject, eventdata, handles)% hObject handle to tag_dibo (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes3)cla;global yy;global z1;global ba1;global aa1;m4=fft(z1);plot(z1,'y');title('IIR滤波后的信号波形');xlabel('时间/t');ylabel('幅值');axes(handles.axes4)cla;plot(abs(m4),'y');title('IIR滤波后信号频谱');xlabel('频率/HZ');ylabel('幅值');% --- Executes on button press in tag_gaobo.function tag_gaobo_Callback(hObject, eventdata, handles)% hObject handle to tag_gaobo (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes3)cla;global yy;global z2;global B3;global ba3;global aa3;m5=fft(z2);plot(z2,'y');title('IIR滤波后的信号波形');xlabel('时间/t');ylabel('幅值');axes(handles.axes4)cla;plot(abs(m5),'y');title('IIR滤波后信号频谱');xlabel('频率/HZ');ylabel('幅值');% --- Executes on button press in tag_daibo.function tag_daibo_Callback(hObject, eventdata, handles)% hObject handle to tag_daibo (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes3)cla;global yy;global z3;global B2;global ba2;global aa2;m6=fft(z3);plot(z3,'y');title('IIR滤波后的信号波形');xlabel('时间/t');ylabel('幅值');axes(handles.axes4)cla;plot(abs(m6),'y');title('IIR滤波后信号频谱');xlabel('频率/HZ');ylabel('幅值');% --- Executes on selection change in tag_choose.function tag_choose_Callback(hObject, eventdata, handles)% hObject handle to tag_choose (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% Hints: contents = get(hObject,'String') returns tag_choose contents as cell array% contents{get(hObject,'Value')} returns selected item from tag_choose% --- Executes during object creation, after setting all properties. function tag_choose_CreateFcn(hObject, eventdata, handles)% hObject handle to tag_choose (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called% Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER.if ispcset(hObject,'BackgroundColor','white');elseset(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundCo lor'));end% --- Executes on button press in tag_return.function tag_return_Callback(hObject, eventdata, handles)% hObject handle to tag_return (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global z0;global z1;global z2;global z3;global yy;val=get(handles.tag_choose,'Value');if(val==1)[yy,fs,nbits]=wavread('D:\f.wav'); %语音信号加载sound(yy,fs); %回放语音endif(val==2)sound(z1,22050);endif(val==3)sound(z3,22050);endif(val==4)sound(z2,22050);end% --- Executes on mouse press over axes background.function axes1_ButtonDownFcn(hObject, eventdata, handles)% hObject handle to axes1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% --- If Enable == 'on', executes on mouse press in 5 pixel border. % --- Otherwise, executes on mouse press in 5 pixel border or over tag_start.function tag_start_ButtonDownFcn(hObject, eventdata, handles)% hObject handle to tag_start (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)采样后信号滤波器数字波形IIR低通滤波后波形图IIR高通滤波后波形图IIR带通滤波后波形图。
第1篇一、实验目的1. 深入理解信号处理的基本原理和方法。
2. 掌握信号处理在各个领域的应用,如语音信号处理、图像处理等。
3. 熟悉实验设备的使用,提高实际操作能力。
4. 培养团队协作和问题解决能力。
二、实验内容本次实验主要分为以下几个部分:1. 语音信号处理(1)采集语音信号:使用麦克风采集一段语音信号,并将其转换为数字信号。
(2)频谱分析:对采集到的语音信号进行频谱分析,观察其频谱特性。
(3)噪声消除:设计并实现噪声消除算法,对含噪语音信号进行处理,提高信号质量。
(4)语音增强:设计并实现语音增强算法,提高语音信号的清晰度。
2. 图像处理(1)图像采集:使用摄像头采集一幅图像,并将其转换为数字图像。
(2)图像增强:对采集到的图像进行增强处理,如对比度增强、亮度增强等。
(3)图像滤波:设计并实现图像滤波算法,去除图像中的噪声。
(4)图像分割:设计并实现图像分割算法,将图像中的不同区域分离出来。
3. 信号处理算法实现(1)傅里叶变换:实现离散傅里叶变换(DFT)和快速傅里叶变换(FFT)算法,对信号进行频谱分析。
(2)小波变换:实现离散小波变换(DWT)算法,对信号进行时频分析。
(3)滤波器设计:设计并实现低通滤波器、高通滤波器、带通滤波器等,对信号进行滤波处理。
三、实验原理1. 语音信号处理(1)语音信号采集:通过麦克风将声音信号转换为电信号,再通过模数转换器(ADC)转换为数字信号。
(2)频谱分析:利用傅里叶变换将时域信号转换为频域信号,分析信号的频谱特性。
(3)噪声消除:采用噪声消除算法,如维纳滤波、谱减法等,去除信号中的噪声。
(4)语音增强:利用语音增强算法,如谱峰增强、长时能量增强等,提高语音信号的清晰度。
2. 图像处理(1)图像采集:通过摄像头将光信号转换为电信号,再通过模数转换器(ADC)转换为数字图像。
(2)图像增强:通过调整图像的亮度、对比度等参数,提高图像的可视效果。
(3)图像滤波:利用滤波器去除图像中的噪声,如均值滤波、中值滤波、高斯滤波等。
数字信号处理综合实验报告综合实验名称:应用Matlab对语音信号进行频谱分析及滤波系:学生姓名:班级:通信学号:11成绩:指导教师:开课时间:2011-2012学年上学期一.综合实验题目应用MatLab对语音信号进行频谱分析及滤波二.主要内容录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;课程设计应完成的工作:1、语音信号的采集;2、语音信号的频谱分析;3、数字滤波器的设计;4、对语音信号进行滤波处理;5、对滤波前后的语音信号频谱进行对比分析;三.具体要求1、学生能够根据设计内容积极主动查找相关资料;2、滤波器的性能指标可以根据实际情况作调整;3、对设计结果进行独立思考和分析;4、设计完成后,要提交相关的文档;1)课程设计报告书(纸质和电子版各一份,具体格式参照学校课程设计管理规定),报告内容要涵盖设计题目、设计任务、详细的设计过程、原理说明、、频谱图的分析、调试总结、心得体会、参考文献(在报告中参考文献要做标注,不少于5篇)。
2)可运行的源程序代码(电子版)在基本要求的基础上,学生可以根据个人对该课程设计的理解,添加一些新的内容;四.进度安排五.成绩评定(1)平时成绩:无故旷课一次,平时成绩减半;无故旷课两次平时成绩为0分,无故旷课三次总成绩为0分。
迟到15分钟按旷课处理(2)设计成绩:按照实际的设计过程及最终的实现结果给出相应的成绩。
(3)设计报告成绩:按照提交报告的质量给出相应的成绩。
课程设计成绩=平时成绩(30%)+设计成绩(30%)+设计报告成绩(40%)应用MatLab对语音信号进行频谱分析及滤波第一章实验任务录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号。
语音信号滤波去噪——基于三角窗的FIR滤波器学生姓名:指导老师:摘要课程设计主要内容是设计利用窗口设计法选择三角窗设计一个FIR滤波器,对一段含噪语音信号进行滤波去噪处理并根据滤波前后的波形和频谱分析滤波性能。
本课程设计仿真平台为MATLAB7.0,开发工具是M语言编程。
首先利用系统自带的录音机工具录制一段语音信号,并人为加入一单频噪声,然后对信号进行频谱分析以确定所加噪声频率,并设计滤波器进行滤波去噪处理,最后比较滤波前后的波形和频谱并进行分析。
由分析结果可知,滤波器后的语音信号与原始信号基本一致,即设计的FIR滤波器能够去除信号中所加单频噪声,达到了设计目的。
关键词滤波去噪;FIR滤波器;三角窗;MATLAB1 引言本课程设计主要解决在含噪情况下对语音信号的滤波去噪处理,处理时采用的是利用窗口设计法选择三角窗设计的FIR滤波器。
1.1 课程设计目的设计一个FIR滤波器,可以有多种方法,窗函数法是设计FIR数字滤波器的最简单的方法。
它在设计FIR数字滤波器中有很重要的作用,正确地选择窗函数可以提高设计数字滤波器的性能,或者在满足设计要求的情况下,减小FIR数字滤波器的阶次。
常用的窗函数有以下几种:矩形窗(Rectangular window)、三角窗(Triangular window)、汉宁窗(Hanning window)、汉明窗(Hamming window)、布拉克曼窗(Blackman window)等等。
在本次课程设计的目的是通过用麦克风采集一段语音信号,绘制波形并观察其频谱特点,加入一个带外单频噪声,用三角窗设计一个满足指标的FIR滤波器,对该含噪语音信号进行滤波去噪处理,从而达到对双音频信号滤波去噪的效果。
比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。
与不同信源相同滤波方法的同学比较各种信源的特点,与相同信源不同滤波方法的同学比较各种滤波方法性能的优劣。
长 沙 理 工 大 学
课程设计(论文)任务书
课程: 数 字 信 号 处 理
题目: 语音信号的数字滤波处理(三)
——巴特沃斯(Blackman窗)滤波器
电气与信息工程 系 电子信息工程 专业 班
任务起止日期: 2014 年 6 月 23 日至 2014 年 6 月 27 日
学 生 姓 名 学号______________
指 导 教 师 席燕辉 黄亚飞
教 研室主任 年 月 日审查
院长(系主任) __ 年 月 日批准
课题内容及要求:
一 设计内容
第一部分:预习题
(1)设计卷积运算的演示程序
:
① 可输入任意两个序列x1(n)、x2(n),指定x1(n)为自己的学号,例如x1(n)={2,0,0,7,8,4,2,5,0,1,2,3}。
x2(n)的内容和长度自选。例如x2(n)={ 1, 2.43, 6.17,12.93,22.17,32.25,40.88, 45.87, 45.87, 40.88,
32.25, 22.17, 12.93, 6.17, 2.43,1.0000}。
② 分别动态演示两个序列进行线性卷积x1(n)﹡x2(n)和圆周卷积x1(n)⊙x2 (n)的过程;要求分别动态演
示翻转、移位、乘积、求和的过程;
③ 圆周卷积默认使用两个序列中的最大长度,但卷积前可以指定卷积长度N用以进行混叠分析;
④ 改变圆周卷积长度N,根据实验结果分析2类卷积的关系。
⑤ 在计算机操作系统下选一段声音文件(XP系统在“C:\WINDOWS\Media”),读取文件取10ms的声
音数据产生时域序列x1(n),序列内容自定义。利用x2(n)= {1, 2.43, 6.17,12.93,22.17,32.25,40.88,
45.87, 45.87, 40.88, 32.25, 22.17, 12.93, 6.17, 2.43,1}。利用FFT实现快速卷积,验证时域卷积定理,
并与直接卷积进行效率对比(验证时采用matlab子函数)。
(2)编写程序演示采样定理(时域采样、频谱周期延拓),同时演示采样频率
小于2fc时,产生的混叠效应:
① 对下面连续信号进行采样:
学号,nnanAtutAetxata,2),()sin()(
00
,A为幅度因子,a为衰减
因子,0为模拟角频率,其中n为学号(例如,王墨同学n=23)
② 要求输入采样频率fs(根据程序处理需要指定范围)后,在时域演示信号波形、采样脉冲及采样后信
号;在频域演示不同采样频率下对应信号的频谱。
第二部分:设计题
(3)数字滤波器设计及其应用
① 利用Windows下的录音机或其他软件,进行语音信号的采集(*.wav);
② 语音信号的频谱分析,画出采样后语音信号的时域波形和频谱图;
③ 产生噪声信号并加到语音信号中,得到被污染的语音信号,并回放语音信号;
④ 污染信号的频谱分析,画出被污染的语音信号时域波形和频谱;
⑤ 根据有关的频谱特性,采用间接法设计IIR数字滤波器,并画出相应滤波器的幅频、
相频图(设计3个IIR滤波器)
a. 模拟滤波器类型:巴特沃思滤波器(低通、带通、高通)
b.总体要求:Matlab原程序+仿真波形+技术指标
⑥ 根据有关的频谱特性,采用直接法设计FIR数字滤波器,并画出相应滤波器的幅频、
相频图(设计3个FIR滤波器)
a. 滤波器类型:Blackman窗(低通、带通、高通)
b.总体要求:Matlab原程序+仿真波形+技术指标+窗函数
⑦ 用自己设计的这些滤波器分别对被不同噪声污染的信号进行滤波;
⑧ 分析得到信号的频谱,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行
对比,分析信号的变化;
⑨ 回放语音信号。
二、设计提示
1.语音信号的采集
要求利用windows下的录音机(开始—程序—附件—娱乐—录音机,文件—属性—立
即转换—8000Hz,8位,单声道)录制一段自己的话音,或者采用Windows自带的声音文
件(默认为22050Hz),时间控制在几秒左右。然后在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中。
2.语音信号的频谱分析
要求首先画出语音信号的时域波形;然后对语音信号进行频谱分析,在MATLAB中,
可以利用函数fft对信号进行快速付立叶变换,得到信号的频谱特性;从而加深对频谱特性
的理解。
3.设计数字滤波器和画出频率响应
根据语音信号的特点给出有关滤波器的性能指标,例如:1)低通滤波器性能指标,
fp=1000Hz,fc=1200 Hz, As=100dB,Ap=1dB;2)高通滤波器性能指标,fc=2800 Hz,fp=3000
Hz,As=100dB,Ap=1dB;3)带通滤波器性能指标,fp1=1200 Hz,fp2=3000 Hz,fc1=1000
Hz,fc2=3200 Hz,As=100dB,Ap=1dB。
4.回放语音信号
在Matlab中,函数sound可以对声音进行回放。其调用格式:sound(x,fs,bits);可以感
觉滤波前后的声音有变化。
三、设计思考
1.双线性变换法中Ω和ω之间的关系是非线性的,在设计中你注意到这种非线性关
系了吗?从哪几种数字滤波器的幅频特性曲线中可以观察到这种非线性关系?
2.能否利用公式完成脉冲响应不变法的数字滤波器设计?为什么?
四、设计要求:
1. 掌握数字信号处理的基本概念,基本理论和基本方法。
2. 熟悉离散信号和系统的时域特性。
3. 掌握序列快速傅里叶变换方法。
4. 学会MATLAB的使用,掌握MATLAB的程序设计方法。
5. 掌握利用MATLAB对语音信号进行频谱分析。
6. 掌握滤波器的网络结构。
7.掌握MATLAB设计IIR、FIR数字滤波器的方法和对信号进行滤波的方法。
三、
考核方式
课程考核分三部分,一部分是上机率,占20%;第二部分是检查成绩,最后两次上机
为检查时间,占50%;第三部分为课程设计报告,占30%。
课题完成后应提交的文件和图表(或设计图纸):
1、 课程设计的任务书
2、 课程设计报告
(1) 本课程设计目的
(2) 设计基本原理(可按滤波器种类分别叙述)
(3) 设计的步骤和过程(可按滤波器种类分别叙述)
(4) 设计程序的调试和运行结果(可按滤波器种类分别叙述,注意图文并茂)
(5) 课程设计的思考与体会
(6) 参考文献
3、 附录
MATLAB程序代码
;
主要参考文献:(由指导老师选定)
(1)《数字信号处理(第二版)》,丁玉美等,西安电子科技大学出版社;
(2)《数字信号处理试验指导书》王创新、文卉编 长沙理工大学印刷(内部使用)
(3)《数字信号处理及其MATLAB实现》,陈怀琛等译,电子工业出版社;
(4)《MATLAB及在电子信息课程中的应用》,陈怀琛等,电子工业出版社。
(5)《数字信号处理》A.V.奥本海姆,R.W.谢弗著,北京:科学出版社
(6)《数字信号处理——理论、算法与实现(第二版)》胡广书编著,北京:电子工业出版社
同组设计者:
注:1、此任务书应由指导教师填写。
2、此任务书必须在课程设计开始前下达给学生。
学生送交成果日期
学 生 签 名