TensorFlow 2 version | View source on GitHub |
Computes the grayscale erosion of 4-D value
and 3-D kernel
tensors.
tf.nn.erosion2d(
value, kernel, strides, rates, padding, name=None
)
The value
tensor has shape [batch, in_height, in_width, depth]
and the
kernel
tensor has shape [kernel_height, kernel_width, depth]
, i.e.,
each input channel is processed independently of the others with its own
structuring function. The output
tensor has shape
[batch, out_height, out_width, depth]
. The spatial dimensions of the
output tensor depend on the padding
algorithm. We currently only support the
default "NHWC" data_format
.
In detail, the grayscale morphological 2-D erosion is given by:
output[b, y, x, c] =
min_{dy, dx} value[b,
strides[1] * y - rates[1] * dy,
strides[2] * x - rates[2] * dx,
c] -
kernel[dy, dx, c]
Duality: The erosion of value
by the kernel
is equal to the negation of
the dilation of -value
by the reflected kernel
.
Args | |
---|---|
value
|
A Tensor . 4-D with shape [batch, in_height, in_width, depth] .
|
kernel
|
A Tensor . Must have the same type as value .
3-D with shape [kernel_height, kernel_width, depth] .
|
strides
|
A list of ints that has length >= 4 .
1-D of length 4. The stride of the sliding window for each dimension of
the input tensor. Must be: [1, stride_height, stride_width, 1] .
|
rates
|
A list of ints that has length >= 4 .
1-D of length 4. The input stride for atrous morphological dilation.
Must be: [1, rate_height, rate_width, 1] .
|
padding
|
A string from: "SAME", "VALID" .
The type of padding algorithm to use.
|
name
|
A name for the operation (optional). If not specified "erosion2d" is used. |
Returns | |
---|---|
A Tensor . Has the same type as value .
4-D with shape [batch, out_height, out_width, depth] .
|
Raises | |
---|---|
ValueError
|
If the value depth does not match kernel ' shape, or if
padding is other than 'VALID' or 'SAME' .
|