One-hot encode a raster or vector
Splits a categorical raster layer (or a vector) into a multilayer raster (or matrix).
oneHotEncode(img, classes, background = 0, foreground = 1, na.rm = FALSE, ...)
img |
RasterLayer or integer/numeric vector containing multiple classes |
classes |
integer: vector of classes which should be extracted |
background |
integer: background value (default = 0) |
foreground |
integer: foreground value (default = 1) |
na.rm |
logical: if |
... |
further arguments passed to writeRaster. Ignored if img is not a RasterLayer, but a numeric/integer vector |
A RasterBrick with as many layers as there are classes. Pixels matching the class of interest are set to 1, backround values by default are set to 0 (see background argument)
library(raster) ## example data data(rlogo) sc <- unsuperClass(rlogo, nClasses = 3) ## one-hot encode sc_oneHot <- oneHotEncode(sc$map, classes = c(1,2,3)) ## check results sc_oneHot plot(sc_oneHot)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.