code: def _testErosionSamePaddingDepth(self, use_gpu):
      # [1, 2, 2, 3]
      image = [
          [
              [[0.1, 0.2, 0.0], [0.2, 0.3, 0.1]],
              [[0.3, 0.4, 0.2], [0.4, 0.5, 0.3]],
          ]
      ]
      # [2, 2, 3]
      kernel = [
          [[0.4, 0.5, 0.3], [0.3, 0.4, 0.2]],
          [[0.1, 0.2, 0.0], [0.0, 0.1, -0.1]],
      ]
      # [1, 2, 2, 3]
      out = [
          [
              [[0.0, 0.0, 0.0], [0.1, 0.1, 0.1]],
              [[0.3, 0.3, 0.3], [0.4, 0.4, 0.4]],
          ]
      ]
      self._VerifyValues(
          image,
          kernel,
          strides=[1, 1],
          rates=[1, 1],
          padding="SAME",
          out=out,
          use_gpu=use_gpu,
      )
  
imports: from absl.testing import parameterized
  import numpy
  from tensorflow.python.framework import config
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors_impl
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import gradient_checker_v2
  from tensorflow.python.ops import nn_ops
  import tensorflow.python.ops.nn_grad
  from tensorflow.python.platform import test
label_desc: Use image node_id 4 for calling the ErosionTest obj's underlying member method code with example usage: obj._testErosionSamePaddingDepth(use_gpu) without return types