class_docstr: Affine transformer implements affine transformation on a given tensor.
  To avoid defects in resampling, the mapping is from destination to source.
  dst(z,y,x) = src(f(z),f(y),f(x)) where f: dst -> src
  :param affine_mat: numpy array in 3x3 shape.Define affine transformation from dst to src.
  :param translation: numpy array in 3 dimension.Default value is np.zero(3).
          Define translation in each axis.
  :param clampMode: str, default value is "clamp".
          Define how to handle interpolation off the input image.
  :param padVal: float, default is 0.0. Define padding value when clampMode="padding".
          Setting this value when clampMode="clamp" will cause an error.
code: def __init__(
      self,
      affine_mat,
      translation=np.zeros(3),
      clamp_mode="clamp",
      pad_val=0.0,
      bigdl_type="float",
  ):
      affine_mat_tensor = JTensor.from_ndarray(affine_mat)
      translation_tensor = JTensor.from_ndarray(translation)
      super(AffineTransform3D, self).__init__(
          bigdl_type,
          affine_mat_tensor,
          translation_tensor,
          clamp_mode,
          pad_val,
      )
  
imports: import sys
  import numpy
  from bigdl.dllib.utils.common import *
  from bigdl.dllib.feature.image.imagePreprocessing import *
  from bigdl.dllib.feature.image.imageset import *
label_desc: Use image node_id 1 to create a new AffineTransform3D object from inherited base classes: ImagePreprocessing3D with example: obj = AffineTransform3D(affine_mat, translation, clamp_mode, pad_val, bigdl_type)