class_docstr: The Decoder implementation of FC-HardDNet 70.
  
  Args:
      n_blocks (int): The number of blocks in the Encoder module.
      in_channels (int): The number of input channels.
      skip_connection_channels (tuple|list): The channels of shortcut layers in encoder.
      grmul (float): The channel multiplying factor in HarDBlock, which is m in the paper.
      gr (tuple|list): The growth rate in each HarDBlock, which is k in the paper.
      n_layers (tuple|list): The number of layers in each HarDBlock.
class_docstr_tok: ["The","Decoder","implementation","of","FC-HardDNet","70",".","Args",":","n_blocks","(","int",")",":","The","number","of","blocks","in","the","Encoder","module",".","in_channels","(","int",")",":","The","number","of","input","channels",".","skip_connection_channels","(","tuple|list",")",":","The","channels","of","shortcut","layers","in","encoder",".","grmul","(","float",")",":","The","channel","multiplying","factor","in","HarDBlock",",","which","is","m","in","the","paper",".","gr","(","tuple|list",")",":","The","growth","rate","in","each","HarDBlock",",","which","is","k","in","the","paper",".","n_layers","(","tuple|list",")",":","The","number","of","layers","in","each","HarDBlock","."]
code: def get_out_channels(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 Decoder obj's underlying member method code with example usage: obj.get_out_channels() and returns: self