Given a stack of images img
, use the first frames_per_set
of them to
create one number image, the next frames_per_set
of them to create the next
number image and so on to get a time-series of number images.
number_timeseries(
img,
def,
frames_per_set,
overlap = FALSE,
thresh = NULL,
detrend = FALSE,
quick = FALSE,
filt = NULL,
s = 1,
offset = 0,
readout_noise = 0,
gamma = 1,
parallel = FALSE
)
Arguments
img |
A 4-dimensional array of images indexed by img[y, x, channel, frame] (an object of class ijtiff::ijtiff_img). The image to perform the
calculation on. To perform this on a file that has not yet been read in,
set this argument to the path to that file (a string). |
def |
A character. Which definition of number do you want to use, "n"
or "N" ? |
frames_per_set |
The number of frames with which to calculate the
successive numbers. |
overlap |
A boolean. If TRUE , the windows used to calculate brightness
are overlapped, if FALSE , they are not. For example, for a 20-frame image
series with 5 frames per set, if the windows are not overlapped, then the
frame sets used are 1-5, 6-10, 11-15 and 16-20; whereas if they are
overlapped, the frame sets are 1-5, 2-6, 3-7, 4-8 and so on up to 16-20. |
thresh |
The threshold or thresholding method (see
autothresholdr::mean_stack_thresh() ) to use on the image prior to
detrending and number calculations. If there are many channels, this may be
specified as a vector or list, one element for each channel. |
detrend |
Detrend your data with detrendr::img_detrend_rh() . This is
the best known detrending method for brightness analysis. For more
fine-grained control over your detrending, use the detrendr package. If
there are many channels, this may be specified as a vector, one element for
each channel. |
quick |
FALSE repeats the detrending procedure (which has some inherent
randomness) a few times to hone in on the best detrend. TRUE is quicker,
performing the routine only once. FALSE is better.
|
filt |
Do you want to smooth (filt = 'mean' ) or median (filt = 'median' ) filter the number image using smooth_filter() or
median_filter() respectively? If selected, these are invoked here with a
filter radius of 1 (with corners included, so each median is the median of
9 elements) and with the option na_count = TRUE . If you want to
smooth/median filter the number image in a different way, first calculate
the numbers without filtering (filt = NULL ) using this function and then
perform your desired filtering routine on the result. If there are many
channels, this may be specified as a vector, one element for each channel. |
s |
A positive number. The \(S\)-factor of microscope acquisition. |
offset |
Microscope acquisition parameters. See reference
Dalal et al. |
readout_noise |
Microscope acquisition parameters. See reference
Dalal et al. |
gamma |
Factor for correction of number \(n\) due to the illumination
profile. The default (gamma = 1 ) has no effect. Changing gamma will have
the effect of dividing the result by gamma , so the result with gamma = 0.5 is two times the result with gamma = 1 . For a Gaussian illumination
profile, use gamma = 0.3536 ; for a Gaussian-Lorentzian illumination
profile, use gamma = 0.0760 . |
parallel |
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 . |
Value
An object of class number_ts_img.
Details
This may discard some images, for example if 175 frames are in the input and
frames_per_set = 50
, then the last 25 are discarded. If detrending is
selected, it is performed on the whole image stack before the sectioning is
done for calculation of numbers.
See also
Examples
#> Reading 50.tif: an 8-bit, 50x50 pixel image of unsigned
#> integer type. Reading 1 channel and 50 frames . . .
#> Done.
nts <- number_timeseries(img, "n", frames_per_set = 20, thresh = "Huang")
# }