Question regarding the smooth filter function when using the Savitzky-Golay method
Show older comments
When using the following line of code what is my polynomial order and frame width for my Savitzky-Golay filter? What are these default settings?
Y = smoothdata(X,'sgolay');
Answers (2)
Jan
on 19 Aug 2021
According to the documentation, the degree can be determined and the window size is replied as 2nd output:
% SMOOTHDATA(...,'sgolay',...,'Degree',D) specifies the degree for the
% Savitzky-Golay filter.
% [B, WINSIZE] = SMOOTHDATA(...) also returns the moving window length.
You can set a breakpoint in the code of smoothdata to see, how the parameters are determined. In Matlab R2018b this line would be my point to start:
[dim,method,winsz,nanflag,t,sgdeg,dvars] = parseInputs(A, varargin{:});
Star Strider
on 19 Aug 2021
1 vote
From the documentation:
‘... a fixed window length that is determined heuristically’
‘The value of 'Degree' corresponds to the degree of the polynomial in the Savitzky-Golay filter that fits the data within each window, which is 2 by default.’
(I prefer 'Degree',3, so I always specify it.)
Categories
Find more on Smoothing and Denoising in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!