【VIP专享】语音信号谱分析及去噪处理

【VIP专享】语音信号谱分析及去噪处理
【VIP专享】语音信号谱分析及去噪处理

实验三:语音信号谱分析及去噪处理

1、实验目的

(1)通过对实际采集的语音信号进行分析和处理,获得数字信号处理实际应用的认识。(2)掌握数字信号谱分析的知识。

(3)掌握数字滤波器设计的知识,并通过对语音信号的去噪处理,获得数字滤波器实际应用的知识。

2、实验内容

(1)用麦克风自行采集两段语音信号[高频噪声、人声+高频噪声](.wav格式)。

(2)通过Matlab读入采集信号,观察其采样频率,并绘图采样信号。

(3)通过Matlab对语音信号进行谱分析,分析出噪声的频带。

(4)设计一滤波器,对叠加入噪声的语音信号进行去噪处理。绘图并发声去噪后的信号。

3、实验步骤

(1)利用麦克风采集一段5s以内的语音信号。利用格式工厂软件对语音信号进行预处理。

通常语音信号为单声道,采样频率为8000Hz,语音信号为.wav格式。

(2)通过Matlab读入语音信号及其采样频率(使用Matlab库函数wavread),在Matlab软

件的workspace工作平台上观察读入的语音信号,在Matlab中,对入的语音信号为一维矩阵。应注意,库函数wavread自动将语音信号幅度归一化[-1,1]区间范围。使用Matlab库函数

plot绘图语音信号,并使用库函数sound发音语音信号。

(3)分析噪声的频谱。在这里进行谱分析的目的,是了解噪声信号的频谱特性,为去噪滤波器的技术指标提供依据。

(4)通过Matlab对语音信号进行谱分析。应注意,对信号进行谱分析,在实验一中已经详

细介绍过。在这里进行谱分析的目的,是了解本段语音信号的频谱特性,为去噪滤波器的技

术指标提供依据。

(5)根据语音信号及噪声信号的频谱特性,自行设计一滤波器,对叠加入噪声的语音信号进行去噪处理。最后绘图并发声去噪后的信号。应注意,数字滤波器的实际应考虑实际需求,

合理制定滤波器的技术指标。

4、实验原理

用麦克风采集一段语音信号,绘制波形并观察其频谱,添加一段随机信号,给定相应的

滤波器指标,用脉冲响应不变法设计的一个满足指标的巴特沃斯IIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析。

5、实验内容

5.1设计流程图

语音信号滤波去噪——使用双线性变换法设计的巴特沃斯滤波器的设计流程如图

5.2原始语音信号的频谱分析源代码:

clear all;

%语音信号的读入和打开,画出语音信号的频谱图

[x,fs]=wavread('yinpin.wav')%调用音频文件,采样值放在x 中,fs 为采样频率

x=x(:,1);%取矩阵x 的第一列赋值到x 矩阵中

FS=length(x); % 矩阵x 的长度

f=0:fs/FS:(FS-1)*fs/FS; %生成一个一维数组赋给f

X=fft(x,4096); %对信号做4096点FFT 变换

magX=abs(X); %取X 的幅值给magX

t=(0:FS-1)/fs;

subplot(2,1,1);plot(t,x); %绘制原始语音信号的时域波形图

title('原始语音信号时域波形图');

xlabel('时间/n');

ylabel('幅值/n');

grid on;

f=fs*(0:511)/1024; %生成一个一维数组赋给f

figure(1)

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

title('原始信号频域图');

grid on;

5.3 加入一个随机噪声

%利用下列程序对原始语音信号进行加噪处理,并绘制出加随机噪声后语音信号的时域图和频谱图。

noise_mu=0; %取噪声的均值为0

noise_var=0.000005; %取噪声的方差为0.00005

x_noise=randn(size(x)).*sqrt(noise_var)+noise_mu;%语句产生与原始语音长度相同的随机噪声x1=x+x_noise; %把这个噪声添加到原始语音中,得到加噪语音信号

ts=1/fs;

ta=(length(x)-1)/fs;

t=0:ts:ta;

figure(2); subplot(2,1,1);

plot(t,x1); %绘制加随机噪声后语音信号时域图

title('加随机噪声后语音信号时域图');

xlabel('t'); ylabel('x1'); grid on;

y2=fft(x1,1024); %对信号做1024点FFT变换

f=fs*(0:511)/1024;

subplot(2,1,2); %绘制原始语音信号的频率响应图

plot(f,abs(y2(1:512)));

title('加随机噪声后的语音信号频谱图')

xlabel('f/Hz'); ylabel('幅度'); grid on;

5.4 根据指标设计IIR数字滤波器

低通滤波器的性能指标:

fp=1200Hz,fs=1100Hz,ft=8000Hz, As=20db ,Ap=1dB

%根据指标设计IIR数字滤波器

Fp=1200;%阻带截止频率

Fs=1100;%通带截止频率

Ft=8000;%采集频率

As=20;%通带波纹Ap=1

Ap=1;%阻带波纹As=20

wp=2*pi*Fp/Ft;

ws=2*pi*Fs/Ft;

fp=2*Ft*tan(wp/2);

fs=2*Ft*tan(ws/2);

[n,wn]=buttord(wp,ws,Ap,As,'s'); %求低通滤波器的阶数和截止频率[b,a]=butter(n,wn,'s'); %求S域的频率响应的参数

[B,A]=bilinear(b,a,1); %双线性变换实现S域到Z域的变换

[h,w]=freqz(B,A); %根据参数求出频率响应

figure(3);

plot(w*8000*0.5/pi,abs(h));

5.5 进行低通滤波,比较滤波前后语音信号的波形及频谱

%进行低通滤波,比较滤波前后语音信号的波形及频谱:

Y=fft(x1);

y1=filter(B,A,x1); %利用滤波器对语音信号滤波Y1=fft(y1);

n=0:length(x1)-1;

t=(0:FS-1)/fs;

figure(4);

subplot(2,2,1);plot(t,x1);title('未滤波语音波形');

subplot(2,2,2);plot(t,y1);title('滤波后语音波形');

subplot(2,2,3);plot(n,Y);title('未滤波语音频谱');

subplot(2,2,4);plot(n,Y1);title('滤波后语音频谱');

sound(y1,fn,nbits); %滤波后语音回放

6、结果分析

由图中滤波前后波形比较可看出,经过滤波后的波形比原波形的振幅有所减小,去除了很多由于噪声所产生的干扰;从滤波前后的频谱比较可以看出经过滤波后除了原本的声音外,中间由于噪声产生的频谱波形已经滤除;经过MATLAB仿真,听滤波前后的声音,可以听出有明显的滤波效果。因此利用双线性变换法设计的巴特沃斯滤波器已经达到了设计的要求。

IIR滤波器语音去噪处理

课程设计(论文) 题目基于IIR数字滤波器的有噪语音信号的 处理 课程设计(论文)任务书学院:电气工程学院 题目:基于IIR数字滤波器的有噪语音 信号的处理

起止时间:2016年10月25日至16年11月20日 学生姓名: 专业班级: 指导教师: 教研室主任: 院长: 2016年11 月20 日

摘要:滤波器设计在数字信号处理中占有极其重要的地位,IIR滤波器是滤波器设计的重要组成部分。课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域,频域分析和滤波。通过理论推导得出相应结论,再利用MATLAB 作为编程工具进行计算机实现。在设计实现的过程中,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具处理工具箱可以有效快捷地设计IIR数字滤波器,结果的各项性能指标均达到指定要求。 关键词:MATLAB;IIR滤波器;有噪音语音信号

Abstract: filter design plays an important role in digital signal processing, IIR filter is an important part of the filter design. Research based on MATLAB design and implementation of the noise processing of speech signal, the theory of knowledge of the integrated use of digital signal processing in time domain of speech signal plus noise, frequency domain analysis and filtering. Through theoretical derivation corresponding conclusion using MATLAB as a programming tool for computer implementation. In the design process, with Butterworth, Chebyshev and bilinear method of IIR digital filter design, and use MATLAB as a tool Complete the drawing calculation and graphic design. Through the simulation and frequency characteristic analysis on the design of filter, MATLAB signal processing tools processing toolbox can effectively and quickly design IIR digital filter based on the results of the performance indicators to meet the specified requirements. Keywords: MATLAB; IIR filter; noisy speech signal

语音信号处理与及其MATLAB实现分析

目录 摘要 (2) 第一章绪论 (3) 1.1 语音课设的意义 (3) 1.2 语音课设的目的与要求 (3) 1.3 语音课设的基本步骤 (3) 第二章设计方案论证 (5) 2.1 设计理论依据 (5) 2.1.1 采样定理 (5) 2.1.2 采样频率 (5) 2.1.3 采样位数与采样频率 (5) 2.2 语音信号的分析及处理方法 (6) 2.2.1 语音的录入与打开 (6) 2.2.2 时域信号的FFT分析 (6) 2.2.3 数字滤波器设计原理 (7) 2.2.4 数字滤波器的设计步骤 (7) 2.2.5 IIR滤波器与FIR滤波器的性能比较 (7) 第三章图形用户界面设计 (8) 3.1 图形用户界面概念 (8) 3.2 图形用户界面设计 (8) 3.3 图形用户界面模块调试 (9) 3.3.1 语音信号的读入与打开 (9) 3.3.2 语音信号的定点分析 (9) 3.3.3 N阶高通滤波器 (11) 3.3.4 N阶低通滤波器 (12) 3.3.5 2N阶带通滤波器 (13) 3.3.6 2N阶带阻滤波器 (14) 3.4 图形用户界面制作 (15) 第四章总结 (18) 附录 (19) 参考文献 (24)

摘要 数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。 数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。 数字信号处理的算法需要利用计算机或专用处理设备如数字信号处理器(DSP)和专用集成电路(ASIC)等。数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。 数字信号处理的核心算法是离散傅立叶变换(DFT),是DFT使信号在数字域和频域都实现了离散化,从而可以用通用计算机处理离散信号。而使数字信号处理从理论走向实用的是快速傅立叶变换(FFT),FFT的出现大大减少了DFT的运算量,使实时的数字信号处理成为可能、极大促进了该学科的发展。 MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple 并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

应用Matlab对含噪声语音信号进行频谱分析及滤波

应用Matlab对含噪声的语音信号进行频谱分析及滤波 一、实验内容 录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在语音信号中增加正弦噪声信号(自己设置几个频率的正弦信号),对加入噪声信号后的语音信号进行频谱分析;给定滤波器的性能指标,采用窗函数法和双线性变换设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比试听,分析信号的变化。 二、实现步骤 1.语音信号的采集 利用Windows下的录音机,录制一段自己的话音,时间在1 s内。然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,(可用默认的采样频率或者自己设定采样频率)。 2.语音信号的频谱分析 要求首先画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性。 在采集得到的语音信号中加入正弦噪声信号,然后对加入噪声信号后的语音号进行快速傅里叶变换,得到信号的频谱特性。并利用sound试听前后语音信号的不同。

分别设计IIR和FIR滤波器,对加入噪声信号的语音信号进行去噪,画出并分析去噪后的语音信号的频谱,并进行前后试听对比。 3.数字滤波器设计 给出数字低通滤波器性能指标:如,通带截止频率fp=10000 Hz,阻带截止频率fs=12000 Hz(可根据自己所加入噪声信号的频率进行阻带截止频率设置),阻带最小衰减Rs=50 dB,通带最大衰减Rp=3 dB(也可自己设置),采样频率根据自己语音信号采样频率设定。

报告内容 一、实验原理 含噪声语音信号通过低通滤波器,高频的噪声信号会被过滤掉,得到清晰的无噪声语音信号。 二、实验内容 录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在语音信号中增加正弦噪声信号(自己设置几个频率的正弦信号),对加入噪声信号后的语音信号进行频谱分析;给定滤波器的性能指标,采用窗函数法和双线性变换设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比试听,分析信号的变化。给出数字低通滤波器性能指标:如,通带截止频率fp=10000 Hz,阻带截止频率fs=12000 Hz (可根据自己所加入噪声信号的频率进行阻带截止频率设置),阻带最小衰减Rs=50 dB,通带最大衰减Rp=3 dB(也可自己设置),采样频率根据自己语音信号采样频率设定。 三、实验程序 1、原始信号采集和分析 clc;clear;close all; fs=10000; %语音信号采样频率为10000 x1=wavread('C:\Users\acer\Desktop\voice.wav'); %读取语音信号的数据,赋给x1 sound(x1,40000); %播放语音信号 y1=fft(x1,10240); %对信号做1024点FFT变换 f=fs*(0:1999)/1024; figure(1); plot(x1) %做原始语音信号的时域图形 title('原始语音信号'); xlabel('time n'); ylabel('fuzhi n'); figure(2); plot(f,abs(y1(1:2000))); %做原始语音信号的频谱图形 title('原始语音信号频谱') xlabel('Hz'); ylabel('fuzhi');

语音信号滤波去噪——使用双线性变换法设计的切比雪夫II型滤波器

课程设计任务书

语音信号滤波去噪——使用脉冲响应不变法设计的巴特沃斯滤波器 摘要本课程设计主要运用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用脉冲响应不变法设计的一个满足指标的巴特沃斯IIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。 关键词课程设计;滤波去噪;巴特沃斯滤波器;脉冲响应不变法;MATLAB 1 引言 本课程设计主要利用麦克风采集一段8000Hz,8k的单声道语音信号,并绘制波形观察其频谱,再用MATLAB利用脉冲响应不变法设计一个巴特沃斯滤波器,将该语音信号进行滤波去噪处理。 1.1 课程设计目的 《数字信号处理》课程设计是在学生完成数字信号处理和MATLAB的结合后的基本实验以后开设的。本课程设计的目的是为了让学生综合数字信号处理和MATLAB并实现一个较为完整的小型滤波系统。这一点与验证性的基本实验有本质性的区别。开设课程设计环节的主要目的是通过系统设计、软件仿真、程序安排与调试、写实习报告等步骤,使学生初步掌握工程设计的具体步骤和方法,提高分析问题和解决问题的能力,提高实际应用水平。 1.2课程设计的要求 (1)滤波器指标必须符合工程设计。 (2)设计完后应检查其频率响应曲线是否满足指标。

(3)处理结果和分析结论应该一致,而且应符合理论。 (4)独立完成课程设计并按要求编写课程设计报告。 2 设计原理 用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用脉冲响应不变法设计的一个满足指标的巴特沃斯IIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析。 2.1 IIR滤波器 I IR滤波器设计方法有间接法和直接法,间接法是借助于模拟滤波器的设计方法进行的。其设计步骤是:先设计过渡模拟滤波器得到系统函数H(s),然后将H(s)按某种方法转换成数字滤波器的系统函数H(z)。FIR滤波器比鞥采用间接法,常用的方法有窗函数法、频率采样发和切比雪夫等波纹逼近法。对于线性相位滤波器,经常采用FIR 滤波器。 对于数字高通、带通滤波器的设计,通用方法为双线性变换法。可以借助于模拟滤波器的频率转换设计一个所需类型的过渡模拟滤波器,再经过双线性变换将其转换策划那个所需的数字滤波器。具体设计步骤如下: (1)确定所需类型数字滤波器的技术指标。 (2)将所需类型数字滤波器的边界频率转换成相应的模拟滤波器的边界频率,转换公式为Ω=2/T tan(0.5ω) (3)将相应类型的模拟滤波器技术指标转换成模拟低通滤波器技术指标。 (4)设计模拟低通滤波器。 (5)通过频率变换将模拟低通转换成相应类型的过渡模拟滤波器。 (6)采用双线性变换法将相应类型的过渡模拟滤波器转换成所需类型的数字滤波器。 我们知道,脉冲响应不变法的主要缺点是会产生频谱混叠现象,使数字滤波器的频响偏离模拟滤波器的频响特性。为了克服之一缺点,可以采用双线性变换法。 下面我们总结一下利用模拟滤波器设计IIR数字低通滤波器的步骤: (1)确定数字低通滤波器的技术指标:通带边界频率、通带最大衰减,阻带截止频率、阻带最小衰减。

语音信号分析与处理2011

数字信号处理实验二:语音信号分析与处理 学号 姓名 注:1)此次实验作为《数字信号处理》课程实验成绩的重要依据,请同学们认真、独立完成,不得抄袭。 2)请在授课教师规定的时间内完成; 3)完成作业后,请以word 格式保存,文件名为:学号+姓名 4)请通读全文,依据第2及第3 两部分内容,认真填写第4部分所需的实验数据,并给出程序内容。 1. 实验目的 (1) 学会MATLAB 的使用,掌握MATLAB 的程序设计方法 (2) 掌握在windows 环境下语音信号采集的方法 (3) 掌握MATLAB 设计FIR 和IIR 滤波器的方法及应用 (4) 学会用MATLAB 对语音信号的分析与处理方法 2. 实验内容 录制一段自己的语音信号,对录制的语音信号进行采样,画出采样后语音信号的时域波形和频谱图,确定语音信号的频带范围;使用MATLAB 产生白噪声信号模拟语音信号在处理过程中的加性噪声并与语音信号进行叠加,画出受污染语音信号的时域波形和频谱图;采用双线性法设计出IIR 滤波器和窗函数法设计出FIR 滤波器,画出滤波器的频响特性图;用自己设计的这两种滤波器分别对受污染的语音信号进行滤波,画出滤波后语音信号的时域波形和频谱图;对滤波前后的语音信号进行时域波形和频谱图的对比,分析信号的变化;回放语音信号,感觉与原始语音的不同。 3. 实验步骤 1)语音信号的采集与回放 利用windows 下的录音机或其他软件录制一段自己的语音(规定:语音内容为自己的名字,以wav 格式保存,如wql.wav ),时间控制在2秒之内,利用MATLAB 提供的函数wavread 对语音信号进行采样,提供sound 函数对语音信号进行回放。 [y,fs,nbits]=wavread(file), 采样值放在向量y 中,fs 表示采样频率nbits 表示采样位数。Wavread 的更多用法请使用help 命令自行查询。 2)语音信号的频谱分析 利用fft 函数对信号进行频谱分析 3)受白噪声干扰的语音信号的产生与频谱分析 ①白噪声的产生: N1=sqrt (方差值)×randn(语音数据长度,2)(其中2表示2列,是由于双声道的原因) 然后根据语音信号的频谱范围让白噪声信号通过一个带通滤波器得到一个带限的白噪声信号 N2; 带通滤波器的冲激响应为: h B (n )= ))((sin ))((sin 1122απ ωπωαπωπω---n c n c c c c c

语音信号滤波去噪

一、设计的目的和意义 数字滤波器和快速傅立叶变换(FFT)等是语音信号数字处理的理论和技术基础,是20世纪60年代形成的一系列数字信号处理的理论和算法。在数字信号处理中,滤波器的设计占有极其重要的地位。而其中,FIR数字滤波器和IIR数字滤波器是重要组成部分。Matlab具有功能强大、简单易学、编程效率高等特点,深受广大科技工作者的喜爱。特别是Matlab中还具有信号分析工具箱,所以对于使用者,不需要具备很强的编程能力,就可以方便地进行信号分析、处理和设计。利用Matlab中的信号处理工具箱,可以快速有效的设计各种数字滤波器。本论文基于Matlab语音信号处理的设计与实现,综合运用数字信号处理的相关理论知识,对加噪声语音信号进行时域、频域分析并滤波。而后通过理论推导得出相应结论,再利用Matlab作为编程工具进行计算机实现工作。 本次课程设计的课题为《基于DSP的语音信号滤波去噪》,运用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用脉冲响应不变法设计的一个满足指标的巴特沃斯IIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。 二、设计原理: 2.1 巴特沃斯滤波器 巴特沃斯滤波器是电子滤波器的一种。巴特沃斯滤波器的特点是通频带的频率响应曲线最平滑。巴特沃斯滤波器的特性是通频带内的频率响应曲线最大限度平坦,没有起伏,而在组频带则逐渐下降为零。在振幅的对数对角频率的波得图上,从某一边界角频率开始,振幅随着角频率的增加而逐步减少,趋向负无穷大。 其振幅平方函数具有如2-1式: 式中,N为整数,称为滤波器的阶数,N越大,通带和阻带的近似 性越好,过渡带也越陡。如下图2.1所示:

基于Matlab的语音信号处理与分析

系(院)物理与电子工程学院专业电子信息工程题目语音信号的处理与分析 学生姓名 指导教师 班级 学号 完成日期:2013 年5 月 目录 1 绪论.............................................................................................................. 错误!未定义书签。 1.1课题背景及意义................................................................................. 错误!未定义书签。 1.2国内外研究现状................................................................................. 错误!未定义书签。 1.3本课题的研究内容和方法................................................................. 错误!未定义书签。 1.3.1 研究内容................................................................................ 错误!未定义书签。 1.3.2 开发环境................................................................................ 错误!未定义书签。 2 语音信号处理的总体方案............................................................................ 错误!未定义书签。 2.1 系统基本概述.................................................................................... 错误!未定义书签。 2.2 系统基本要求与目的........................................................................ 错误!未定义书签。 2.3 系统框架及实现................................................................................ 错误!未定义书签。 2.3.1 语音信号的采样.................................................................... 错误!未定义书签。 2.3.2 语音信号的频谱分析............................................................ 错误!未定义书签。 2.3.3 音乐信号的抽取.................................................................... 错误!未定义书签。 2.3.4 音乐信号的AM调制.............................................................. 错误!未定义书签。 2.3.5 AM调制音乐信号的同步解调............................................... 错误!未定义书签。 2.4系统设计流程图................................................................................. 错误!未定义书签。 3 语音信号处理基本知识................................................................................ 错误!未定义书签。 3.1语音的录入与打开............................................................................. 错误!未定义书签。 3.2采样位数和采样频率......................................................................... 错误!未定义书签。 3.3时域信号的FFT分析......................................................................... 错误!未定义书签。 3.4切比雪夫滤波器................................................................................. 错误!未定义书签。 3.5数字滤波器设计原理......................................................................... 错误!未定义书签。 4 语音信号实例处理设计................................................................................ 错误!未定义书签。 4.1语音信号的采集................................................................................. 错误!未定义书签。

滤波器语音信号去噪要点

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2013年春季学期 信号处理课程设计 题目:基于MATLAB的FIR滤波器语音信号去噪专业班级:通信工程(1)班 姓名:王兴栋 学号:10250114 指导教师:陈海燕 成绩:

摘要 语音信号在数字信号处理中占有极其重要的地位,因此选择通过对语音信号的研究来巩固和掌握数字信号处理的基本能力十分具有代表性。对数字信号处理离不开滤波器,因此滤波器的设计在信号处理中占有极其重要的地位。而MATLAB 软件工具箱提供了对各种数字滤波器的设计。本论文“在MATLAB平台上实现对语音信号的去噪研究与仿真”综合运用了数字信号处理的各种基本知识,进而对不带噪语音信号进行谱分析以及带噪语音信号进行谱分析和滤波处理。通过理论推导得出相应的结论,再通过利用MATLAB作为编程工具来进行计算机实现比价已验证推导出来的结论。在设计过程中,通过设计FIR数字滤波器和IIR数字滤波器来完成滤波处理。在设计过程中,运用了MATLAB对整个设计中的图形的绘制和一些数据的计算以及仿真。 关键字滤波器;MATLAB;仿真;滤波

前言 语音是语言的声学表现,是人类交流信息最自然、最有效、最方便的手段。随着社会文化的进步和科学技术的发展,人类开始进入了信息化时代,用现代手段研究语音处理技术,使人们能更加有效地产生、传输、存储、和获取语音信息,这对于促进社会的发展具有十分重要的意义,因此,语音信号处理正越来越受到人们的关注和广泛的研究。 语音信号是信息技术处理中最重要的一门科学,是人类社会几步的标志。那么什么是语音?语音是人类特有的功能,也是人类获取外界信息的重要工具,也是人与人交流必不可少的重要手段。那么什么又是信号?那信号是什么呢?信号是传递信息的函数。离散时间信号——序列——可以用图形来表示。 语音信号处理是一门用研究数字信号处理研究信号的科学。它是一新兴的信息科学,同时又是综合多个学科领域的一门交叉科学。语音在我们的日常生活中随时可见,也随处可见,语音很大程度上可以影响我们的生活。所以研究语音信号无论是在科学领域上还是日常生活中都有其广泛而重要的意义。 本论文主要介绍的是的语音信号的简单处理。本论文针对以上问题,运用数字信号学基本原理实现语音信号的处理,在matlab7.0环境下综合运用信号提取,幅频变换以及傅里叶变换、滤波等技术来进行语音信号处理。我所做的工作就是在matlab7.0软件上编写一个处理语音信号的程序,能对语音信号进行采集,并对其进行各种处理,达到简单语音信号处理的目的。 对语音信号的研究,本论文采用了设计两种滤波器的基本研究方法来达到研究语音信号去噪的目的,最终结合图像以及对语音信号的回放,通过对比,得出结论。

基于MATLAB的语音信号的分析与处理

基于MATLAB的语音信号分析与处理 [摘要]语音信号的处理是一门非常重要的学科,如今普遍应用在电话通信、助听器等方面。本次设计主要是为了在MATLAB软件的帮助下处理一段加噪的声音信号,该过程会涉及到采样定理,傅立叶变换等理论和算法在设计过程中的实际应用。在本次设计中,我们关注的是在驱除噪声污染是所需要的滤波器的选择,充分比较各种优缺点后,再利用滤波器来驱除杂音。通过滤波前后的声音的频谱图的比较,来了解滤波器的特性和作用,并得到本次设计的结果。 [关键词]:语音信号;MATLAB;傅立叶变换;滤波器

目录 摘要 (Ⅰ) 1 绪论 (1) 1.1 课题的研究背景及意义 (1) 1.1 设计任务 (1) 2 语音信号处理的基本理论知识 (1) 2.1 采样频率和采样位数 (1) 2.2 采样定理 (1) 2.3 IIR数字滤波器 (2) 2.4 FIR数字滤波器 (2) 2.5 IIR数字滤波器和FIR数字滤波器的比较 (3) 2.6 倒谱 (3) 3 语音信号处理和理论方案 (3) 3.1 语音信号的采集 (3) 3.2 语音信号的处理 (4) 3.3 系统框图 (4) 4 语音信号处理的实例分析. (5) 4.1语音文件在MATLAB平台上的录入与打开 (5) 4.2原始语音信号频谱分析及仿真 (5) 4.3加噪语音信号频谱分析及仿真 (8) 4.4去噪及仿真 (13) 4.5 语音信号的回放 (18) 4.6结合去噪后的频谱图对比两种方式滤波的优缺点 (18) 5 总结. (19) 6 致谢. (19) 参考文献 (20)

1绪论 1.1课题的研究背景及意义 语言是我们人类所特有的功能,它是传承和记载人类几千年文明史,没有语言就没有我们今天人类的文明。语音是语言最基本的表现形式,是相互传递信息最重要的手段,是人类最重要、最有效、最常用和最方便的交换信息的形式。 语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展;它是研究用数字信号处理技术对语音信号进行处理的一门新兴学科,同时又是综合性的多学科领域和涉及面很广的交叉学科,因此我们进行语言信号处理具有时代的意义。 1.2设计任务 本设计先完成语音信号的采集,然后设计低通,带通等滤波器对采集到的语音信号进行滤波处理,分析语音信号各频率段的特性。并对所采集的语音信号加入不同的干扰噪声,对加入噪声的信号进行频谱分析,针对受干扰语音信号的特点设计不同的滤波器,对加噪信号进行滤波,恢复原信号。把原始语音信号、加噪语音信号和滤波后的信号进行时域变换和频域变换,画出它们的时域波形和频域波形图,从视觉角度比较分析滤波的效果。 2语音信号处理的基本理论知识 2.1采样频率和采样位数 采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形的表示也越精确。采样频率与声音频率之间有一定的关系,根据奎斯特理论,只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音还原成为原来的声音。这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。 采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。 采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。 2.2 采样定理 在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中,最高频率fmax

MATLAB对语音信号加随机噪声及去噪程序

%对语言信号做原始的时域波形分析和频谱分析[y,fs,bits]=wavread('C:\Documentsand?Settings\Administrator\桌面\cuocuo.wav'); %??sound(y,fs)??????%回放语音信号 n=length(y)??%选取变换的点数? y_p=fft(y,n);??????%对n点进行傅里叶变换到频域 f=fs*(0:n/2-1)/n;???%对应点的频率 figure(1) subplot(2,1,1); plot(y);????????????????????%语音信号的时域波形图 title('原始语音信号采样后时域波形'); xlabel('时间轴') ylabel('幅值A') subplot(2,1,2); plot(f,abs(y_p(1:n/2)));?????%语音信号的频谱图 title('原始语音信号采样后频谱图'); xlabel('频率Hz'); ylabel('频率幅值'); %对音频信号产生噪声 ??L=length(y)????????%计算音频信号的长度 ??noise=0.1*randn(L,2);??%产生等长度的随机噪声信号(这里的噪声的大小取决于随机函数的幅度倍数) ??y_z=y+noise;????????%将两个信号叠加成一个新的信号——加噪声处理??? ??%sound(y_z,fs) %对加噪后的语音信号进行分析 n=length(y);??%选取变换的点数? y_zp=fft(y_z,n);??????%对n点进行傅里叶变换到频域 f=fs*(0:n/2-1)/n;???%对应点的频率 figure(2) subplot(2,1,1); plot(y_z);????????????????????%加噪语音信号的时域波形图 title('加噪语音信号时域波形'); xlabel('时间轴') ylabel('幅值A') subplot(2,1,2); plot(f,abs(y_zp(1:n/2)));?????%加噪语音信号的频谱图 title('加噪语音信号频谱图'); xlabel('频率Hz'); ylabel('频率幅值');

语音信号处理试验教程

语音信号处理试验 实验一:语音信号时域分析 实验目的: (1)录制两段语音信号,内容是“语音信号处理”,分男女声。 (2)对语音信号进行采样,观察采样后语音信号的时域波形。 实验步骤: 1、使用window自带录音工具录制声音片段 使用windows自带录音机录制语音文件,进行数字信号的采集。启动录音机。录制一段录音,录音停止后,文件存储器的后缀默认为.Wav。将录制好文件保存,记录保存路径。男生女生各录一段保存为test1.wav和test2.wav。 图1基于PC机语音信号采集过程。 2、读取语音信号 在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、编程获取语音信号的抽样频率和采样位数。 语音信号为test1.wav和test2.wav,内容为“语音信号处理”,两端语音保存到工作空间work文件夹下。在M文件中分别输入以下程序,可以分两次输入便于观察。 [y1,fs1,nbits1]=wavread('test1.wav') [y2,fs2,nbits2]=wavread('test2.wav') 结果如下图所示 根据结果可知:两端语音信号的采样频率为44100HZ,采样位数为16。 4、语音信号的时域分析 语音信号的时域分析就是分析和提取语音信号的时域参数。进行语音分析时,最先接触到并且夜市最直观的是它的时域波形。语音信

数字信号处理 语音信号分析与处理及其MATLAB实现..

摘要 (2) 1 设计目的与要求 (3) 2 设计步骤 (4) 3 设计原理及内容 (5) 3.1 理论依据 (5) 3.2 信号采集 (6) 3.3 构造受干扰信号并对其FFT频谱分析 (8) 3.4 数字滤波器设计 (9) 3.5 信号处理 (10) 总结 (12) 致谢 (13) 参考文献 (14)

用MATLAB对语音信号进行分析与处理,采集语音信号后,在MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。 数字滤波器是数字信号处理的基础,用来对信号进行过滤、检测和参数估计等处理。IIR数字滤波器最大的优点是给定一组指标时,它的阶数要比相同组的FIR滤波器的低的多。信号处理中和频谱分析最为密切的理论基础是傅立叶变换(FT)。离散傅立叶变换(DFT)和数字滤波是数字信号处理的最基本内容。 关键词:MATLAB;语音信号;加入噪声;滤波器;滤波

1. 设计目的与要求 (1)待处理的语音信号是一个在20Hz~20kHz频段的低频信号 (2)要求MATLAB对语音信号进行分析和处理,采集语音信号后,在MATLAB平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器进行滤除噪声,恢复原信号。

2. 设计步骤 (1)选择一个语音信号或者自己录制一段语音文件作为分析对象; (2)对语音信号进行采样,并对语音信号进行FFT频谱分析,画出信号的时域波形图和频谱图; (3)利用MATLAB自带的随机函数产生噪声加入到语音信号中,对语音信号进行回放,对其进行FFT频谱分析; (4)设计合适滤波器,对带有噪声的语音信号进行滤波,画出滤波前后的时域波形图和频谱图,比较加噪前后的语音信号,分析发生的变化; (5)对语音信号进行回放,感觉声音变化。

音频信号分析与处理

实验三音频信号的分析与处理1 一、实验目的 1.掌握音频信号的采集以及运用Matlab软件实现音频回放的方 法; 2.掌握运用Matlab实现对音频信号的时域、频谱分析方法; 3.掌握运用Matlab设计RC滤波系统的方法; 4.掌握运用Matlab实现对加干扰后的音频信号的进行滤波处理 的方法; 5.锻炼学生运用所学知识独立分析问题解决问题的能力,培养学 生创新能力。 二、实验性质 设计性实验 三、实验任务 1.音频信号的采集 音频信号的采集可以通过Windows自带的录音机也可以用专用的录制软件录制一段音频信号(尽量保证无噪音、干扰小),也可以直接复制一段音频信号,但必须保证音频信号保存为.wav的文件。 2.音频信号的时域、频域分析 运用Matlab软件实现对音频信号的打开操作、时域分析和频域分析,并画出相应的图形(要求图形有标题),并打印在实验报告中(注意:把打印好的图形剪裁下来,粘贴到实验报告纸上)。 3.引入干扰信号 在原有的音频信号上,叠加一个频率为100KHz的正弦波干扰信号(幅度自定,可根据音频信号的情况而定)。 4.滤波系统的设计 运用Matlab实现RC滤波系统,要求加入干扰的音频信号经过RC滤波系统后,能够滤除100KHz的干扰信号,同时保留原有的音频信号,要求绘制出RC滤波系统的冲激响应波形,并分析其频谱。

% 音频信号分析与处理 %% 打开和读取音频文件 clear all; % 清除工作区缓存 [y, Fs] = audioread('jyly.wav'); % 读取音频文件 VoiceWav = y(300000 : 400000, 1); % 截取音频中的一段波形 clear y; % 清除缓存 hAudio = audioplayer(VoiceWav, Fs); % 将音频文件载入audioplayer SampleRate = get(hAudio, 'SampleRate'); % 获取音频文件的采样率KHz T = 1/SampleRate; % 计算每个点的时间,即采样周期SampLen = size(VoiceWav,1); % 单声道采样长度 %% 绘制时域分析图 hFig1 = figure('Units', 'normalized', 'Position', [0 0.05 0.49 0.85]); t = T: T: (SampLen* T); subplot(2, 1, 1); % 绘制音频波形 plot(t, VoiceWav); % 绘制波形 title('音频时域波形图'); axis([0, 2.3, -0.5, 0.5]); xlabel('时间(s)'); ylabel('幅值(V)'); % 显示标题 %% 傅里叶变换 subplot(2, 1, 2); % 绘制波形 myfft(VoiceWav, SampleRate, 'plot'); % 傅里叶变换 title('单声道频谱振幅'); % 显示标题 xlabel('Frequency (Hz)'); ylabel('|Y(f)|'); play(hAudio); % 播放添加噪声前的声音 pause(3); %% 引入100KHz的噪声干扰 t = (0: SampLen-1)* T; noise = sin(2 * pi * 10000 * t); % 噪声频率100Khz,幅值-1V到+1V hFig2 = figure('Units', 'normalized', 'Position', [0.5 0.05 0.5 0.85]); subplot(2, 1, 1); % 绘制波形 plot(t(1: 1000), noise(1: 1000)); title('100KHz噪声信号'); % 显示标题 noiseVoice = VoiceWav+ noise'; % 将噪声加到声音里面 hAudio = audioplayer(noiseVoice, Fs); % 将音频文件载入audioplayer subplot(2, 1, 2); % 绘制波形 [fftNoiseVoice, f] = myfft(noiseVoice, SampleRate, 'plot'); title('音乐和噪声频谱'); % 显示标题 play(hAudio); % 播放添加噪声后的声音 pause(3);

基于MATLAB的语音信号滤波处理

基于MATLAB的语音信号滤波处理 题目:基于MATLAB的语音信号滤波处理 课程:数字信号处理 学院:电气工程学院 班级: 学生: 指导教师: 二O一三年十二月

目录CONTENTS 摘要 一、引言 二、正文 1.设计要求 2.设计步骤 3.设计内容 4.简易GUI设计 三、结论 四、收获与心得 五、附录

一、引言 随着Matlab仿真技术的推广,我们可以在计算机上对声音信号进行处理,甚至是模拟。通过计算机作图,采样,我们可以更加直观的了解语音信号的性质,通过matlab编程,调用相关的函数,我们可以非常方便的对信号进行运算和处理。 二、正文 2.1 设计要求 在有噪音的环境中录制语音,并设计滤波器去除噪声。 2.2 设计步骤 1.分析原始信号,画出原始信号频谱图及时频图,确定滤波器类型及相关指标; 2.按照类型及指标要求设计出滤波器,画出滤波器幅度和相位响应,分析该滤波器是否符合要求; 3.用所设计的滤波器对原始信号进行滤波处理,画出滤波后信号的频谱图及时频图; 4.对滤波前的信号进行分析比对,评估所设计滤波器性能。 2.3 设计内容 1.原始信号分析

分析信号的谱图可知,噪音在1650HZ和3300HZ附近的能量较高,而人声的能量基本位于1000HZ以下。因此,可以设计低通滤波器对信号进行去噪处理。 2.IIR滤波器设计 用双线性变换法分别设计了巴特沃斯低通滤波器和椭圆低通滤波器和带阻滤波器: ①巴特沃斯滤波器 fp=800;fs=1300;rs=35;rp=0.5; 程序代码如下: fp=800;fs=1300;rs=35;rp=0.5;Fs=44100; wp=2*Fs*tan(2*pi*fp/(2*Fs));ws=2*Fs*tan(2*pi*fs/(2*Fs)); [n,wn]=buttord(wp,ws,rp,rs,'s'); [b,a]=butter(n,wn,'s'); [num,den]=bilinear(b,a,Fs); [h,w]=freqz(num,den,512,Fs);

相关文档
最新文档