class_docstr: Apply Rotate Transformation to image (and its corresponding bbox, mask,
  segmentation).
  
  Args:
      level (int | float): The level should be in range (0,_MAX_LEVEL].
      scale (int | float): Isotropic scale factor. Same in
          ``mmcv.imrotate``.
      center (int | float | tuple[float]): Center point (w, h) of the
          rotation in the source image. If None, the center of the
          image will be used. Same in ``mmcv.imrotate``.
      img_fill_val (int | float | tuple): The fill value for image border.
          If float, the same value will be used for all the three
          channels of image. If tuple, the should be 3 elements (e.g.
          equals the number of channels for image).
      seg_ignore_label (int): The fill value used for segmentation map.
          Note this value must equals ``ignore_label`` in ``semantic_head``
          of the corresponding config. Default 255.
      prob (float): The probability for perform transformation and
          should be in range 0 to 1.
      max_rotate_angle (int | float): The maximum angles for rotate
          transformation.
      random_negative_prob (float): The probability that turns the
           offset negative.
class_docstr_tok: ["Apply","Rotate","Transformation","to","image","(","and","its","corresponding","bbox",",","mask",",","segmentation",")",".","Args",":","level","(","int","|","float",")",":","The","level","should","be","in","range","(","0",",","_MAX_LEVEL","]",".","scale","(","int","|","float",")",":","Isotropic","scale","factor",".","Same","in","``","mmcv.imrotate","``",".","center","(","int","|","float","|","tuple","[","float","]",")",":","Center","point","(","w",",","h",")","of","the","rotation","in","the","source","image",".","If","None",",","the","center","of","the","image","will","be","used",".","Same","in","``","mmcv.imrotate","``",".","img_fill_val","(","int","|","float","|","tuple",")",":","The","fill","value","for","image","border",".","If","float",",","the","same","value","will","be","used","for","all","the","three","channels","of","image",".","If","tuple",",","the","should","be","3","elements","(","e.g",".","equals","the","number","of","channels","for","image",")",".","seg_ignore_label","(","int",")",":","The","fill","value","used","for","segmentation","map",".","Note","this","value","must","equals","``","ignore_label","``","in","``","semantic_head","``","of","the","corresponding","config",".","Default","255.","prob","(","float",")",":","The","probability","for","perform","transformation","and","should","be","in","range","0","to","1.","max_rotate_angle","(","int","|","float",")",":","The","maximum","angles","for","rotate","transformation",".","random_negative_prob","(","float",")",":","The","probability","that","turns","the","offset","negative","."]
docstr: Call function to rotate images, bounding boxes, masks and semantic
  segmentation maps.
  
  Args:
      results (dict): Result dict from loading pipeline.
  
  Returns:
      dict: Rotated results.
docstr_tok: ["Call","function","to","rotate","images",",","bounding","boxes",",","masks","and","semantic","segmentation","maps",".","Args",":","results","(","dict",")",":","Result","dict","from","loading","pipeline",".","Returns",":","dict",":","Rotated","results","."]
code: def __call__(self, results):
      """Call function to rotate images, bounding boxes, masks and semantic
      segmentation maps.
  
      Args:
          results (dict): Result dict from loading pipeline.
  
      Returns:
          dict: Rotated results.
      """
      if np.random.rand() > self.prob:
          return results
      h, w = results["img"].shape[:2]
      center = self.center
      if center is None:
          center = ((w - 1) * 0.5, (h - 1) * 0.5)
      angle = random_negative(self.angle, self.random_negative_prob)
      self._rotate_img(results, angle, center, self.scale)
      rotate_matrix = cv2.getRotationMatrix2D(
          center, -angle, self.scale
      )
      self._rotate_bboxes(results, rotate_matrix)
      self._rotate_masks(results, angle, center, self.scale, fill_val=0)
      self._rotate_seg(
          results,
          angle,
          center,
          self.scale,
          fill_val=self.seg_ignore_label,
      )
      self._filter_invalid(results)
      return results
  
imports: import copy
  import cv2
  import mmcv
  import numpy
  from ..builder import PIPELINES
  from .compose import Compose
label_desc: Use image node_id 7 for calling the Rotate obj's underlying member method code with example usage: obj.__call__(results) and returns: results, results