⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yyhwiener.m

📁 这是一个wiener滤波程序
💻 M
字号:
load handel
%sound(5*y,Fs)    %原始语音信号,Fs=9192
d=y;
d=d*8;
d=d';
fq=fft(d,8192);
subplot(3,1,1);
f=Fs*(0:4095)/8192;
plot(f,abs(fq(1:4096)));
title('原始语音信号的频域图形');
xlabel('频率 f');
ylabel('FFT');
[m,n]=size(d);
x_noise=randn(1,n);
x=d+x_noise;    %加入噪声后的语音信号,噪声为(0,1)分布的高斯白噪声
fq=fft(x,8192);
subplot(3,1,2);
plot(f,abs(fq(1:4096)));
title('加入噪声后语音信号的频域图形');
xlabel('频率 f');
ylabel('FFT');

yyhxcorr=xcorr(x(1:4096));
size(yyhxcorr);
A=yyhxcorr(4096:4595);
yyhdcorr=xcorr(d(1:4096),x(1:4096));
size(yyhdcorr);
B=yyhdcorr(4096:4595);
M=500;
yyhresult=wienerfilter(x,A,B,M);   %用维纳滤波进行去噪
yyhresult=yyhresult(300:8192+299);
fq=fft(yyhresult);
subplot(3,1,3);
f=Fs*(0:4095)/8192;
plot(f,abs(fq(1:4096)));
title('经过维纳滤波后语音信号的频域图形');
xlabel('频率 f');
ylabel('FFT');










⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -