Use Nolan's algorithm to find the ideal polynomial degree for polynomial detrending.
best_degree(img, parallel = FALSE, purpose = c("FCS", "FFS"))
A 4-dimensional array in the style of an
ijtiff_img (indexed by img[y, x, channel, frame]
)
or a 3-dimensional array which is a single channel of an
ijtiff_img (indexed by img[y, x, frame]
).
Would you like to use multiple cores to speed up this
function? If so, set the number of cores here, or to use all available
cores, use parallel = TRUE
.
What type of calculation do you intend to perform on the
detrended image? If it is an FFS (fluorescence fluctuation spectroscopy)
calculation (like number and brightness), choose 'FFS'. If it is an FCS
(fluorescence correlation spectroscopy) calculation (like cross-correlated
number and brightness or autocorrelation), choose 'FCS'. The difference is
that if purpose
is 'FFS', the time series is corrected for non-stationary
mean and variance, whereas if purpose
is 'FCS', the time series is
corrected for non-stationary mean only. purpose
is not required for
Robin Hood detrending.
If no detrend is necessary, this function returns NA
. If a detrend
is required, this function returns a natural number which is the ideal
polynomial degree for polynomial detrending. If there are multiple
channels, the function returns a vector, one degree
parameter for each
channel.
Rory Nolan, Luis A. J. Alvarez, Jonathan Elegheert, Maro Iliopoulou, G. Maria Jakobsdottir, Marina Rodriguez-Muñoz, A. Radu Aricescu, Sergi Padilla-Parra; nandb—number and brightness in R with a novel automatic detrending algorithm, Bioinformatics, https://doi.org/10.1093/bioinformatics/btx434.
if (FALSE) { # \dontrun{
## These examples are not run on CRAN because they take too long.
## You can still try them for yourself.
img <- ijtiff::read_tif(system.file("extdata", "bleached.tif",
package = "detrendr"
))
best_degree(img, parallel = 2)
} # }