Lab Parameter Configuration
Step 1: Initialize Virtual Experiment
Click the button below to generate the base signal before applying the Wiener Filter steps.
Execution Steps & Logic
Use the following sequence to process the signal through the Wiener Filter system:
Signal Visualization
Frequency Analysis (PSD)
Filter Characteristics
Results & Comparison
MATLAB Reference Code
For high-accuracy offline processing, use this equivalent MATLAB implementation of the Wiener Filter logic shown above:
wiener_denoise.m
Copy Script
% Wiener Filtering for Signal Denoising
fs = 1000; t = 0:1/fs:1-1/fs;
s = sin(2*pi*10*t); % Original Signal
x = awgn(s, 20, 'measured'); % Noisy Signal
% Wiener-Hopf Implementation
N = 100;
Rxx = xcorr(x, N-1, 'biased');
Rxx_mat = toeplitz(Rxx(N:end));
Rxy = xcorr(x, s, N-1, 'biased');
Rxy_vec = Rxy(N:end)';
% Filter Coefficients
w = Rxx_mat \ Rxy_vec;
s_est = filter(w, 1, x);
plot(t, s, t, s_est);
legend('Original', 'Estimated');