wienerfilter_core.m

来自「AR模型的源程序。」· M 代码 · 共 28 行

M
28
字号
% File: WienerFilter_Core.m
% -------------------------
% This file is uesd to compute the autocorrelation matrix of x(n), the
% crosscorrelation vector of s(n) and x(n), and the Winer FIR filter h(n).

function WienerFilter_Core()
load WienerFilter_SeqGen.mat
crosscorrelation_vector = zeros(N, 1); % column vector
for k = 1: N
    for m = 1: N
        autocorrelation_matrix(k, m) = autocorrelation(k - m, signalvector_x);
    end
    crosscorrelation_vector(k) = crosscorrelation(k - 1, signalvector_x, signalvector_s);
end

% FIR Wiener Filter
h_fir = inv(autocorrelation_matrix) * crosscorrelation_vector;

% Ideal Wiener Filter
h_ide = zeros(N, 1);
for n = 1: N
    h_ide(n) = 0.238 * realpow(0.724, n - 1);
end

savefile = 'WienerFilter_Core.mat';
save(savefile, 'autocorrelation_matrix', 'crosscorrelation_vector', 'h_fir', 'h_ide');

clear;

⌨️ 快捷键说明

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