当前位置:文档之家› 应用Matlab对含噪声语音信号进行频谱分析及滤波

应用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');

2、加入噪声

y=wavread('C:\Users\acer\Desktop\voice.wav');

y=y(:,1); %矩阵维度置换成1 subplot(2,2,1);

plot(y);

title('加噪前的时域曲线');

N=length(y)-1;

n=0:1/fs:N/fs;

x=1.5*sin(40*pi*n); %设置正弦噪声信号

x=x.'; %置换成矩阵

z=y+x; %添加噪声

subplot(2,2,2);

plot(z);

title('加噪后的时域曲线');

sound(z,40000)

3、IIR滤波器设计

clc;clear;close all;

fs=22050;x1=wavread('C:\Users\acer\Desktop\voice.wav');

x1=x1(:,1)

t=0:1/22050:(size(x1)-1)/22050; %设置并添加噪声信号

d=1.5*sin(40*pi*t);

d=d.';

x2=x1+d;

wp=0.25*pi;ws=0.3*pi;Rp=1;Rs=15; %通阻带截止和通阻带衰减Fs=22050;Ts=1/Fs;

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); %绘制频率响应曲线

figure(1);

plot(W*Fs/(2*pi),abs(H));grid %滤波器

xlabel('频率/Hz');ylabel('频率响应幅度');title('Butterworth')

f1=filter(bz,az,x2);

figure(2);

subplot(2,1,1); plot(t,x2); %画出滤波前的时域图

title('滤波前的时域波形');

subplot(2,1,2);plot(t,f1); %画出滤波后的时域图

title('滤波后的时域波形');

sound(f1,40000); %播放滤波后的信号

F0=fft(f1,10240);f=fs*(0:255)/10240

figure(3)

y2=fft(x2,10240);

subplot(2,1,1);plot(f,abs(y2(1:256))); %画出滤波前的频谱图

title('滤波前的频谱');xlabel('Hz');ylabel('fuzhi');

subplot(2,1,2);F1=plot(f,abs(F0(1:256))); %画出滤波后的频谱图

title('滤波后的频谱');xlabel('Hz');ylabel('fuzhi');

4、FIR滤波器设计

clear all

fs=22050; %设置采样频率

x1=wavread('C:\Users\acer\Desktop\voice.wav');%读取声音

x1=x1(:,1)

f=fs*(0:1023)/1024; %F=([1:N]-1)*Fs/N; %换算成实际的频率值

t=0:1/22050:(length(x1)-1)/22050; %定义噪声信号

d=[1.5*sin(40*pi*t);]';

x2=x1+d; %加噪声

N=30;

b1=fir1(N,0.3,hamming(N+1)); %设计FIR滤波器

M=128;

f0=0:1/M:1-1/M;

h1=freqz(b1,10,M); %滤波器幅频响应

f1=filter(b1,10,x2); %滤波

y0=fft(x2,40000);

y00=fft(f1,40000);

sound(f1,40000); %播放滤波后的声音

figure(1)

plot(f0,abs(h1)); %滤波器幅频响应图title('滤波器幅频响应图')

figure(2);

subplot(2,1,1); plot(t,x2); %画出滤波前的时域图

title('滤波前的时域波形');

subplot(2,1,2);plot(t,f1); %画出滤波后的时域图

title('滤波后的时域波形');

F0=fft(f1,10240);f=fs*(0:255)/10240

figure(3)

subplot(211)

plot(f,abs(y0(1:256)));

title('滤波前频谱')

subplot(212)

plot(f,abs(y00(1:256))); %滤波后频谱

title('滤波后频谱')

C:\Users\apple\Desktop\xinhao\最遥远的距离.wav

matlab中关于数字滤波器的函数介绍

MATLAB下的数字信号处理实现示例 一信号、系统和系统响应 1、理想采样信号序列 (1)首先产生信号x(n),0<=n<=50 n=0:50; %定义序列的长度是50 A=444.128; %设置信号有关的参数 a=50*sqrt(2.0)*pi; T=0.001; %采样率 w0=50*sqrt(2.0)*pi; x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定义的π,信号乘可采用“.*”close all %清除已经绘制的x(n)图形 subplot(3,1,1);stem(x); %绘制x(n)的图形 title(‘理想采样信号序列’); (2)绘制信号x(n)的幅度谱和相位谱 k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’)(3)改变参数为:1,0734.2,4.0,10==Ω==TAα n=0:50; %定义序列的长度是50 A=1; %设置信号有关的参数 a=0.4; T=1; %采样率 w0=2.0734; x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定义的π,信号乘可采用“.*”close all %清除已经绘制的x(n)图形 subplot(3,1,1);stem(x); %绘制x(n)的图形 title(‘理想采样信号序列’); k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’) 2、单位脉冲序列 在MatLab中,这一函数可以用zeros函数实现: n=1:50; %定义序列的长度是50 x=zeros(1,50); %注意:MATLAB中数组下标从1开始

滤波器语音信号去噪讲解

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

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

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

信号系统处理 语音信号滤波处理

数字信号处理实验报告 实验名称:基于MATLAB对语音信号 进行分析及滤波处理 院系:物联网工程学院 班级:电子信息工程1101 姓名:

一、实验目的 综合计算运用数字信号处理的理论知识进行频谱分析和滤波器设计,通过理论推导得出相应的结论,培养发现问题、分析问题和解决问题的能力。并利用MATLAB作为工具进行实现,从而复习巩固课堂所学的理论知识,提高对所学知识的综合应用能力,并从实践上初步实现对数字信号的处理。此外,还系统的学习和实现对语音信号处理的整体过程,从语音信号的采集到分析、处理、频谱分析、显示和储存。 二、实验要求 1.分析原始语音信号的时域特性和频谱特性。 2.设计一个IIR滤波器,用该滤波器对语音信号进行滤波处理,分析滤波后信号的时域特性和频谱特性。 3.设计一个FIR滤波器,用该滤波器对语音信号进行滤波处理,分析滤波后信号的时域特性和频谱特性。 三、实验原理 1.采样定理:在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中最高频率fmax的2倍时(fs.max>=2fmax),采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍;采样定理又称奈奎斯特定理。 采样频率越高,即采样的时间间隔越短,对声音波形的表示越精确。 2.时域信号的FFT分析:信号的频谱分析就是计算机信号的傅里叶变换。连续信号与系统的傅里叶分析显然不便于用计算机进行计算,使其应用受到限制。而FFT是一种时域和频域均离散化的变换,适合数值运算,成为用计算机分析离散信号和系统的有力工具。对连续信号和系统,可以通过时域采样,应用DFT进行近似谱分析。 3.IIR数字滤波器设计原理利用双线性变换设计IIR滤波器(巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数Ha(s),然后由Ha(s)通过双线性变换可得所要设计的IIR滤波器的系统函数H(z)。如果给定的指标为数字滤波器的指标,则首先要转换成模拟滤波器的技术指标,这里主要是边界频率Wp和Ws的转换,对ap和as指标不作变化。边界频率的转换关系为∩=2/T tan(w/2)。接着,按照模拟低通滤波器的技术指标根据相应设计公式

matlab语音信号采集与初步处理要点

《matlab与信号系统》实验报告 学院: 学号: 姓名: 考核实验——语音信号采集与处理初步 一、课题要求 1.语音信号的采集 2.语音信号的频谱分析 3.设计数字滤波器和画出频率响应 4.用滤波器对信号进行滤波 5.比较滤波前后语音信号的波形及频谱 6.回放和存储语音信号 (第5、第6步我放到一起做了) 二、语音信号的采集 本段音频文件为胡夏演唱的“那些年”的前奏(采用Audition音频软件进行剪切,时长17秒)。运行matlab软件,在当前目录中打开原音频文件所在的位置,采用wavread函数对其进行采样,并用sound函数可进行试听,程序运行之后记下采样频率和采样点。 利用函数wavread对语音信号的采集的程序如下: clear; [y,fs,bits]=wavread('music.wav'); %x:语音数据;fs:采样频率;bits:采样点数sound(y,fs,bits); %话音回放 程序运行之后,在工作区间中可以看到采样频率fs=44100Hz,采样点bits=16

三、语音信号的频谱分析 先画出语音信号的时域波形,然后对语音号进行快速傅里叶变换,得到信号的频谱特性。语音信号的FFT频谱分析的完整程序如下: clear; [y,fs,bits]=wavread('music.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('原始信号频谱'); 程序结果如下图: 四、设计数字滤波器和画出频率响应 根据语音信号的特点给出有关滤波器的性能指标: 1)低通滤波器性能指标,fp=1000Hz,fc=1200 Hz,As=100dB,Ap=1dB; 2)高通滤波器性能指标,fc=4800 Hz,fp=5000 Hz As=100dB,Ap=1dB。

对周期方波信号进行滤波matlab的实现

对周期方波信号进行滤波 ) 1、生成一个基频为10Hz的周期方波信号; ) 2、设计一个滤波器,滤去该周期信号中40Hz以后的频率成分,观察滤波前后的信号波形和频谱。 )3、如果该信号x(t)淹没在噪声中(随机噪声用randn(1,N)生成,N为其样点数),试滤去噪声。 %采样频率取200Hz,可以改变看看。输入、输出信号频谱同时绘制在一起对比 %采用低通滤波器,保留40Hz以下频率成分 clear fs=200; t=0:1/fs:1; x=square(2*pi*10*t); wp=40*2/fs; ws=45*2/fs; Rp=3;Rs=45;Nn=128; [N,wn]=buttord(wp,ws,Rp,Rs) [b,a]=butter(N,wn,'low') y=filter(b,a,x); figure(1) plot(t,x,'r-',t,y) %grid on axis([0 1.2 -2 2]) title('红色代表原信号,蓝色代表只保留40Hz以下频率成分') figure(2) [H,W]=freqz(b,a); k=0:511; plot((fs/2)/512*k,abs(H)); grid on title('滤波器频率响应') T=1/fs; N=4*(fs/10); n=0:N-1; xn=square(2*pi*10*n*T); X=fftshift(fft(xn,512)); xk=1/N*X;

Y=fftshift(fft(y,512)); yk=1/N*Y; figure(3) plot(-fs/2+fs/512*k,abs(xk)) grid on legend('方波信号的频谱') figure(4) plot(-fs/2+fs/512*k,abs(xk),'b',-fs/2+fs/512*k,abs(yk),'r') grid on legend('原信号的频谱','滤波后信号的频谱') %%%%%%%%%%%%%%%%%%%%保留40Hz频率成分%%%%%%%%%%%% %采样频率取200Hz,可以改变看看。输入、输出信号频谱同时绘制在一起对比 %采用带通滤波器,只保留40Hz频率成分 clear fs=200; t=0:1/fs:1; x=square(2*pi*10*t); wp=[35 45]*2/fs; ws=[30 50]*2/fs; Rp=3;Rs=45;Nn=128; [N,wn]=buttord(wp,ws,Rp,Rs) [b,a]=butter(N,wn,'bandpass') %只保留40Hz频率成分 y=filter(b,a,x); figure(1) plot(t,x,'r-',t,y) grid on axis([0 1.2 -1.2 1.2]) title('红色代表原信号,蓝色代表只保留40Hz频率成分') figure(2) [H,W]=freqz(b,a); k=0:511; plot((fs/2)/512*k,abs(H)); grid on title('滤波器频率响应') T=1/fs; N=4*(fs/10); n=0:N-1; xn=square(2*pi*10*n*T);

语音信号的处理与滤波

广西工学院 数字信号处理课程设计设计题目:语音信号的处理与滤波 系别: 学号: 姓名: 班级: 指导教师: 完成日期:

目录 1. 摘要 (3) 2.MATLAB简介 (3) 3.设计目的 (4) 4.设计内容 (4) 5.设计原理 (4) 6.设计步骤 (5) 7.总结与分析 (10) 8.参考资料 (10)

摘要 本课题分析了数字信号处理课程的重要性及特点,可以帮助理解与掌握课程中的基本概念、基本原理、基本分析方法;并利用MATLAB对语音信号进行分析和处理,要求采集语音信号后,在MATLAB软件平台进行频谱分析。用设计的数字滤波器对语音信号进行了滤波 MATLAB简介 MATLAB 是一种对技术计算高性能的语言。它集成了计算,可视化和编程于一个易用的环境中,在此环境下,问题和解答都表达为我们熟悉的数学符号。典型的应用有: ?数学和计算 ?算法开发 ?建模,模拟和原形化 ?数据分析,探索和可视化 ?科学与工程制图 ?应用开发,包括图形用户界面的建立 MATLAB是一个交互式的系统,其基本数据元素是无须定义维数的数组。这让你能解决很多技术计算的问题,尤其是那些要用到矩阵和向量表达式的问题。而要花的时间则只是用一种标量非交互语言(例如C或Fortran)写一个程序的时间的一小部分。 . 名称“MATLAB”代表matrix laboratory(矩阵实验室)。MATLAB最初是编写来提供给对由LINPACK和EINPACK工程开发的矩阵软件简易访问的。今天,MATLA B使用由LAPACK和ARPACK工程开发的软件,这些工程共同表现了矩阵计算的软件中的技术发展。 MATLAB已经与许多用户输入一同发展了多年。在大学环境中,它是很多数学类、工程和科学类的初等和高等课程的标准指导工具。在工业上,MATLAB是高产研究、开发和分析所选择的工具。 MATLAB以一系列称为工具箱的应用指定解答为特征。对多数用户十分重要的是,工具箱使你能学习和应用专门的技术。工具箱是是MATLAB函数(M-文件)的全面的综合,这些文件把MATLAB的环境扩展到解决特殊类型问题上。具有可用工具箱的领域有:信号处理,控制系统神经网络,模糊逻辑,小波分析,模拟等等。

基于matlab的语音信号的采集与处理

文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。 目录 第1章前言 ................................................................................................... 错误!未定义书签。第2章语音信号分析处理的目的和要求 ................................................... 错误!未定义书签。 2.1MATLAB软件功能简介................................................................. 错误!未定义书签。 2.2课程设计意义 .................................................................................. 错误!未定义书签。第3章语音信号的仿真原理..................................................................... 错误!未定义书签。第4章语音信号的具体实现..................................................................... 错误!未定义书签。 4.1语音信号的采集................................................................................ 错误!未定义书签。 4.2语音信号加噪与频谱分析................................................................ 错误!未定义书签。 4.3设计巴特沃斯低通滤波器................................................................ 错误!未定义书签。 4.4用滤波器对加噪语音滤波................................................................ 错误!未定义书签。 4.5比较滤波前后语音信号波形及频谱................................................ 错误!未定义书签。第5章总结................................................................................................... 错误!未定义书签。参考文献......................................................................................................... 错误!未定义书签。附录................................................................................................................. 错误!未定义书签。

应用matlab对语音信号进行频谱分析及滤波.

数字信号处理 —综合实验报告 综合实验名称:应用MatLab对语音信号进行 频谱分析及滤波 系: 学生姓名: 班级: 学号: 成绩: 指导教师: 开课时间学年学期

目录 一.综合实验题目 (1) 二、综合实验目的和意义 (1) 2.1 综合实验目的 (1) 2.2 综合实验的意义 (1) 三.综合实验的主要内容和要求 (1) 3.2 综合实验的要求: (2) 四.实验的原理 (2) 4.1 数字滤波器的概念 (2) 4.2 数字滤波器的分类 (2) (1)根据单位冲激响应h(n)的时间特性分类 (2) 五.实验的步骤 (3) 下面对各步骤加以具体说明。 5.1语音信号的采集 (3) 5.2 语音信号的频谱分析; (3) 5.3 设计数字滤波器和画出其频率响应 (5) 5.3.1设计数字滤波器的性能指标: (5) 5.3.2 用Matlab设计数字滤波器 (6) 5.6 设计系统界面 (19) 六、心得体会 (20) 参考文献: (21)

一.综合实验题目 应用MatLab对语音信号进行频谱分析及滤波 二、综合实验目的和意义 2.1 综合实验目的 为了巩固所学的数字信号处理理论知识,使学生对信号的采集、处理、传输、显示和存储等有一个系统的掌握和理解,再者,加强学生对Matlab软件在信号分析和处理的运用 综合运用数字信号处理的理论知识进行频谱分析和滤波器设计,通过理论推导得出相应结论,再利用 MATLAB 作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。 2.2 综合实验的意义 语言是我们人类所特有的功能,它是传承和记载人类几千年文明史,没有语言就没有我们今天人类的文明。语音是语言最基本的表现形式,是相互传递信息最重要的手段,是人类最重要、最有效、最常用和最方便的交换信息的形式。 语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展;它是研究用数字信号处理技术对语音信号进行处理的一门新兴学科,同时又是综合性的多学科领域和涉及面很广的交叉学科,因此我们进行语言信号处理具有时代的意义。 三.综合实验的主要内容和要求 3.1综合实验的主要内容: 录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;综合实验应完成的工作: (1)语音信号的采集; (2)语音信号的频谱分析;

语音信号处理实验报告

通信与信息工程学院 信息处理综合实验报告 班级:电子信息工程1502班 指导教师: 设计时间:2018/10/22-2018/11/23 评语: 通信与信息工程学院 二〇一八年 实验题目:语音信号分析与处理 一、实验内容 1. 设计内容 利用MATLAB对采集的原始语音信号及加入人为干扰后的信号进行频谱分析,使用窗函数法设计滤波器滤除噪声、并恢复信号。 2.设计任务与要求 1. 基本部分

(1)录制语音信号并对其进行采样;画出采样后语音信号的时域波形和频谱图。 (2)对所录制的语音信号加入干扰噪声,并对加入噪声的信号进行频谱分析;画出加噪后信号的时域波形和频谱图。 (3)分别利用矩形窗、三角形窗、Hanning窗、Hamming窗及Blackman 窗几种函数设计数字滤波器滤除噪声,并画出各种函数所设计的滤波器的频率响应。 (4)画出使用几种滤波器滤波后信号时域波形和频谱,对滤波前后的信号、几种滤波器滤波后的信号进行对比,分析信号处理前后及使用不同滤波器的变化;回放语音信号。 2. 提高部分 (5)录制一段音乐信号并对其进行采样;画出采样后语音信号的时域波形和频谱图。 (6)利用MATLAB产生一个不同于以上频段的信号;画出信号频谱图。 (7)将上述两段信号叠加,并加入干扰噪声,尝试多次逐渐加大噪声功率,对加入噪声的信号进行频谱分析;画出加噪后信号的时域波形和频谱图。 (8)选用一种合适的窗函数设计数字滤波器,画出滤波后音乐信号时域波形和频谱,对滤波前后的信号进行对比,回放音乐信号。 二、实验原理 1.设计原理分析 本设计主要是对语音信号的时频进行分析,并对语音信号加噪后设计滤波器对其进行滤波处理,对语音信号加噪声前后的频谱进行比较分析,对合成语音信号滤波前后进行频谱的分析比较。 首先用PC机WINDOWS下的录音机录制一段语音信号,并保存入MATLAB软件的根目录下,再运行MATLAB仿真软件把录制好的语音信号用audioread函数加载入MATLAB仿真软件的工作环境中,输入命令对语音信号进行时域,频谱变换。 对该段合成的语音信号,分别用矩形窗、三角形窗、Hanning窗、Hamming窗及Blackman窗几种函数在MATLAB中设计滤波器对其进行滤波处理,滤波后用命令可以绘制出其频谱图,回放语音信号。对原始语音信号、合成的语音信号和经过滤波器处理的语音信号进行频谱的比较分析。 2.语音信号的时域频域分析 在Matlab软件平台下可以利用函数audioread对语音信号进行采样,得到了声音数据变量y,同时把y的采样频率Fs=44100Hz放进了MATALB的工作空间。

基于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);

应用MATLAB对信号进行频谱分析及滤波

应用MATLAB对信号进行频谱分析及滤波fs=input('please input the fs:');%设定采样频率 N=input('please input the N:');%设定数据长度 t=0:0.001:1; f=100;%设定正弦信号频率 %生成正弦信号 x=sin(2*pi*f*t); figure(1); subplot(211); plot(t,x);%作正弦信号的时域波形 axis([0,0.1,-1,1]); title('正弦信号时域波形'); z=square(50*t); subplot(212) plot(t,z) axis([0,1,-2,2]); title('方波信号时域波形');grid; %进行FFT变换并做频谱图 y=fft(x,N);%进行fft变换 mag=abs(y);%求幅值 f=(0:N-1)*fs/N;%横坐标频率的表达式为f=(0:M-1)*Fs/M; figure(2); subplot(211); plot(f,mag);%做频谱图 axis([0,1000,0,200]); title('正弦信号幅频谱图'); y1=fft(z,N);%进行fft变换 mag=abs(y1);%求幅值 f=(0:N-1)*fs/N;%横坐标频率的表达式为f=(0:M-1)*Fs/M; subplot(212); plot(f,mag);%做频谱图 axis([0,1000,0,200]); title('方波信号幅频谱图');grid; %求功率谱 sq=abs(y);

power=sq.^2; figure(3) subplot(211); plot(f,power); title('正弦信号功率谱');grid; sq1=abs(y1); power1=sq1.^2; subplot(212); plot(f,power1); title('方波信号功率谱');grid; %用IFFT恢复原始信号 xifft=ifft(y); magx=real(xifft); ti=[0:length(xifft)-1]/fs; figure(4); subplot(211); plot(ti,magx); axis([0,0.1,-1,1]); title('通过IFFT转换的正弦信号波形'); zifft=ifft(y1); magz=real(zifft); ti1=[0:length(zifft)-1]/fs; subplot(212); plot(ti1,magz); title('通过IFFT转换的方波信号波形');grid; please input the fs:1000 please input the N:1024

根据MATLAB的加噪语音信号的滤波

《计算机仿真技术》 基于MATLAB的加噪语音信号的滤波学生姓名: 专业:电子信息工程 班级: 学号: 指导教师: 完成时间:2017年12月

一.滤波器的简述 在MATLAB环境下IIR数字滤波器和FIR数字滤波器的设计方法即实现方法,并进行图形用户界面设计,以显示所介绍迷你滤波器的设计特性。 在无线脉冲响应(IIR)数字滤波器设计中,先进行模拟滤波器的设计,然后进行模拟-数字滤波器转换,即采用脉冲响应不变法及双线性Z变化法设计数字滤波器,最后进行滤波器的频带转换。在有限脉冲响应(FIR)数字滤波器设计中,讨论了FIR线性相位滤波的特点和用窗口函数设计FIR数字滤波器两个问题。两类滤波器整个过程都是按照理论分析、编程设计、集体实现的步骤进行的。为方便分析直观者直观、形象、方便的分析滤波器的特性,创新的设计出图形用户界面---滤波器分析系统。整个系统分为两个界面,其内容主要包括四个部分:System(系统)、Analysis(分析)、Tool(工具)、Help(帮助)。 数字滤波在DSP中占有重要地位。数字滤波器按实现的网络结构或者从单位脉冲响应,分为IIR(无限脉冲响应)和FIR(有限脉冲响应)滤波器。如果IRR 滤波器和FIR滤波器具有相同的性能,那么通常IIR滤波器可以用较低的阶数获得高的选择性,执行速度更快,所有的存储单元更少,所以既经济又高效。二.设计要求 1.在matlab平台上录制一段语音信号; 2.完成语音信号的谱分析; 3.对语音信号进行加噪以及加噪后信号的谱分析; 4.选择合适的滤波器进行滤波,确定相关指标; 5.实现滤波过程,显示滤波后的结果,并进行谱分析。 三.实验内容与步骤 1、语音信号的录入

数字信号处理期末实验 语音信号分析与处理

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

2. 设计步骤 (1)选择一个语音信号或者自己录制一段语音文件作为分析对象; (2)对语音信号进行采样,并对语音信号进行FFT频谱分析,画出信号的时域波形图和频谱图; (3)利用MATLAB自带的随机函数产生噪声加入到语音信号中,对语音信号进行回放,对其进行FFT频谱分析; (4)设计合适滤波器,对带有噪声的语音信号进行滤波,画出滤波前后的时域波形图和频谱图,比较加噪前后的语音信号,分析发生的变化; (5)对语音信号进行回放,感觉声音变化。 3. 设计原理及内容 3.1 理论依据 (1)采样频率:采样频率(也称采样速度或者采样率)定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样频率只能用 于周期性采样的采样器,对于非周期采样的采样器没有规则限制。通俗的讲,采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位之间内计算机得到的声音样本数据就越多,对声音波形的表示也越精确。(2)采样位数:即采样值或取样值,用来衡量声音波动变化的参数。 (3)采样定理:在进行模拟/数字信号的的转换过程中,当采样频率f大于信s.max 号中,最高频率f的2倍时,即:f>=2f,则采样之后的数字信号完整的maxmaxs.max 保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的 5~10倍;采样频率又称乃奎斯特定理。 (4)时域信号的FFT分析:信号的频谱分析就是计算信号的傅立叶变换。连续信号与系统的傅立叶分析显然不便于直接用计算机进行计算,使其应用受到限制。而FFT是一种时域和频域均离散化的变换,适合数值计算,成为用计算机分析 离2 山东建筑大学信电学院课程设计说明书 散信号和系统的的有力工具。对连续信号和系统,可以通过时域采样,应用DFT 进行近似谱分析。

:基于MATLAB的IIR滤波器的语音信号去噪.

滤波器设计在数字信号处理中占有极其重要的地位,本次课程设计主要是录制一段语音信号对其进行加噪处理,然后利用IIR低通滤波器对加有随机噪声的语音信号进行滤波处理及时频谱分析,画出滤波之后的频谱图与时域波形,并对信号滤波处理前后进行分析比较,分析信号的变化。通过对对所设计滤波器的仿真和频率特性分析,由仿真结果可以看出,所设计的滤波器能够实现对语音信号的语音有效去噪,并对滤波前后的语音信号进行对比。 关键词:去噪;滤波器;MATLAB

一语音信号去噪的设计任务................................................................................................ 错误!未定义书签。二语音信号去噪的基本原理. (3) 2.1 数字滤波器的基本设计方法 (3) 2.2 双线性变换法 (4) 2.3数字滤波器设计基本思想 (5) 2.4 数字滤波器的设计步骤 (6) 2.5采样定理 (7) 三基于MATLAB的仿真结果及结果分析 (10) 3.1 IIR高通滤波器的仿真 (10) 3.2 原始语音信号的录制 (10) 3.3 语音信号的时频域分析 (11) 3.4 加随机噪声后的时频域分析 (12) 3.5 滤波前后的时频域比较 (15) 总结 (17) 参考文献 (18) 致谢 (19) 附录 (20)

一 基本原理 1.1 数字滤波器的基本设计方法 IIR 数字滤波器的设计一般有两种方法:一个是借助模拟滤波器的设计方法进行。其设计步骤是,先设计模拟滤波器,再按照某种方法转换成数字滤波器。这种方法比较容易一些,因为模拟滤波器的设计方法已经非常成熟,不仅有完整的设计公式,还有完善的图表供查阅;另外一种直接在频率或者时域内进行,由于需要解联立方程,设计时需要计算机做辅助设计。其设计步骤是:先设计过渡模拟滤波器得到系统函数)(s H a ,然后将)(s H a 按某种方法转换成数字滤波器的系统函数)(z H [1]。为了保证转换后的)(z H 稳定且满足技术指标要求,对转换关系提出两点要求: (1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。 (2)数字滤波器的频率相应模仿模拟滤波器的频响特性,s 平面的虚轴映射为z 平面的单位圆,相应的频率之间呈线性关系。 利用模拟滤波器成熟的理论设计IIR 数字滤波器的过程是: (1)确定数字低通滤波器的技术指标:通带边界频率p ω、通带最大衰减p α、阻带截止频率s ω、阻带最小衰减s α。 (2)将数字低通滤波器的技术指标转换成相应的模拟低通滤波器的技术指标。 (3)按照模拟低通滤波器的技术指标设计过渡模拟低通滤波器。 (4)用所选的转换方法,将模拟滤波器)(s H a 转换成数字低通滤波器系统函数)(z H 。 IIR 数字滤波器的设计流程图2-1如下: 变换 Ω Ω=g(ω ) 变换 S=f (Z ) 图2-1 IIR 数字滤波器的设计步骤流程图[1] 成熟的模拟滤波器设计方法主要有脉冲响应不变法和双线性变换法。 模拟滤波器 技术指标 数字滤波器 技术指标 模拟滤波器 设计方法 模拟滤波器 )(S Ha 数字滤波器 )(Z H

含噪声的语音信号分析与处理设计讲解

课程设计任务书 学生姓名:苗强强专业班级:电信1204 指导教师:阙大顺沈维聪工作单位:信息工程学院 题目: 程控宽带放大器的设计 初始条件: 程控宽带放大器是电子电路中常用模块,在智能仪器设备及嵌入式系统中有广 泛的应用。因此对于电子信息专业的技术人员来说,熟练掌握该项技术很有必要。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体 要求) (1)输入阻抗>1KΩ,单端输入,单端输出,放大器负载电阻为600Ω; (2)3dB通频带10kHz~6MHz,在20kHz~5MHz频带内增益起伏<1dB。 (3)增益调节范围10 dB~40 dB,(通过键盘操作调节)。 (4)发挥部分:当输入频率或输出负载发生变化时,通过微处理器自动调节,保持 放大器增益不变。 (5)电路通过仿真即可。 时间安排: 1. 任务书下达,查阅资料 1天 2. 制图规范、设计说明书讲解 2天 3. 设计计算说明书的书写 5天 4. 绘制图纸 1天 5. 答辩 1天 指导教师签名:年月日 系主任(或责任教师)签名:年月日

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

基于matlab声音信号的滤波去噪处理

基于matlab声音信号的滤波去噪处理 摘要 滤波器设计在数字信号处理中占有极其重要的地位FIR数字滤波器和IIR滤波器是滤波器设计的重要组成部分Matlab功能强大简单易学编程效率高深受广大科技工作者的欢迎特别是Matlab还具有信号分析工具箱不需具备很强的编程能力就可以很方便地进行信号分析处理和设计利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器课题基于MATLAB有噪音语音信号处理的设计与实现综合运用数字信号处理的理论知识对加噪声语音信号进行时域频域分析和滤波通过理论推导得出相应结论再利用MATLAB作为编程工具进行计算机实现在设计实现的过程中使用窗函数法来设计FIR数字滤波器用巴特沃斯切比雪夫和双线性变法设计IIR数字滤波器并利用MATLAB作为辅助工具完成设计中的计算与图形的绘制通过对对所设计滤波器的仿真和频率特性分析可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器过程简单方便结果的各项性能指标均达到指定要求 目录 摘要 ABSTRACT 绪论 11研究的目的和意义 12国内外同行的研究状况 13本课题的研究内容和方法语音信号去噪方法的研究 21去噪的原理 22去噪的方法去噪和仿真的研究 31语音文件在MATLAB平台上的录入与打开 32 原始语音信号频谱分析及仿真 33 加噪语音信号频谱分析及仿真 34 去噪及仿真 35 结合去噪后的频谱图对比两种方式滤波的优缺点总结致谢 参考文献 1绪论 11研究的目的和意义 语音信号的采集与分析技术是一门涉及面很广的交叉科学它的应用和发展与语音学声音测量学电子测量技术以及数字信号处理等学科紧密联系语音是人类获取信息的重要来源和利用信息的重要手段在信号传输过程中由于实验条件或各种其他主观或客观条件的原因语音处理系统都不可避免地要受到各种噪声的干扰噪声不但降低了语音质量和语音的可懂度而且还将导致系统性能的急剧恶化严重时使整个系统无法正常工作 MATLAB是由美国mathworks公司发布的主要面对科学计算可视化以及交互式程序设计的高科技计算环境它将数值分析矩阵计算科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中为科学研究工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案并在很大程度上摆脱了传统非交互式程序设计语言如CFortran的编辑模式代表了当今国际科学计算软件的先进水平其强大的数据处理能力可以极大程度上削弱噪声影响还原出真实的语音信号相符度在90以上 12 国内外同行研究现状 20世纪60年代中期形成的一系列数字信号处理的理论和算法如数字滤波器快速傅立叶变换FFT等是语音信号数字处理的理论和技术基础随着信息科学技术的

基于matlab的语音信号滤波处理——数字信号处理课程设计

数字信号处理课程设计 题目:基于matlab的语音信号滤波处理学院:物理与电子信息工程 专业:电子信息工程 班级: B07073041 学号: 200932000066 姓名:高珊 指导教师:任先平

摘要: 语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴学科,是目前发展最为迅速的学科之一,通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。 Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换成离散的数据文件,然后用起强大的矩阵运算能力处理数据。这为我们的本次设计提供了强大并良好的环境! 本设计要求自己录制一段自己的语音后,在MATLAB软件中采集语音信号、回放语音信号并画出语音信号的时域波形和频谱图。再在Matlab中分别设计不同形式的FIR数字滤波器。之后对采集的语音信号经过不同的滤波器(低通、高通、带通)后,观察不同的波形,并进行时域和频谱的分析。对比处理前后的时域图和频谱图,分析各种滤波器对于语音信号的影响。最后分别收听进行滤波后的语音信号效果,做到了解在怎么样的情况下该用怎么样的滤波器。

目录 1.设计内容 (4) 2.设计原理 (4) 2.1语音信号的时域分析 (4) 2.2语音信号的频域分析 (5) 3.设计过程 (5) 3.1实验程序源代码 (6) 3.1.1原语音信号时域、频域图 (6) 3.1.2低通滤波器的设计 (6) 3.1.3高通滤波器的设计 (7) 3.1.4带通滤波器的设计 (8) 3.1.5语音信号的回放 (9) 3.2调试结果描述 (10) 3.3所遇问题及结果分析 (15) 3.3.1所遇主要问题 (16) 3.3.2结果分析 (16) 4.体会与收获 (17) 5.参考文献 (17)

相关主题
文本预览
相关文档 最新文档