class_docstr: A deterministic image transformation, used to implement
  the (probably random) augmentors.
  
  This class is also the place to provide a default implementation to any
  :meth:`apply_xxx` method.
  The current default is to raise NotImplementedError in any such methods.
  
  All subclasses should implement `apply_image`.
  The image should be of type uint8 in range [0, 255], or
  floating point images in range [0, 1] or [0, 255]
  
  Some subclasses may implement `apply_coords`, when applicable.
  It should take and return a numpy array of Nx2, where each row is the (x, y) coordinate.
  
  The implementation of each method may choose to modify its input data
  in-place for efficient transformation.
class_docstr_tok: ["A","deterministic","image","transformation",",","used","to","implement","the","(","probably","random",")","augmentors",".","This","class","is","also","the","place","to","provide","a","default","implementation","to","any",":","meth",":","`","apply_xxx","`","method",".","The","current","default","is","to","raise","NotImplementedError","in","any","such","methods",".","All","subclasses","should","implement","`","apply_image","`",".","The","image","should","be","of","type","uint8","in","range","[","0",",","255","]",",","or","floating","point","images","in","range","[","0",",","1","]","or","[","0",",","255","]","Some","subclasses","may","implement","`","apply_coords","`",",","when","applicable",".","It","should","take","and","return","a","numpy","array","of","Nx2",",","where","each","row","is","the","(","x",",","y",")","coordinate",".","The","implementation","of","each","method","may","choose","to","modify","its","input","data","in-place","for","efficient","transformation","."]
code: def __getattr__(self, name):
      if name.startswith("apply_"):
  
          def f(x):
              raise NotImplementedError(
                  "{} does not implement method {}".format(
                      self.__class__.__name__, name
                  )
              )
  
          return f
      raise AttributeError(
          "Transform object has no attribute {}".format(name)
      )
  
imports: import numpy
  import cv2
  from ...utils.argtools import log_once
  from .base import ImageAugmentor, _default_repr
label_desc: Use image node_id 2 for calling the Transform obj's underlying member method code with example usage: obj.__getattr__(name) and returns: f