MATLAB未定义函数或变量 ‘wavread‘的很简单的解决办法

  • Post author:
  • Post category:其他


👨‍🎓

个人主页:


研学社的博客


💥💥💞💞

欢迎来到本博客

❤️❤️💥💥



🏆博主优势:

🌞🌞🌞


博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️

座右铭:


行百里者,半于九十。

📋📋📋


本文目录如下:


🎁🎁🎁


目录


💥1 概述


📚2 解决办法


🎉3 参考文献



💥1 概述

关于

MATLAB

未定义函数或变量 ‘wavread’的很简单的解决办法


📚


2 解决办法

有很多博客说涉及到了采样等等问题,但“wavread”移除后可以直接使用“audioread”进行代替

%实验要求一:谱减法语音降噪

clear all; clc; close all;

[xx, fs] = wavread(‘C5_2_y.wav’);           % 读入数据文件

xx=xx-mean(xx);                         % 消除直流分量

x=xx/max(abs(xx));                      % 幅值归一化

IS=0.25;                                % 设置前导无话段长度

wlen=200;                               % 设置帧长为25ms

inc=80;                                 % 设置帧移为10ms

SNR=5;                                  % 设置信噪比SNR

N=length(x);                            % 信号长度

time=(0:N-1)/fs;                        % 设置时间

signal=awgn(x,SNR,’measured’,’db’);               % 叠加噪声

snr1=SNR_Calc(x,signal);            % 计算初始信噪比

NIS=fix((IS*fs-wlen)/inc +1);           % 求前导无话段帧数

a=4; b=0.001;                           % 设置参数a和b

output=SpectralSub(signal,wlen,inc,NIS,a,b);% 谱减

snr2=SNR_Calc(x,output);            % 计算谱减后的信噪比

snr=snr2-snr1;

fprintf(‘snr1=%5.4f   snr2=%5.4f   snr=%5.4f\n’,snr1,snr2,snr);

% 作图

subplot 311; plot(time,x,’k’); grid; axis tight;

title(‘纯语音波形’); ylabel(‘幅值’)

subplot 312; plot(time,signal,’k’); grid; axis tight;

title([‘带噪语音 信噪比=’ num2str(SNR) ‘dB’]); ylabel(‘幅值’)

subplot 313; plot(time,output,’k’);grid;%hold on;

title(‘谱减后波形’); ylabel(‘幅值’); xlabel(‘时间/s’);



🎉3




参考文献


部分理论来源于网络,如有侵权请联系删除。

[1]王宏,潘金贵.基于共振峰增强的语音信号共振峰频率估计[J].计算机应用与软件,2008(11):140-142+193.



版权声明:本文为weixin_46039719原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。