My strain time-domain data shown in figure 1 contains significant high-frequency noise. The segment I focus on is the strain rising phase shown in figure 2, where the amplitude can be truncated at 1e4. When applying FFT-based low-frequency filtering, I found that the selected time duration of the filtering region significantly affects the filtering results. How should I resolve this issue?
signal-data
clc;clear;close all;
%% load data
load('20250310signal1.mat');
t=ttt';
y=yyy';
%%
fs = fix(1/(t(2)-t(1)));
n = length(y);
Y = fft(y);
f = (0:n-1)*(fs/n);
%% Low-pass filtering (retain DC and low-frequency components)
cutoff = 12500; % cut-off frequency
Y_filtered = Y;
Y_filtered(f > cutoff) = 0;
%% Inverse FFT to obtain filtered signal
y_filtered = ifft(Y_filtered, 'symmetric');
%% Plot results
figure;
plot(t, y);hold on;
plot(t, y_filtered);
xlabel('Time (s)');
ylabel('Amplitude');
legend('data','filtered data')
发布者:admin,转转请注明出处:http://www.yc00.com/questions/1744849468a4597041.html
评论列表(0条)