Matlab语音频谱分析,滤波

课程设计写了利用MATLAB进行语音采集的分析的小程序,供大家参考。   :)

注意:音频文件要和Matlab工程文件放在一起。

第一段程序:读取录制的一段音频进行时域频域分析并生成图片。

%123.m4a是我录制的音频文件名,使用时要改成自己的音频文件名

[yy,fs]=audioread('123.m4a');%读入音频文件
grid on; %网格线
hold on; %设置图像保持
YY=fft(yy);%对语音进行傅里叶变换
subplot(2,1,1); 
plot(yy,'b');%语音时域波形
title('语音时域波形');
subplot(2,1,2); 
plot(abs(YY),'b');%语音频域波形
title('语音频域波形');
sound(yy,fs);%播放语音

 

第二段程序:生成噪声,对噪声进行时域频域分析:

noise=0.1*randn(161791,2);%调用随机函数产生噪声
NOISE=fft(noise);%对噪声进行傅里叶变换
sound(noise,fs);%播放噪声
subplot(2,1,1); 
plot(noise,'b');%噪声时域波形
title('噪声时域波形');
subplot(2,1,2); 
plot(abs(NOISE),'b');%噪声频域波形
title('噪声频域波形');

第三段程序:语音信号加入噪声。分析频域时域波形。

[yy,fs]=audioread('123.m4a');%读入音频文件
noise=0.1*randn(161791,1);%调用随机函数产生噪声
yynoise=noise+yy;
YYNOISE=fft(yynoise);
subplot(2,1,1); 
plot(yynoise,'b');%音频加噪声时域波形
title('时域波形');
subplot(2,1,2); 
plot(abs(YYNOISE),'b');%音频加噪声频域波形
title('频域波形');
sound(yynoise,fs);%播放加入噪声的音频

 

 

  • 19
    点赞
  • 217
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值