morphology {EBImage} | R Documentation |
Functions to perform morphological operations on binary images.
dilate(x, kern, iter) erode(x, kern, iter) opening(x, kern, iter) closing(x, kern, iter) makeBrush(size, shape=c('box', 'disc', 'diamond'), step=TRUE)
x |
An Image object or an array.
x is considered as a binary image, whose pixels of value 0
are considered as background ones and other pixels as
foreground ones. |
kern |
An Image object or an array, containing the
structuring element. kern is considered as a binary image, whose
pixels of value 0 are considered as background ones and other pixels as
foreground ones. |
size |
A numeric containing the size of the brush, in pixels. |
shape |
A character vector indicating the shape of the brush. Can
be box , disc or diamond . Default is box . |
step |
a logical indicating if the brush is binary. Default is TRUE . |
iter |
Deprecated argument. |
erode
applies the mask positioning its centre over every background pixel
(0), every pixel which is not covered by the mask is reset to foreground (1).
In this way image features grow in size.
dilate
applies the mask positioning its centre over every foreground pixel
(!=0), every pixel which is not covered by the mask is reset to background (0).
In this way image features seem shrink in size.
opening
is an erosion followed by a dilation and closing
is a dilation
followed by an erosion.
makeBrush
generates brushes of various sizes and shapes that can be used
as structuring elements.
dilate
, erode
, opening
and closing
return the
transformed Image
object or array, after the corresponding
morphological operation.
makeBrush
generates a 2D matrix containing the desired brush.
Oleg Sklyar, osklyar@ebi.ac.uk, 2006
x = readImage(system.file("images", "shapes.png", package="EBImage")) if (interactive()) display(x) kern = makeBrush(5, shape='diamond') if (interactive()) display(kern, title='Structuring element') if (interactive()) display(erode(x, kern), title='Erosion of x') if (interactive()) display(dilate(x, kern), title='Dilatation of x') ## makeBrush x = makeBrush(100, shape='diamond') if (interactive()) display(x, title="makeBrush(100, shape='diamond')") x = makeBrush(100, shape='disc', step=FALSE) if (interactive()) display(x, title="makeBrush(100, shape='disc', step=FALSE)")