code: def __init__(
      self,
      resnet="resnet18",
      pretrained=True,
      out_conv=False,
      fea_stride=8,
      out_channel=128,
      in_channels=[64, 128, 256, 512],
      cfg=None,
  ):
      super(CLRResNet, self).__init__()
      self.cfg = cfg
      self.in_channels = in_channels
  
      self.model = eval(resnet)(pretrained=pretrained)
      self.out = None
      if out_conv:
          out_channel = 512
          for chan in reversed(self.in_channels):
              if chan < 0:
                  continue
              out_channel = chan
              break
          self.out = nn.Conv2D(
              out_channel * self.model.expansion,
              cfg.featuremap_out_channel,
              kernel_size=1,
              bias_attr=False,
          )
  
imports: from __future__ import division
  from __future__ import print_function
  import paddle
  import paddle.nn
  from paddle.utils.download import get_weights_path_from_url
  from ppdet.core.workspace import register, serializable
  from ..shape_spec import ShapeSpec
label_desc: Use image node_id 1 to create a new CLRResNet object from inherited base classes: nn with example: obj = CLRResNet(resnet, pretrained, out_conv, fea_stride, out_channel, in_channels, cfg)