class_docstr: Semi-COCODataSet used for supervised and unsupervised dataSet
code: def __init__(
      self,
      dataset_dir=None,
      image_dir=None,
      anno_path=None,
      data_fields=["image"],
      sample_num=-1,
      load_crowd=False,
      allow_empty=False,
      empty_ratio=1.0,
      repeat=1,
      supervised=True,
  ):
      super(SemiCOCODataSet, self).__init__(
          dataset_dir,
          image_dir,
          anno_path,
          data_fields,
          sample_num,
          load_crowd,
          allow_empty,
          empty_ratio,
          repeat,
      )
      self.supervised = supervised
      self.length = -1
  
imports: import os
  import copy
  import numpy
  from ppdet.core.workspace import register, serializable
  from .dataset import DetDataset
  from ppdet.utils.logger import setup_logger
label_desc: Use image node_id 1 to create a new SemiCOCODataSet object from inherited base classes: COCODataSet with example: obj = SemiCOCODataSet(dataset_dir, image_dir, anno_path, data_fields, sample_num, load_crowd, allow_empty, empty_ratio, repeat, supervised)