code: def __init__(
      self,
      in_channel=256,
      num_convs=4,
      conv_dim=256,
      out_channel=1024,
      resolution=7,
      norm_type="gn",
      freeze_norm=False,
      num_cascade_stage=3,
  ):
      super(CascadeXConvNormHead, self).__init__()
      self.in_channel = in_channel
      self.out_channel = out_channel
  
      self.head_list = []
      for stage in range(num_cascade_stage):
          head_per_stage = self.add_sublayer(
              str(stage),
              XConvNormHead(
                  in_channel,
                  num_convs,
                  conv_dim,
                  out_channel,
                  resolution,
                  norm_type,
                  freeze_norm,
                  stage_name="stage{}_".format(stage),
              ),
          )
          self.head_list.append(head_per_stage)
  
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddle.nn.initializer import Normal
  from ppdet.core.workspace import register
  from .bbox_head import BBoxHead, TwoFCHead, XConvNormHead
  from .roi_extractor import RoIAlign
  from ..shape_spec import ShapeSpec
  from ..bbox_utils import delta2bbox, clip_bbox, nonempty_bbox
  from ..cls_utils import _get_class_default_kwargs
label_desc: Use image node_id 1 to create a new CascadeXConvNormHead object from inherited base classes: nn with example: obj = CascadeXConvNormHead(in_channel, num_convs, conv_dim, out_channel, resolution, norm_type, freeze_norm, num_cascade_stage)