File Exchange

image thumbnail

Baseline Fit

version 1.0.0.0 (2.98 KB) by Mirko Hrovat
A baseline fit is interpolated from selected points and then applied to the data.

46 Downloads

Updated 03 Aug 2009

View License

Baseline Fit each column in "x".

There did not seem to be a similar function in th file exchange. This routine is simply a wrapper for two Matlab routines, interp1 and ginput.

Syntax:
[ycorr,yfit] = bf(y,pts,avgpts,method,confirm);
ycorr = bf(y); ycorr = bf(y,method);

A baseline fit is interpolated from selected points and then applied to the data. The selected points are indices into the column and may be specified explicitly ("pts") or interactively.

Arguments following "y" may be in any order.

To provide some noise immunity, "avgpts" determines the width in points for the calculation of the mean y(pts).

The "method" controls the algorithm applied for the baseline fit, see Matlab's interp1. (Default is 'spline').

"confirm", if specified as the string 'confirm', will allow the user to see the result and to confirm it is acceptable. If not the user can reslect "pts".

Examples:
[y,yfit] = bf(y,'confirm','linear');
"y" will be plotted and the user is instructed to select points for the fit. A baseline will be linearly interpolated from the selected points and will be plotted together with "y". The user is prompted as to whether to redo the baseline selection. Upon completion, the corrected data "y" and the fitted baseline "yfit" are output.

ycorr = bf(y,5);
"y" is plotted and the user is instructed to select points for the fit. The baseline fit is based on the mean value of "y" over 5 points centered on the selected points. Cubic spline interpolation is used for the baseline fit. The corrected data "ycorr" is output.

ycorr = bf(y,[5,10,15,30,35,40],'pchip');
Points with the specified indices are used to calculate a baseline fit using the piecewise cubic Hermite interpolation method. No data is plotted. The baseline fit is based on the mean value of "y" over 3 points centered on the selected points. The corrected data "ycorr" is output.

Comments and Ratings (15)

Cecilia

Vikas Arora

Could someone please present this with examples including graphics ?
It is not working for me.

Saylee M.

This works nicely but changes the original values of y to relative values. Can you please advise, how do I do the baseline correction and readjust with the original values of y. I am trying to correct for a data obtained from photobleaching of few images.

It perfectly works. Where did you find the theoretical references to implement such an algorithm?

Céline B

Thanks !! Works perfectly for me, thank you very much :-)

Exactly what I needed. Well done.

Brad Ridder

Absolutely awesome.

Saved me a lot of time. Thanks!

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux