docstr: Randomly zoom in and/or out on an image 
  
  Arguments
  ---------
  zoom_range : tuple or list with 2 values, both between (0, infinity)
      lower and upper bounds on percent zoom. 
      Anything less than 1.0 will zoom in on the image, 
      anything greater than 1.0 will zoom out on the image.
      e.g. (0.7, 1.0) will only zoom in, 
           (1.0, 1.4) will only zoom out,
           (0.7, 1.4) will randomly zoom in or out
  
  interp : string in {'bilinear', 'nearest'} or list of strings
      type of interpolation to use. You can provide a different
      type of interpolation for each input, e.g. if you have two
      inputs then you can say `interp=['bilinear','nearest']
  
  lazy    : boolean
      if false, perform the transform on the tensor and return the tensor
      if true, only create the affine transform matrix and return that
docstr_tok: ["Randomly","zoom","in","and\/or","out","on","an","image","Arguments","--","--","--","--","-","zoom_range",":","tuple","or","list","with","2","values",",","both","between","(","0",",","infinity",")","lower","and","upper","bounds","on","percent","zoom",".","Anything","less","than","1.0","will","zoom","in","on","the","image",",","anything","greater","than","1.0","will","zoom","out","on","the","image",".","e.g",".","(","0.7",",","1.0",")","will","only","zoom","in",",","(","1.0",",","1.4",")","will","only","zoom","out",",","(","0.7",",","1.4",")","will","randomly","zoom","in","or","out","interp",":","string","in","{","'bilinear","'",",","'nearest","'","}","or","list","of","strings","type","of","interpolation","to","use",".","You","can","provide","a","different","type","of","interpolation","for","each","input",",","e.g",".","if","you","have","two","inputs","then","you","can","say","`","interp=","[","'bilinear","'",",","'nearest","'","]","lazy",":","boolean","if","false",",","perform","the","transform","on","the","tensor","and","return","the","tensor","if","true",",","only","create","the","affine","transform","matrix","and","return","that"]
code: def __init__(self, zoom_range, interp="bilinear", lazy=False):
      """
      Randomly zoom in and/or out on an image
  
      Arguments
      ---------
      zoom_range : tuple or list with 2 values, both between (0, infinity)
          lower and upper bounds on percent zoom.
          Anything less than 1.0 will zoom in on the image,
          anything greater than 1.0 will zoom out on the image.
          e.g. (0.7, 1.0) will only zoom in,
               (1.0, 1.4) will only zoom out,
               (0.7, 1.4) will randomly zoom in or out
  
      interp : string in {'bilinear', 'nearest'} or list of strings
          type of interpolation to use. You can provide a different
          type of interpolation for each input, e.g. if you have two
          inputs then you can say `interp=['bilinear','nearest']
  
      lazy    : boolean
          if false, perform the transform on the tensor and return the tensor
          if true, only create the affine transform matrix and return that
      """
      if not isinstance(zoom_range, list) and not isinstance(
          zoom_range, tuple
      ):
          raise ValueError(
              "zoom_range must be tuple or list with 2 values"
          )
      self.zoom_range = zoom_range
      self.interp = interp
      self.lazy = lazy
  
imports: import math
  import random
  import torch
  from ..utils import th_affine2d, th_random_choice
label_desc: Use image node_id 1 to create a new RandomZoom object  with example: obj = RandomZoom(zoom_range, interp, lazy)