class_docstr: The layer that scales up a set of two-dimensional multi-channel images.
  The new pixels are filled up by repeating the existing pixels' values,
  without any interpolation.
  
  :param input_layers: The input layers to be connected. 
      The integer in each tuple specifies the number of the output.
      If not set, the first output will be used.
  :type input_layers: object, tuple(object, int) or list of them
  :param height_copy_count: The height multiplier.
  :type height_copy_count: int, > 0
  :param width_copy_count: The width multiplier.
  :type width_copy_count: int, > 0
  :param name: The layer name.
  :type name: str, default=None
  
  .. rubric:: Layer inputs:
  
  The layer can have any amount of inputs, each with a set of images.
  The dimensions:
  
  - **BatchLength** * **BatchWidth** * **ListSize** is the number of images
  - **Height** is the images' height
  - **Width** is the images' width
  - **Depth** * **Channels** is the number of channels the image format uses
  
  .. rubric:: Layer outputs:
  
  For each input, there is a corresponding output with upscaled images.
  The dimensions:
  
  - **BatchLength**, **BatchWidth**, **ListSize**, **Depth**, **Channels** equal 
    the correspoonding input dimensions
  - **Height** is height_copy_count times larger than the input **Height**
  - **Width** is width_copy_count times larger than the input **Width**
code: def __init__(
      self, input_layers, height_copy_count, width_copy_count, name=None
  ):
      if type(input_layers) is PythonWrapper.Upsampling2D:
          super().__init__(input_layers)
          return
  
      layers, outputs = check_input_layers(input_layers, 0)
  
      if int(height_copy_count) < 1:
          raise ValueError("The `height_copy_count` must be > 0.")
  
      if int(width_copy_count) < 1:
          raise ValueError("The `width_copy_count` must be > 0.")
  
      internal = PythonWrapper.Upsampling2D(
          str(name),
          layers,
          outputs,
          int(height_copy_count),
          int(width_copy_count),
      )
      super().__init__(internal)
  
file_path: neoml/NeoML/Python/neoml/Dnn/Upsampling2D.py
imports: import neoml.PythonWrapper
  from .Dnn import Layer
  from neoml.Utils import check_input_layers
label_desc: Use image node_id 1 to create a new Upsampling2D object from inherited base classes: Layer with example: obj = Upsampling2D(input_layers, height_copy_count, width_copy_count, name)