Linear or histogram equalization stretch of values in a SpatRaster.
For linear stretch, provide the desired output range (minv and maxv) and the lower and upper bounds in the original data, either as quantiles (minq and maxq, or as cell values (smin and smax). If smin and smax are both not NA, minq and maxq are ignored.
For histogram equalization, these arguments are ignored, but you can provide the desired scale of the output and the maximum number of cells that is used to compute the histogram (empirical cumulative distribution function).
# S4 method for SpatRaster
stretch(x, minv=0, maxv=255, minq=0, maxq=1, smin=NA, smax=NA,
histeq=FALSE, scale=1, maxcell=500000, filename="", ...)SpatRaster
SpatRaster
numeric >= 0 and smaller than maxv. lower bound of stretched value
numeric <= 255 and larger than maxv. upper bound of stretched value
numeric >= 0 and smaller than maxq. lower quantile bound of original value. Ignored if smin is supplied
numeric <= 1 and larger than minq. upper quantile bound of original value. Ignored if smax is supplied
numeric < smax. user supplied lower value for the layers, to be used instead of a quantile computed by the function itself
numeric > smin. user supplied upper value for the layers, to be used instead of a quantile computed by the function itself
logical. If TRUE histogram equalization is used instead of linear stretch
numeric. The scale (maximum value) of the output if histeq=TRUE
positive integer. The size of the regular sample used to compute the histogram
character. Output filename
additional arguments for writing files as in writeRaster
r <- rast(nc=10, nr=10)
values(r) <- rep(1:25, 4)
rs <- stretch(r)
s <- c(r, r*2)
sr <- stretch(s)
Run the code above in your browser using DataLab