class_docstr: Guided-Anchor-based RetinaNet head.
class_docstr_tok: ["Guided-Anchor-based","RetinaNet","head","."]
code: def __init__(
      self,
      num_classes: int,
      in_channels: int,
      stacked_convs: int = 4,
      conv_cfg: OptConfigType = None,
      norm_cfg: OptConfigType = None,
      init_cfg: OptMultiConfig = None,
      **kwargs,
  ) -> None:
      if init_cfg is None:
          init_cfg = dict(
              type="Normal",
              layer="Conv2d",
              std=0.01,
              override=[
                  dict(
                      type="Normal",
                      name="conv_loc",
                      std=0.01,
                      bias_prob=0.01,
                  ),
                  dict(
                      type="Normal",
                      name="retina_cls",
                      std=0.01,
                      bias_prob=0.01,
                  ),
              ],
          )
      self.stacked_convs = stacked_convs
      self.conv_cfg = conv_cfg
      self.norm_cfg = norm_cfg
      super().__init__(
          num_classes=num_classes,
          in_channels=in_channels,
          init_cfg=init_cfg,
          **kwargs,
      )
  
file_path: mmdetection/mmdet/models/dense_heads/ga_retina_head.py
imports: from typing import Tuple
  import torch.nn
  from mmcv.cnn import ConvModule
  from mmcv.ops import MaskedConv2d
  from torch import Tensor
  from mmdet.registry import MODELS
  from mmdet.utils import OptConfigType, OptMultiConfig
  from .guided_anchor_head import FeatureAdaption, GuidedAnchorHead
label_desc: Use image node_id 1 to create a new GARetinaHead object from inherited base classes: GuidedAnchorHead with example: obj = GARetinaHead(num_classes, in_channels, stacked_convs, conv_cfg, norm_cfg, init_cfg)