class_docstr: The HarDBlock implementation
  
  Args:
      base_channels (int): The base channels.
      growth_rate (tuple|list): The growth rate.
      grmul (float): The channel multiplying factor.
      n_layers (tuple|list): The number of layers.
      keepBase (bool, optional): A bool value indicates whether concatenating the first layer. Default: False.
class_docstr_tok: ["The","HarDBlock","implementation","Args",":","base_channels","(","int",")",":","The","base","channels",".","growth_rate","(","tuple|list",")",":","The","growth","rate",".","grmul","(","float",")",":","The","channel","multiplying","factor",".","n_layers","(","tuple|list",")",":","The","number","of","layers",".","keepBase","(","bool",",","optional",")",":","A","bool","value","indicates","whether","concatenating","the","first","layer",".","Default",":","False","."]
code: def get_out_ch(self):
      return self.out_channels
  
imports: import os
  from typing import Union, Tuple, List
  import numpy
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddlehub.module.module import moduleinfo
  import paddlehub.vision.segmentation_transforms
  from paddlehub.module.cv_module import ImageSegmentationModule
  import hardnet_cityscapes.layers
label_desc: Use image node_id 3 for calling the HarDBlock obj's underlying member method code with example usage: obj.get_out_ch() and returns: self