Most of the functions in pliman can be applied to a list of images, but this can be not
ideal to deal with lots of images, mainly if they have a high resolution. For
curiosity, a 6000 x 4000 image use nearly 570 Megabytes of RAM. So, it would be
impossible to deal with lots of images within R. apply_fun_to_img()
applies a
function to images stored in a given directory as follows:
Create a vector of image names that contain a given pattern of name.
Import each image of such a list.
Apply a function to the imported image.
Export the mutated image to the computer.
If parallel is set to FALSE
(default), the images are processed sequentially, which
means that one image needs to be imported, processed, and exported so that the other
image can be processed. If parallel is set to TRUE
, the images are processed
asynchronously (in parallel) in separate R sessions (3) running in the background on
the same machine. It may speed up the processing time when lots of images need to be
processed.
Usage
apply_fun_to_imgs(
pattern,
fun,
...,
dir_original = NULL,
dir_processed = NULL,
prefix = "",
suffix = "",
parallel = FALSE,
workers = 3,
verbose = TRUE
)
Arguments
- pattern
A pattern to match the images' names.
- fun
A function to apply to the images.
- ...
Arguments passed on to
fun
.- dir_original, dir_processed
The directory containing the original and processed images. Defaults to
NULL
, which means that the current working directory will be considered. The processed image will overwrite the original image unless a prefix/suffix be used or a subfolder is informed in dir_processed argument.- prefix, suffix
A prefix and/or suffix to be included in the name of processed images. Defaults to
""
.- parallel
If
TRUE
processes the images asynchronously (in parallel) in separate R sessions (3 by default) running in the background on the same machine. It may speed up the processing time, especially when pattern is used is informed.- workers
A positive numeric scalar or a function specifying the number of parallel processes that can be active at the same time. Defaults to 3.
- verbose
Shows the progress in console? Defaults to
TRUE
.