code: def next_train_batch(self, batch_size):
          
          start = self.index_in_train_epoch
          self.index_in_train_epoch += batch_size
          if self.index_in_train_epoch > self.num_train_images:
              # Finished epoch
              self.train_epochs_completed += 1
  
              # Shuffle the data
              perm = np.arange(self.num_train_images)
              np.random.shuffle(perm)
              self.train_images = self.train_images[perm]
              self.train_labels = self.train_labels[perm]
  
              # Start next epoch
              start = 0
              self.index_in_train_epoch = batch_size
              assert batch_size <= self.num_train_images
  
          end = self.index_in_train_epoch
          return self.train_labels[start:end], self.img_norm(self.train_images[start:end])
docs: Return the next batch of examples from train data set
          :param batch_size: int, size of image batch returned
          :return train_labels: list, of labels
          :return images: list, of images