erosion

0th

Percentile

Morphological Erosion

Perform morphological erosion of a window, a line segment pattern or a point pattern.

Keywords
spatial, math
Usage
erosion(w, r, ...)
 ## S3 method for class 'owin':
erosion(w, r, shrink.frame=TRUE, \dots,
   strict=FALSE, polygonal=NULL)
 ## S3 method for class 'ppp':
erosion(w, r,\dots)
 ## S3 method for class 'psp':
erosion(w, r,\dots)
Arguments
w
A window (object of class "owin" or a line segment pattern (object of class "psp") or a point pattern (object of class "ppp").
r
positive number: the radius of erosion.
shrink.frame
logical: if TRUE, erode the bounding rectangle as well.
...
extra arguments to as.mask controlling the pixel resolution, if pixel approximation is used.
strict
Logical flag determining the fate of boundary pixels, if pixel approximation is used. See details.
polygonal
Logical flag indicating whether to compute a polygonal approximation to the erosion (polygonal=TRUE) or a pixel grid approximation (polygonal=FALSE).
Details

The morphological erosion of a set $W$ by a distance $r > 0$ is the subset consisting of all points $x \in W$ such that the distance from $x$ to the boundary of $W$ is greater than or equal to $r$. In other words it is the result of trimming a margin of width $r$ off the set $W$.

If polygonal=TRUE then a polygonal approximation to the erosion is computed. If polygonal=FALSE then a pixel approximation to the erosion is computed from the distance map of w. The arguments "..." are passed to as.mask to control the pixel resolution. The erosion consists of all pixels whose distance from the boundary of w is strictly greater than r (if strict=TRUE) or is greater than or equal to r (if strict=FALSE). When w is a window, the default (when polygonal=NULL) is to compute a polygonal approximation if w is a rectangle or polygonal window, and to compute a pixel approximation if w is a window of type "mask".

If shrink.frame is false, the resulting window is given the same outer, bounding rectangle as the original window w. If shrink.frame is true, the original bounding rectangle is also eroded by the same distance r.

To simply compute the area of the eroded window, use eroded.areas.

Value

  • If r > 0, an object of class "owin" representing the eroded region (or NULL if this region is empty). If r=0, the result is identical to w.

See Also

dilation for the opposite operation. owin, as.owin, eroded.areas

Aliases
  • erosion
  • erosion.owin
  • erosion.ppp
  • erosion.psp
Examples
w <- owin(c(0,1),c(0,1))
  v <- erosion(w, 0.1) 
  # returns rectangle [0.1, 0.9] x [0.1,0.9]
  v <- erosion(w, 0.6)
  # erosion is empty
Documentation reproduced from package spatstat, version 1.21-0, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.