File Exchange

image thumbnail

Quick & easy smoothing

version 1.2 (7.51 KB) by

Z = SMOOTH1Q(Y) smoothes data Y using a DCT- or FFT-based spline smoothing method



View License

Z = SMOOTH1Q(Y,S) smoothes the data Y using a DCT- or FFT-based spline smoothing method. Non finite data (NaN or Inf) are treated as missing values.

S is the smoothing parameter. It must be a real positive scalar. The larger S is, the smoother the output will be. If S is empty (i.e. S = []), it is automatically determined by minimizing the generalized cross-validation (GCV) score.

Z = SMOOTH1Q(...,'robust') carries out a robust smoothing that minimizes the influence of outlying data.

Z = SMOOTH1Q(...,'periodic') assumes that the data to be smoothed must be periodic.

[Z,S] = SMOOTH1Q(...) also returns the calculated value for the smoothness parameter S so that you can fine-tune the smoothing subsequently if required.

SMOOTH1Q is a simplified and quick version of SMOOTHN for 1-D data. If you want to smooth N-D arrays use SMOOTHN.

1) Garcia D, Robust smoothing of gridded data in one and higher dimensions with missing values. Computational Statistics & Data Analysis, 2010.
2) Buckley MJ, Fast computation of a discretized thin-plate smoothing spline for image data. Biometrika, 1994.

Comments and Ratings (2)

robber john

Kirby Runyon

Very simple and effective method to smooth over high frequency noise in my geological topographic transect data.



Changes in the "bisquare" subfunction


New syntax

MATLAB Release
MATLAB 7.11 (R2010b)

Inspired by: Robust spline smoothing for 1-D to N-D data

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video