code: def __init__(self, *args, **kwargs):
      super(DilatedBlockLayer, self).__init__(*args, **kwargs)
      depth = max(1, self.params.dilated_depth)
      assert self.params.filters % depth == 0
      self.dilated_layers = [
          keras.layers.Conv2D(
              name="conv2d_{}".format(i),
              filters=self.params.filters // depth,
              kernel_size=self.params.kernel_size.to_tuple(),
              strides=self.params.strides.to_tuple(),
              padding=self.params.padding,
              activation=self.params.activation,
              dilation_rate=2 ** (i + 1),
          )
          for i in range(depth)
      ]
      self.concat_layer = keras.layers.Concatenate(axis=-1)
  
file_path: calamari/calamari_ocr/ocr/model/layers/dilatedblock.py
imports: from dataclasses import dataclass, field
  from typing import Type
  from paiargparse import pai_dataclass, pai_meta
  from tensorflow import keras
  from calamari_ocr.ocr.model.layers.layer import LayerParams, IntVec2D, Layer
label_desc: Use image node_id 1 to create a new DilatedBlockLayer object from inherited base classes: Layer with example: obj = DilatedBlockLayer()