split.im
Divide Image Into Sub-images
Divides a pixel image into several sub-images according to the value of a factor, or according to the tiles of a tessellation.
Usage
# S3 method for im
split(x, f, ..., drop = FALSE)
Arguments
- x
Pixel image (object of class
"im"
).- f
Splitting criterion. Either a tessellation (object of class
"tess"
) or a pixel image with factor values.- …
Ignored.
- drop
Logical value determining whether each subset should be returned as a pixel images (
drop=FALSE
) or as a one-dimensional vector of pixel values (drop=TRUE
).
Details
This is a method for the generic function split
for the class of pixel images. The image x
will be divided
into subsets determined by the data f
. The result is a list
of these subsets.
The splitting criterion may be either
a tessellation (object of class
"tess"
). Each tile of the tessellation delineates a subset of the spatial domain.a pixel image (object of class
"im"
) with factor values. The levels of the factor determine subsets of the spatial domain.
If drop=FALSE
(the default), the result is a list of pixel
images, each one a subset of the pixel image x
,
obtained by restricting the pixel domain to one of the subsets.
If drop=TRUE
, then the pixel values are returned as
numeric vectors.
Value
If drop=FALSE
, a list of pixel images (objects of class
"im"
). It is also of class "solist"
so that it can be
plotted immediately.
If drop=TRUE
, a list of numeric vectors.
See Also
Examples
# NOT RUN {
W <- square(1)
X <- as.im(function(x,y){sqrt(x^2+y^2)}, W)
Y <- dirichlet(runifpoint(12, W))
plot(split(X,Y))
# }