code: def __call__(self, input):
      for data in input:
          image_path = data["image_path"]
          bbox = list(map(int, data["bbox"]))
          img = cv2.imread(image_path)
          crop_bbox = adjust_bbox(
              [bbox[0], bbox[1], bbox[0] + bbox[2], bbox[1] + bbox[3]],
              img_shape=img.shape[:2],
              pad_scale=self.pad_scale,
          )
          img_crop = img[
              crop_bbox[1] : crop_bbox[3],
              crop_bbox[0] : crop_bbox[2],
              :,
          ]
          data["img"] = img_crop
          data["img_shape"] = img.shape[:2]
          data["crop_bbox"] = [
              crop_bbox[0],
              crop_bbox[1],
              crop_bbox[2] - crop_bbox[0],
              crop_bbox[3] - crop_bbox[1],
          ]
      results = self.predictor.predict(input, aug_pred=self.aug_pred)
      return results
  
file_path: PaddleSeg/contrib/QualityInspector/qinspector/ops/segmentation.py
imports: import cv2
  from paddleseg.cvlibs import Config, SegBuilder
  from qinspector.cvlib.workspace import register
  from qinspector.utils.bbox_utils import adjust_bbox
  from qinspector.seg.engine import SegPredictor
label_desc: Use image node_id 2 for calling the CropSegmentation obj's underlying member method code with example usage: obj.__call__(input) and returns: results