- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab音频信号处理实验报告
MATLAB音频信号处理实验
南昌航空大学信息工程学院
课程实验报告
实验名称: 实验时间: 2014年4月23日
指导教师:
班级 :
学号 :
姓名 :
成绩 :
南昌航空大学实验报告
2014 年 4 月 23 日
课程名称: 数字信号处理 实验名称: 音频信号处理 班级:姓名: 学号: 指导老师评定: 签名:
一、实验目的
(1)进一步加深DFT算法原理和基本性质的理解;
(2)熟悉FFT算法原理;
(3)理解掌握音频信号各参数的意义;
(4)设计低通滤波器。
二、实验内容
(1)对一个音频信号用FFT进行谱分析;
(2)对该音频信号进行放大或衰减;
(3)对该音频信号加入噪声与去掉噪声处理。
三、实验原理
语音信号是基于时间轴上的一维数字信号,在这里主要是对语音信号进行频域上的分析。在信号分析中,频域往往包含了更多的信息。对于各种波形,我们都可以用一种方法来分析,就是傅立叶变换:将时域的波形转化到频域来分析。于是,本实验就从频域的角度对信号进行分析,并通过分析频谱来设计出合适的滤波器。当然,这些过程的实现都是在MATLAB软件上进行的,MATLAB软件在数字信号处理上发挥了相当大的优势。
1.语音信号的读取
[y,fs,bits]=wavread(#39;Blip#39;,[N1 N2]);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。[N1 N2]表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)。
2.语音信号的播放
sound(x,fs,bits); 用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的%26ldquo;函数表达式%26rdquo;)也就是说可以像处理一个信号表达式一样处理这个声音信号。
3.FFT的MATLAB实现
在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换。函数FFT用于序列快速傅立叶变换。函数的一种调用格式为y=fft(x),其中,
x是序列,y是序列的FFT,x可以为一向量或矩阵,若x为一向量,y是x的FFT。且和x相同长度。若x为一矩阵,则y是对矩阵的每一列向量进行FFT。如果x长度是2的幂次方,函数fft执行高速基-2FFT算法;否则fft执行一种混合基的离散傅立叶变换算法,计算速度较慢。函数FFT的另一种调用格式为
y=fft(x,N),式中,x,y意义同前,N为正整数。函数执行N点的FFT。若x为向量且长度小于N,则函数将x补零至长度N。若向量x的长度大于N,则函数截短x使之长度为N。若x 为矩阵,按相同方法对x进行处理。经函数fft求得的序列y一般是复序列,通常要求其幅值和相位。MATLAB提供求复数的幅值和相位函数:abs,angle,这些函数一般和FFT同时使用。函数abs(x)用于计算复向量x的幅值,函数angle(x)用于计算复向量的相角,以弧度表示。
四、程序清单及分析
(A)本实验的语音信号是通过查找电脑系统存在的语音信号所得,ding.wav信号的比特率为176bps.
[S1,fs,bits] = wavread(#39;ding.wav#39;);
figure(1);
plot(S1);
title(#39;原始信号波形#39;);
figure(2);
F = fft(S1);
plot(abs(F));
title(#39;原始信号频谱#39;
);
图1原始信号波形
图2 原始信号频谱
(B) 信号放大后的声音未画出图形,但是经过听声音认证,语音信号的声音确实放大了,可见,可以通过把信号乘以一个系数的方法进行放大。
S2 = S1 * 4; %对语音信号进行放大
wavwrite(S2,22000,8,#39;dingaloud.wav#39;);%生成放大后的语音信号
%sound(S2);
(C) 本实验产生噪声的方法是通过对语音信号进行调制,调制后的语音信号即高频信号,故可以把该信号当作是噪声信号,并与原始信号进行叠加,这样得到的信号即是加入了噪声的信号。信号调制的代码如下:
fc=10000; %载波频率
y1=modulate(S1,fc,fs,#39;fm#39;); %对原语音信号调制
Y1=fft(y1,40000); %采样点数40000
figure(3);
subplot(211);plot(y1);title(#39;调制后信号波形#39;);
subplot(212);plot(abs(Y1));title(#39;调制后信号频谱#39;);
%sound
文档评论(0)