# W3cubDocs

/TensorFlow Python

# tf.nn.erosion2d

```tf.nn.erosion2d(
value,
kernel,
strides,
rates,
padding,
name=None
)
```

Defined in `tensorflow/python/ops/nn_ops.py`.

See the guide: Neural Network > Morphological filtering

Computes the grayscale erosion of 4-D `value` and 3-D `kernel` tensors.

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 * y - rates * dy,
strides * x - rates * 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'`.

© 2018 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/nn/erosion2d