class_docstr: SniperCOCODataSet
class_docstr_tok: ["SniperCOCODataSet"]
code: def parse_dataset(self):
      if not hasattr(self, "roidbs"):
          super(SniperCOCODataSet, self).parse_dataset()
      if self.is_trainset:
          self._parse_proposals()
          self._merge_anno_proposals()
      self.ori_roidbs = copy.deepcopy(self.roidbs)
      self.init_anno_cropper()
      self.roidbs = self.generate_chips_roidbs(
          self.roidbs, self.is_trainset
      )
  
imports: import os
  import cv2
  import json
  import copy
  import numpy
  from ppdet.core.workspace import register, serializable
  from ppdet.data.crop_utils.annotation_cropper import AnnoCropper
  from .coco import COCODataSet
  from .dataset import _make_dataset, _is_valid_file
  from ppdet.utils.logger import setup_logger
label_desc: Use image node_id 2 for calling the SniperCOCODataSet obj's underlying member method code with example usage: obj.parse_dataset() without return types