class_docstr: Post-processing methods for ABCNet.
  
  Args:
      num_classes (int): Number of classes.
      use_sigmoid_cls (bool): Whether to use sigmoid for classification.
      strides (tuple): Strides of each feature map.
      norm_by_strides (bool): Whether to normalize the regression targets by
          the strides.
      bbox_coder (dict): Config dict for bbox coder.
      text_repr_type (str): Text representation type, 'poly' or 'quad'.
      with_bezier (bool): Whether to use bezier curve for text detection.
      train_cfg (dict): Config dict for training.
      test_cfg (dict): Config dict for testing.
class_docstr_tok: ["Post-processing","methods","for","ABCNet",".","Args",":","num_classes","(","int",")",":","Number","of","classes",".","use_sigmoid_cls","(","bool",")",":","Whether","to","use","sigmoid","for","classification",".","strides","(","tuple",")",":","Strides","of","each","feature","map",".","norm_by_strides","(","bool",")",":","Whether","to","normalize","the","regression","targets","by","the","strides",".","bbox_coder","(","dict",")",":","Config","dict","for","bbox","coder",".","text_repr_type","(","str",")",":","Text","representation","type",",","'poly","'","or","'quad","'",".","with_bezier","(","bool",")",":","Whether","to","use","bezier","curve","for","text","detection",".","train_cfg","(","dict",")",":","Config","dict","for","training",".","test_cfg","(","dict",")",":","Config","dict","for","testing","."]
code: def __init__(
      self,
      num_classes=1,
      use_sigmoid_cls=True,
      strides=(4, 8, 16, 32, 64),
      norm_by_strides=True,
      bbox_coder=dict(type="mmdet.DistancePointBBoxCoder"),
      text_repr_type="poly",
      rescale_fields=None,
      with_bezier=False,
      train_cfg=None,
      test_cfg=None,
  ):
      super().__init__(
          text_repr_type=text_repr_type,
          rescale_fields=rescale_fields,
          train_cfg=train_cfg,
          test_cfg=test_cfg,
      )
      self.strides = strides
      self.norm_by_strides = norm_by_strides
      self.prior_generator = MlvlPointGenerator(strides)
      self.bbox_coder = TASK_UTILS.build(bbox_coder)
      self.use_sigmoid_cls = use_sigmoid_cls
      self.with_bezier = with_bezier
      if self.use_sigmoid_cls:
          self.cls_out_channels = num_classes
      else:
          self.cls_out_channels = num_classes + 1
  
file_path: mmocr/projects/ABCNet/abcnet/model/abcnet_det_postprocessor.py
imports: from functools import partial
  from typing import List
  import numpy
  import torch
  from mmcv.ops import batched_nms
  from mmdet.models.task_modules.prior_generators import MlvlPointGenerator
  from mmdet.models.utils import filter_scores_and_topk, multi_apply, select_single_mlvl
  from mmengine.structures import InstanceData
  from mmocr.models.textdet.postprocessors.base import BaseTextDetPostProcessor
  from mmocr.registry import MODELS, TASK_UTILS
label_desc: Use image node_id 1 to create a new ABCNetDetPostprocessor object from inherited base classes: BaseTextDetPostProcessor with example: obj = ABCNetDetPostprocessor(num_classes, use_sigmoid_cls, strides, norm_by_strides, bbox_coder, text_repr_type, rescale_fields, with_bezier, train_cfg, test_cfg)