get.mask {tripEstimation} | R Documentation |
Spatial masks are stored using the xyz-list structure used by
image
or as a series of masks stored as bits in the z-component
as matrix or array object. get.mask
is used to extract a specific
mask from the binary storage, and mkSmall can be used to quickly down-sample
an existing mask or image.
get.mask(masks, k) mkSmall(lst, thin = 10)
masks |
A list object with components x, y, and z containing spatial masks |
k |
specifies the k-th mask |
lst |
an xyz-list structure with z containing either a matrix or array |
thin |
integer factor to down-sample grid |
Michael D. Sumner
mkLookup
for the use of these masks to query individual
locations and locations measured over time.
See bits
for the underlying mechanism to set and get mask bits.
For the use of the xyz-list structure see image
.
data(volcano) d <- list(x = seq(-10, 10, length = nrow(volcano)), y = seq(-5, 5, length = ncol(volcano)), z = array(0, c(nrow(volcano), ncol(volcano), 2)) ) mv <- min(volcano) for (i in 0:61) { blk <- (i %/% 31) + 1 bit <- (i - 1) %% 31 bits(d$z[,,blk], bit) <- volcano > (mv + i*1.6 ) } for (i in 0:61) image(get.mask(d, i)) ## an object with 62 masks is only twice the size of the source data object.size(d) / object.size(volcano) ## Not run: ## plot a smaller version image(get.mask(d, 20), 5) ## pretend we have only one masks lookup <- mkLookup(get.mask(d, 30), by.segment = FALSE) ## interactive to show use of lookup function image(get.mask(d, 30), main = "Click on the red (FALSE) and cream (TRUE) areas") for (i in 1:10) {x <- matrix(unlist(locator(1)), ncol = 2);text(x[1], x[2], lookup(x) > 0)} ## End(Not run)