class_docstr: Base class for image data iterators.
  
  Every `Iterator` must implement the `_get_batches_of_transformed_samples`
  method.
  
  # Arguments
      n: Integer, total number of samples in the dataset to loop over.
      batch_size: Integer, size of a batch.
      shuffle: Boolean, whether to shuffle the data between epochs.
      seed: Random seeding for data shuffling.
code: def __init__(self, n, batch_size, shuffle, seed):
      self.n = n
      self.batch_size = batch_size
      self.seed = seed
      self.shuffle = shuffle
      self.batch_index = 0
      self.total_batches_seen = 0
      self.lock = threading.Lock()
      self.index_array = None
      self.index_generator = self._flow_index()
  
imports: import os
  import threading
  import numpy
  from keras_preprocessing import get_keras_submodule
  from .utils import array_to_img, img_to_array, load_img
label_desc: Use image node_id 1 to create a new Iterator object from inherited base classes: IteratorType with example: obj = Iterator(n, batch_size, shuffle, seed)