dilation: Compute a morphological dilation of a signal

View source: R/dilation.R

dilationR Documentation

Compute a morphological dilation of a signal

Description

A dilation is a moving local maximum over a window of specific fixed width specified by span. This dilation is computed first in one direction and then in the other.

Usage

dilation(y, span)

Arguments

y

Signal (as a numeric vector).

span

An integer specifying the width of the moving window.

Details

A dilation is a method often used in mathematical morphology and image analysis (Soille 1999). This function is for vectors not matrices or images though applying it to rows and columns of a matrix will give the corresponding results.

An erosion of a vector or image can also be computed easily from this by computing the dilation of -1 times the vector and transforming back.

We recommend using a dilation to form a penalty for use in VPdtw.

Value

res

Dilation of y with width specified by span

Author(s)

David Clifford

References

Soille, P. Morphological Image Analysis: Principles and Applications; Springer: New York, 1999.

Examples


## Example 1 - dilation of a signal
data(reference)
dref <- dilation(reference, 150)
plot(reference, log = "y", type = "l")
lines(dref, col = 2)

## Example 2 - dilation of an image
BIN <- (volcano > 177)
dBIN <- t(apply(BIN, 1, dilation, span = 5))
dBIN <- apply(dBIN, 2, dilation, span = 5)
oldpar <- par(no.readonly = TRUE)
par(mfrow=c(2, 2))
image(volcano)
image(BIN)
image(dBIN)
par(oldpar)


VPdtw documentation built on Sept. 11, 2024, 8:16 p.m.