我设计了以下滤波器,希望找到输入[x]与滤波后的信号[Filtsig]之间的零相位延迟。我知道如何使用y = filtfilt(d,x),但我的Matlab仅支持以下情况:Case1 Filtsig = filtfilt(sos,g,x) Case2 Filtsig = filtfilt(b,a,x)
function Hd = untitled0
%UNTITLED0 Returns a discrete-time filter object.
% MATLAB Code
% Generated by MATLAB(R) 9.0 and the Signal Processing Toolbox 7.2.
% Generated on: 02-Apr-2019 20:28:37
% Butterworth Lowpass filter designed using FDESIGN.LOWPASS.
% All frequency values are in Hz.
Fs = 350; % Sampling Frequency
Fpass = 60; % Passband Frequency
Fstop = 70; % Stopband Frequency
Apass = 1; % Passband Ripple (dB)
Astop = 80; % Stopband Attenuation (dB)
match = 'stopband'; % Band to match exactly
% Construct an FDESIGN object and call its BUTTER method.
h = fdesign.lowpass(Fpass, Fstop, Apass, Astop, Fs);
Hd = design(h, 'butter', 'MatchExactly', match);
Filtsig=filtfilt(sos,g,x)
Filtsig=filtfilt(b,a,x)
% Construct an FDESIGN object and call its BUTTER method.
h = fdesign.lowpass(Fpass, Fstop, Apass, Astop, Fs);
Hd = design(h, 'butter', 'MatchExactly', match);
Filtsig=filtfilt(sos,g,x)
Filtsig=filtfilt(b,a,x)