SMOOTHN provides a fast, unsupervised and robust discretized spline smoother for data of arbitrary dimension.
SMOOTHN(Y) automatically smoothes the uniformly-sampled array Y. Y can be any N-D multicomponent noisy array (e.g. time series, images, 3D data, 3D vector fields, tensors...).
To smooth a vector field or multi-component data, Y must be a cell array. For example, if you need to smooth a 3-D vectorial flow (Vx,Vy,Vz), use Y = {Vx,Vy,Vz}. The output Z is also a cell array which contains the smoothed components.
SMOOTHN can deal with missing (NaN) values (see screenshot and examples).
SMOOTHN(...,'robust') carries out a robust smoothing that minimizes the influence of outlying data (see screenshot and examples).
SMOOTHN is made automated by the minimization of the generalized cross-validation score.
Enter "help smoothn" in the Matlab command window for complete instructions and 1-D to 3-D examples.
-----
For details about the algorithm, refer to:
Garcia D. Robust smoothing of gridded data in one and higher dimensions with missing values.
Comput Statist Data Anal, 2010;54:1167-1178
http://www.biomecardio.com/pageshtm/publi/csda10.pdf
For velocity vector fields, also refer to:
Garcia D. A fast all-in-one method for automated post-processing of PIV data.
Exp Fluids, 2011;50:1247-1259.
http://www.biomecardio.com/pageshtm/publi/expfluids10.pdf
----- |