Learn R Programming

spatstat.geom (version 2.0-1)

split.im: Divide Image Into Sub-images

Description

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).

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.

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.

See Also

by.im, tess, im

Examples

Run this code
# NOT RUN {
  W <- square(1)
  X <- as.im(function(x,y){sqrt(x^2+y^2)}, W)
  Y <- dirichlet(runifrect(12, W))
  plot(split(X,Y))
# }

Run the code above in your browser using DataLab