spc.fit.poly {hyperSpec} | R Documentation |
Polynomial Baseline Fitting These functions fit polynomal baselines.
Description
Both functions fit polynomials to be used as baselines. If apply.to
is NULL
, a hyperSpec
object with the polynomial coefficients
is returned, otherwise the polynomials are evaluated on the spectral range
of apply.to
.
Usage
spc.fit.poly(
fit.to,
apply.to = NULL,
poly.order = 1,
offset.wl = !(is.null(apply.to))
)
spc.fit.poly.below(
fit.to,
apply.to = fit.to,
poly.order = 1,
npts.min = max(round(nwl(fit.to) * 0.05), 3 * (poly.order + 1)),
noise = 0,
offset.wl = FALSE,
max.iter = nwl(fit.to),
stop.on.increase = FALSE,
debuglevel = hy.getOption("debuglevel")
)
Arguments
fit.to |
|
apply.to |
|
poly.order |
order of the polynomial to be used |
offset.wl |
should the wavelength range be mapped to -> [0, delta wl]? This enhances numerical stability. |
npts.min |
minimal number of points used for fitting the polynomial |
noise |
noise level to be considered during the fit. It may be given as one value for all the spectra, or for each spectrum separately. |
max.iter |
stop at the latest after so many iterations. |
stop.on.increase |
additional stopping rule: stop if the number of support points would increase, regardless whether npts.min was reached or not. |
debuglevel |
additional output:
|
Details
spc.fit.poly
calculates the least squares fit of order
poly.order
to the complete spectra given in fit.to
.
Thus fit.to
needs to be cut appropriately.
Value
hyperspec
object containing the baselines in the spectra
matrix, either as polynomial coefficients or as polynomials evaluted on
the spectral range of apply.to
Author(s)
C. Beleites
See Also
vignette ("baseline", package = "hyperSpec")
see options
for more on debuglevel
Examples
## Not run: vignette ("baseline", package = "hyperSpec")
spc <- chondro [1 : 10]
baselines <- spc.fit.poly(spc [,, c (625 ~ 640, 1785 ~ 1800)], spc)
plot(spc - baselines)
baselines <- spc.fit.poly.below (spc)
plot (spc - baselines)
spc.fit.poly.below(chondro [1:3], debuglevel = 1)
spc.fit.poly.below(chondro [1:3], debuglevel = 2)
spc.fit.poly.below(chondro [1:3], debuglevel = 3, noise = sqrt (rowMeans (chondro [[1:3]])))