Savitsky-Golay Filter Problem - Smoothing 3D line

Illustration
Victoria - 2021-02-12T10:27:08+00:00
Question: Savitsky-Golay Filter Problem - Smoothing 3D line

I wanted to smooth a 3d line using the Savitzky-Golay filter, but for this example is seems to not work properly. Any ideas why, and how to fix it?     % Savitzky–Golay filter (sgolayfilt) - smoothing individual axes windowWidth = 27; %Standard example values polynomialOrder = 3; xsg=sgolayfilt(points(:,1),polynomialOrder, windowWidth); ysg=sgolayfilt(points(:,2),polynomialOrder, windowWidth); zsg=sgolayfilt(points(:,3),polynomialOrder, windowWidth); xyzsg = [xsg,ysg,zsg]; clf() hold on plot3(points(:,1),points(:,2),points(:,3),'bo') plot3(xyzsg(:,1),xyzsg(:,2),xyzsg(:,3),'gx') hold off

Expert Answer

Profile picture of Neeta Dsouza Neeta Dsouza answered . 2025-11-20

How many elements are in your array? 27 looks like an incredibly wide window for your data. I would have used a width of 5 to 9 elements. Try that and see how it works out.

 


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!