class_docstr: The class for implementing single stage text detector.
  
  Single-stage text detectors directly and densely predict bounding boxes or
  polygons on the output features of the backbone + neck (optional).
  
  Args:
      backbone (dict): Backbone config.
      neck (dict, optional): Neck config. If None, the output from backbone
          will be directly fed into ``det_head``.
      det_head (dict): Head config.
      data_preprocessor (dict, optional): Model preprocessing config
          for processing the input image data. Keys allowed are
          ``to_rgb``(bool), ``pad_size_divisor``(int), ``pad_value``(int or
          float), ``mean``(int or float) and ``std``(int or float).
          Preprcessing order: 1. to rgb; 2. normalization 3. pad.
          Defaults to None.
      init_cfg (dict or list[dict], optional): Initialization configs.
          Defaults to None.
code: def __init__(
      self,
      backbone: Dict,
      det_head: Dict,
      neck: Optional[Dict] = None,
      data_preprocessor: Optional[Dict] = None,
      init_cfg: Optional[Dict] = None,
  ) -> None:
      super().__init__(
          data_preprocessor=data_preprocessor, init_cfg=init_cfg
      )
      assert det_head is not None, "det_head cannot be None!"
      self.backbone = MODELS.build(backbone)
      if neck is not None:
          self.neck = MODELS.build(neck)
      self.det_head = MODELS.build(det_head)
  
file_path: mmocr/mmocr/models/textdet/detectors/single_stage_text_detector.py
imports: from typing import Dict, Optional, Sequence
  import torch
  from mmocr.registry import MODELS
  from mmocr.structures import TextDetDataSample
  from .base import BaseTextDetector
label_desc: Use image node_id 1 to create a new SingleStageTextDetector object from inherited base classes: BaseTextDetector with example: obj = SingleStageTextDetector(backbone, det_head, neck, data_preprocessor, init_cfg)