信号分析作业

更新时间:2023-11-11 19:21:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

西安理工大学

研究生课程论文/研究报告

课程名称:数字信号分析 任课教师:郑建明

论文/研究报告题目:Matlab声音信号的分析和处理 完成日期:2013年04月15日 学科:机械设计

姓名:邹德志(1108020204) 姓名:李 健(1108020189) 成绩:

Matlab声音信号的分析和处理

摘要:本文利用matlab实现了对声音信号的采集及相应频谱分析,并且运用滤波器对采集的语音信号进行了滤波处理,简单实现了声音信号的处理。

关键词:MATLAB;语音信号;信号采集;滤波

引言:

语音信号处理是信号处理中的重要分支之一。它包括的主要方面有:语音的识别,语言的理解,语音的合成,语音的增强,语音的数据压缩等。各种应用均有其特殊问题。语音识别是将待识别的语音信号的特征参数即时地提取出来,与已知的语音样本进行匹配,从而判定出待识别语音信号的音素属性。关于语音识别方法,有统计模式语音识别,结构和语句模式语音识别,利用这些方法可以得到共振峰频率、音调、嗓音、噪声等重要参数,语音理解是人和计算机用自然语言对话的理论和技术基础。语音合成的主要目的是使计算机能够讲话。为此,首先需要研究清楚在发音时语音特征参数随时间的变化规律,然后利用适当的方法模拟发音的过程,合成为语言。其他有关语言处理问题也各有其特点。语音信号处理是发展智能计算机和智能机器人的基础,是制造声码器的依据。语音信号处理是迅速发展中的一项信号处理技术。

然而这所有的基础在于语音信号的采集和处理上,关于声音信号的采集和处理是工业应用中经常要解决和处理的问题,如何进行声音信号的采集和处理,也是信号处理中一项非常有意义的工作。

Matlab是一种功能强大,效率高,交互性好的数值计算和可视化计算机高级语言。它将数值分析,信号处理和图形显示有机的融为一体,形成一个极其方便,用户界面友好的操作环境。本文采用的就是基于Matlab的声音信号的采集和分析处理。

一、处理内容:

1,对简单的语音信号进行采集 2,对信号进行频谱分析

3,用各种滤波器对采集的信号进行处理

二、处理过程:

1、语音信号采样

利用录音软件,录制语音信号,语音信号为男女的声音,将录制的结果保存(录制歌曲“声音文件”,保存为:shengyin.wav。)然后再Matlab软件平台下利用wavread函数对录制的语音信号进行采样,记住采样频率和采样点数。本文的函数具体如下:

[y,fs]=wavread('C:\\Documents and Settings\\Administrator\\桌面\\shengyin.wav');

2、语音信号的频谱分析

首先画出语音信号的时域波形,然后对语音信号进行快速傅里叶变换,得到信号的频谱特性。

在各种信号序列中,有限时长序列占着重要的地位,为这样的信号的处理,可以使用离散傅里叶变换进行分析,离散傅里叶变化不但可以很好的反映序列的频谱特性,而且易于用快速算法(FFT)在计算机上进行分析。有限时长序列的DFT是其在z变化在单位圆上的等距采样,或者说是序列傅里叶等距采样,因此可以用于序列的谱分析。FFT是它的一种快速算法,它是对变换式进行一次次分解,使其成为若干小数据点的组合,从而减少运算量。MATLAB为快速傅里叶变换提供了一系列丰富的数学函数,主要的有:FFT、IFFT、FFTN、FFT2等。

FFT函数的调用方式:Y=fft(x) Y=fft(x,n) 谱分析的原理:时域分析只能反映信号的幅值随时间的变化情况,除单频率分量的简单波形外,很难明确的提示出信号的频率组成和各频率分量的大小,而谱分析很好的解决了这个问题。为了直观的反映信号的频率范围,通常要对傅里叶变换的结果用图形的方式进行标示,及为频谱图,我们可以分别得到幅值谱,相位谱,实部虚部频谱。

3、设计数字滤波器并画出其频率响应波形

设计低通,高通,带通滤波器,对信号进行滤波处理,画出其相应的响应。 数字滤波器是一种广泛使用的信号处理工具,它被广发应用于声音信号的处理,图像信号的处理,生物信号及其他的广发的领域中。数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。数字滤波器作为一个离散时间系统,它是按预定的算法,将输入连续的时间信号转换为所要求的输出离散时间信号的特定功能装置。应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和A/D转换。根据抽样定理:数字滤波器输入信号的抽样率应大于被处理信号带宽的两倍,其频率响应具有以抽样频率为间隔的周期重复特性,且以折叠频率即1/2抽样频率点呈镜

像对称。高精度、高可靠性、可程控改变特性或复用、便于集成等是对数字滤波器的基本要求。

数字滤波器的分类:数字滤波器可分为低通、高通、带通、带阻和全通等类型。当然也可以分为时不变的或时变的、因果的或非因果的、线性的或非线性的。现在应用最为广泛的是线性、时不变数字滤波器。

滤波器的原理:

X(n)H(n)Y(n)

图2

如图所示,输入输出关系是:Y(n)=X(n)*H(n)

当输入信号X(n)通过滤波器系统H(n)后,其输出Y(n)中不含有的频率成分,仅使错误!未找到引用源。的信号通过,因此滤波器的形状不同,其滤波器后的信号结果也不同。

数字滤波器设计步骤:

(1) 根据给定的滤波器设计要求,得到参数化描述,即通带,阻带截止频率,通带阻带纹波等数据。

(2) 找一个数字系统函数G(z),使其频率响应逼近设计要求。 (3) 择合适的滤波器结构对满足要求的传递函数G(z)进行实现。 4、比较处理前后的信号的波形及频谱

对处理前后的波形进行观察,分析各个滤波器的作用。 5、回放语音信号,得出总结

回放声音信号,感觉处理后的声音信号和原始的声音信号的差别。 程序:

clear all; close all; clc

[a,fs,bit]=wavread('g:\\work\\陪你一起看草原.wav'); size(a);

y1=a(:,1);

a1=y1(1000:600000);

%sound(a1,fs); %播放原的信号

N1=length(a1); n1=0:[N1-1];

x1=0.05*cos(2*pi*3000*n1/fs); x2=0.05*cos(2*pi*5000*n1/fs); x3=0.05*cos(2*pi*8000*n1/fs); x4=x1+x2+x3; figure;

plot(x4(1:100));%叠加余弦信号

F1=fft(x4,N1);%叠加余弦信号傅立叶变换 w=2/N1*[0:N1-1]; figure

plot(w,abs(F1));

title('叠加余弦信号频谱');%叠加余弦信号频谱 xlabel('f'); ylabel('幅度');

y2=a1+x4';

%sound(y2,fs); %播放叠加余弦音乐信号 figure;

plot(y2); %叠加余弦音乐信号

F2=fft(y2,N1); %叠加余弦音乐信号傅立叶变换 figure

plot(w,abs(F2));

title('余弦噪声和音乐信号频谱叠加'); %叠加余弦音乐信号频谱 xlabel('f'); ylabel('幅度');

[N,Wc]=buttord(0.06,0.3,1,50); [B,A]=butter(N,Wc); [H,W]=freqz(B,A); figure

plot(W/pi,abs(H));

title('数字巴特沃斯滤波器'); %数字巴特沃斯滤波器

y3=filter(B,A,y2); %滤波后信号 fa=fft(a1,N1); fy=fft(y3,N1); figure

subplot(3,1,1),plot(w,abs(fa)); title('原信号频谱');

subplot(3,1,2),plot(w,abs(F2));

title('余弦噪声和音乐信号叠加频谱'); %叠加音乐信号频谱 subplot(3,1,3),plot(w,abs(fy));

title('数字巴特沃斯滤波器滤波频谱'); %滤波后频谱

%sound(y3,fs); %播放滤波后音乐信号 r=rand(N1,1)-0.5; yr=a1+r; figure; plot(yr);

本文来源:https://www.bwwdw.com/article/52kv.html

Top