class_docstr: Extractor to generate patches with or without padding.
  Turn on debug mode to see how it is done.
  
  Args:
      x         : input image, should be of shape HWC
      patch_size  : a tuple of (h, w)
      step_size : a tuple of (h, w)
  Return:
      a list of sub patches, each patch has dtype same as x
  
  Examples:
      >>> xtractor = PatchExtractor((450, 450), (120, 120))
      >>> img = np.full([1200, 1200, 3], 255, np.uint8)
      >>> patches = xtractor.extract(img, 'mirror')
code: def __init__(self, patch_size, step_size):
      self.patch_type = "mirror"
      self.patch_size = patch_size
      self.step_size = step_size
  
imports: import math
  import numpy
label_desc: Use image node_id 1 to create a new PatchExtractor object  with example: obj = PatchExtractor(patch_size, step_size)