Perform morphological dilation of a window, a line segment pattern or a point pattern
dilation(w, r, …)
# S3 method for owin
dilation(w, r, …, polygonal=NULL, tight=TRUE)
# S3 method for ppp
dilation(w, r, …, polygonal=TRUE, tight=TRUE)
# S3 method for psp
dilation(w, r, …, polygonal=TRUE, tight=TRUE)
A window (object of class "owin"
or a line segment pattern (object of class "psp"
)
or a point pattern (object of class "ppp"
).
positive number: the radius of dilation.
Logical flag indicating whether to compute a polygonal
approximation to the dilation (polygonal=TRUE
) or
a pixel grid approximation (polygonal=FALSE
).
Logical flag indicating whether the bounding frame of the window
should be taken as the smallest rectangle enclosing the dilated region
(tight=TRUE
), or should be the
dilation of the bounding frame of w
(tight=FALSE
).
If r > 0
, an object of class "owin"
representing the
dilated region. If r=0
, the result is identical to w
.
The morphological dilation of a set
If polygonal=TRUE
then a polygonal approximation
to the dilation is computed.
If polygonal=FALSE
then a pixel approximation
to the dilation is computed from the distance map of w
.
The arguments "\dots"
are passed to as.mask
to control the pixel resolution.
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"
.
erosion
for the opposite operation.
dilationAny
for morphological dilation using any shape.
# NOT RUN {
plot(dilation(redwood, 0.05))
points(redwood)
plot(dilation(letterR, 0.2))
plot(letterR, add=TRUE, lwd=2, border="red")
X <- psp(runif(10), runif(10), runif(10), runif(10), window=owin())
plot(dilation(X, 0.1))
plot(X, add=TRUE, col="red")
# }
Run the code above in your browser using DataLab