class_docstr: Apply Shear Transformation to image (and its corresponding bbox, mask,
  segmentation).
  
  Args:
      level (int | float): The level should be in range [0,_MAX_LEVEL].
      img_fill_val (int | float | tuple): The filled values for image border.
          If float, the same fill value will be used for all the three
          channels of image. If tuple, the should be 3 elements.
      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 performing Shear and should be in
          range [0, 1].
      direction (str): The direction for shear, either "horizontal"
          or "vertical".
      max_shear_magnitude (float): The maximum magnitude for Shear
          transformation.
      random_negative_prob (float): The probability that turns the
              offset negative. Should be in range [0,1]
      interpolation (str): Same as in :func:`mmcv.imshear`.
class_docstr_tok: ["Apply","Shear","Transformation","to","image","(","and","its","corresponding","bbox",",","mask",",","segmentation",")",".","Args",":","level","(","int","|","float",")",":","The","level","should","be","in","range","[","0",",","_MAX_LEVEL","]",".","img_fill_val","(","int","|","float","|","tuple",")",":","The","filled","values","for","image","border",".","If","float",",","the","same","fill","value","will","be","used","for","all","the","three","channels","of","image",".","If","tuple",",","the","should","be","3","elements",".","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","performing","Shear","and","should","be","in","range","[","0",",","1","]",".","direction","(","str",")",":","The","direction","for","shear",",","either","``","horizontal","''","or","``","vertical","''",".","max_shear_magnitude","(","float",")",":","The","maximum","magnitude","for","Shear","transformation",".","random_negative_prob","(","float",")",":","The","probability","that","turns","the","offset","negative",".","Should","be","in","range","[","0,1","]","interpolation","(","str",")",":","Same","as","in",":","func",":","`","mmcv.imshear","`","."]
code: def __repr__(self):
      repr_str = self.__class__.__name__
      repr_str += f"(level={self.level}, "
      repr_str += f"img_fill_val={self.img_fill_val}, "
      repr_str += f"seg_ignore_label={self.seg_ignore_label}, "
      repr_str += f"prob={self.prob}, "
      repr_str += f"direction={self.direction}, "
      repr_str += f"max_shear_magnitude={self.max_shear_magnitude}, "
      repr_str += f"random_negative_prob={self.random_negative_prob}, "
      repr_str += f"interpolation={self.interpolation})"
      return repr_str
  
imports: import copy
  import cv2
  import mmcv
  import numpy
  from ..builder import PIPELINES
  from .compose import Compose
label_desc: Use image node_id 8 for calling the Shear obj's underlying member method code with example usage: obj.__repr__() and returns: repr_str