code: def __init__(
      self,
      nclass,
      height=None,
      width=None,
      norm_layer=nn.BatchNorm,
      **kwargs,
  ):
      super(_ICHead, self).__init__()
  
      self._up_kwargs = {"height": height, "width": width}
      self.cff_12 = CascadeFeatureFusion(
          low_channels=128,
          high_channels=64,
          out_channels=128,
          nclass=nclass,
          height=height // 8,
          width=width // 8,
          norm_layer=norm_layer,
          **kwargs,
      )
      self.cff_24 = CascadeFeatureFusion(
          low_channels=256,
          high_channels=256,
          out_channels=128,
          nclass=nclass,
          height=height // 16,
          width=width // 16,
          norm_layer=norm_layer,
          **kwargs,
      )
  
      with self.name_scope():
          self.conv_cls = nn.Conv2D(
              in_channels=128,
              channels=nclass,
              kernel_size=1,
              use_bias=False,
          )
  
imports: from __future__ import division
  from mxnet.gluon import nn
  from mxnet.context import cpu
  from mxnet.gluon.nn import HybridBlock
  from gluoncv.model_zoo.segbase import SegBaseModel
  from gluoncv.model_zoo.pspnet import _PSPHead
label_desc: Use image node_id 1 to create a new _ICHead object from inherited base classes: HybridBlock with example: obj = _ICHead(nclass, height, width, norm_layer)