Set built-in GDAL pixel functions of a VRT stack object
Source:R/vrt-set-gdal-pixfun.R
vrt_set_gdal_pixelfun.Rd
Set built-in GDAL pixel functions of a VRT stack object
Usage
vrt_set_gdal_pixelfun(x, pixfun, ..., band_idx)
# S3 method for class 'vrt_block'
vrt_set_gdal_pixelfun(x, pixfun, ..., band_idx = NULL)
# S3 method for class 'vrt_collection'
vrt_set_gdal_pixelfun(x, pixfun, ..., band_idx = NULL)
Details
The documentation for the GDAL pixel functions can be found at https://gdal.org/en/stable/drivers/raster/vrt.html#built-in-pixel-functions
Where a pixel function requires arguments, these can be passed as named arguments, in line with the specified naming in PixelFunctionArguments of the table at the above link.
Examples
s2files <- fs::dir_ls(system.file("s2-data", package = "vrtility"))
ex_collect <- vrt_collect(s2files)
t_block <- ex_collect[[1]][[1]]
ex_stack <- ex_collect |>
vrt_set_maskfun(
mask_band = "SCL",
mask_values = c(0, 1, 2, 3, 8, 9, 10, 11),
drop_mask_band = TRUE
) |>
vrt_warp(
t_srs = t_block$srs,
te = t_block$bbox,
tr = t_block$res
) |>
vrt_stack()
plot(
vrt_set_gdal_pixelfun(
ex_stack,
pixfun = "min",
propagateNoData = TRUE
),
bands = c(3, 2, 1)
)
#> ℹ You a plotting a warped raster - this might be okay...
#> But, If this is taking a long time you are probably better
#> off saving the file first with `vrt_compute` and then plotting
#> with `plot_raster_src()`.
plot(
vrt_set_gdal_pixelfun(
ex_stack,
pixfun = "min"
),
bands = c(3, 2, 1)
)
#> ℹ You a plotting a warped raster - this might be okay...
#> But, If this is taking a long time you are probably better
#> off saving the file first with `vrt_compute` and then plotting
#> with `plot_raster_src()`.