code: def next_batch(self, batch_size):
      start = self._batch_counter * batch_size
      end = (self._batch_counter + 1) * batch_size
      self._batch_counter += 1
      images_slice = self.epoch_images[start:end]
      labels_slice = self.epoch_labels[start:end]
      # due to memory error it should be done inside batch
      if self.normalization is not None:
          images_slice = self.normalize_images(
              images_slice, self.normalization
          )
      if images_slice.shape[0] != batch_size:
          self.start_new_epoch()
          return self.next_batch(batch_size)
      else:
          return images_slice, labels_slice
  
file_path: auptimizer/src/aup/Proposer/eas/data_providers/svhn.py
imports: import tempfile
  import os
  import scipy.io
  import numpy
  from ..data_providers.base_provider import ImagesDataSet, DataProvider
  from ..data_providers.downloader import download_data_url
label_desc: Use image node_id 4 for calling the SVHNDataSet obj's underlying member method code with example usage: obj.next_batch(batch_size) and returns: self, images_slice,  labels_slice