class_docstr: Center Weighting module to adjust the category-specific prior
  distributions.
  
  Args:
      force_topk (bool): When no point falls into gt_bbox, forcibly
          select the k points closest to the center to calculate
          the center prior. Defaults to False.
      topk (int): The number of points used to calculate the
          center prior when no point falls in gt_bbox. Only work when
          force_topk if True. Defaults to 9.
      num_classes (int): The class number of dataset. Defaults to 80.
      strides (Sequence[int]): The stride of each input feature map.
          Defaults to (8, 16, 32, 64, 128).
class_docstr_tok: ["Center","Weighting","module","to","adjust","the","category-specific","prior","distributions",".","Args",":","force_topk","(","bool",")",":","When","no","point","falls","into","gt_bbox",",","forcibly","select","the","k","points","closest","to","the","center","to","calculate","the","center","prior",".","Defaults","to","False",".","topk","(","int",")",":","The","number","of","points","used","to","calculate","the","center","prior","when","no","point","falls","in","gt_bbox",".","Only","work","when","force_topk","if","True",".","Defaults","to","9.","num_classes","(","int",")",":","The","class","number","of","dataset",".","Defaults","to","80.","strides","(","Sequence","[","int","]",")",":","The","stride","of","each","input","feature","map",".","Defaults","to","(","8",",","16",",","32",",","64",",","128",")","."]
code: def __init__(
      self,
      force_topk: bool = False,
      topk: int = 9,
      num_classes: int = 80,
      strides: Sequence[int] = (8, 16, 32, 64, 128),
  ) -> None:
      super().__init__()
      self.mean = nn.Parameter(torch.zeros(num_classes, 2))
      self.sigma = nn.Parameter(torch.ones(num_classes, 2))
      self.strides = strides
      self.force_topk = force_topk
      self.topk = topk
  
imports: from typing import Dict, List, Sequence, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  from mmcv.cnn import Scale
  from mmengine.model import bias_init_with_prob, normal_init
  from mmengine.structures import InstanceData
  from torch import Tensor
  from mmdet.registry import MODELS
  from mmdet.structures.bbox import bbox_overlaps
  from mmdet.utils import InstanceList, OptInstanceList, reduce_mean
  from ..task_modules.prior_generators import MlvlPointGenerator
  from ..utils import levels_to_images, multi_apply
  from .fcos_head import FCOSHead
label_desc: Use image node_id 1 to create a new CenterPrior object from inherited base classes: nn with example: obj = CenterPrior(force_topk, topk, num_classes, strides)