class_docstr: TTFHead
  Args:
      in_channels (int): the channel number of input to TTFHead.
      num_classes (int): the number of classes, 80 by default.
      hm_head_planes (int): the channel number in heatmap head,
          128 by default.
      wh_head_planes (int): the channel number in width & height head,
          64 by default.
      hm_head_conv_num (int): the number of convolution in heatmap head,
          2 by default.
      wh_head_conv_num (int): the number of convolution in width & height
          head, 2 by default.
      hm_loss (object): Instance of 'CTFocalLoss'.
      wh_loss (object): Instance of 'GIoULoss'.
      wh_offset_base (float): the base offset of width and height,
          16.0 by default.
      down_ratio (int): the actual down_ratio is calculated by base_down_ratio
          (default 16) and the number of upsample layers.
      lite_head(bool): whether use lite version. False by default.
      norm_type (string): norm type, 'sync_bn', 'bn', 'gn' are optional.
          bn by default
      ags_module(bool): whether use AGS module to reweight location feature.
          false by default.
code: def __init__(
      self,
      in_channels,
      num_classes=80,
      hm_head_planes=128,
      wh_head_planes=64,
      hm_head_conv_num=2,
      wh_head_conv_num=2,
      hm_loss="CTFocalLoss",
      wh_loss="GIoULoss",
      wh_offset_base=16.0,
      down_ratio=4,
      dcn_head=False,
      lite_head=False,
      norm_type="bn",
      ags_module=False,
  ):
      super(TTFHead, self).__init__()
      self.in_channels = in_channels
      self.hm_head = HMHead(
          in_channels,
          hm_head_planes,
          num_classes,
          hm_head_conv_num,
          dcn_head,
          lite_head,
          norm_type,
      )
      self.wh_head = WHHead(
          in_channels,
          wh_head_planes,
          wh_head_conv_num,
          dcn_head,
          lite_head,
          norm_type,
      )
      self.hm_loss = hm_loss
      self.wh_loss = wh_loss
  
      self.wh_offset_base = wh_offset_base
      self.down_ratio = down_ratio
      self.ags_module = ags_module
  
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddle import ParamAttr
  from paddle.nn.initializer import Constant, Normal
  from paddle.regularizer import L2Decay
  from ppdet.core.workspace import register
  from ppdet.modeling.layers import DeformableConvV2, LiteConv
  import numpy
label_desc: Use image node_id 1 to create a new TTFHead object from inherited base classes: nn with example: obj = TTFHead(in_channels, num_classes, hm_head_planes, wh_head_planes, hm_head_conv_num, wh_head_conv_num, hm_loss, wh_loss, wh_offset_base, down_ratio, dcn_head, lite_head, norm_type, ags_module)