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