code: def read_CIFAR100(data_folder):
      """Reads and parses examples from CIFAR100 python data files"""
  
      train_img = []
      train_label = []
      test_img = []
      test_label = []
  
      train_file_list = ["cifar-100-python/train"]
      test_file_list = ["cifar-100-python/test"]
  
      tmp_dict = unpickle(os.path.join(data_folder, train_file_list[0]))
      train_img.append(tmp_dict["data"])
      train_label.append(tmp_dict["fine_labels"])
  
      tmp_dict = unpickle(os.path.join(data_folder, test_file_list[0]))
      test_img.append(tmp_dict["data"])
      test_label.append(tmp_dict["fine_labels"])
  
      train_img = np.concatenate(train_img)
      train_label = np.concatenate(train_label)
      test_img = np.concatenate(test_img)
      test_label = np.concatenate(test_label)
  
      train_img = np.reshape(
          train_img,
          [NUM_TRAIN_IMG, NUM_CHANNEL, IMAGE_HEIGHT, IMAGE_WIDTH],
      )
      test_img = np.reshape(
          test_img,
          [NUM_TEST_IMG, NUM_CHANNEL, IMAGE_HEIGHT, IMAGE_WIDTH],
      )
  
      # change format from [B, C, H, W] to [B, H, W, C] for feeding to Tensorflow
      train_img = np.transpose(train_img, [0, 2, 3, 1])
      test_img = np.transpose(test_img, [0, 2, 3, 1])
      mean_img = np.mean(np.concatenate([train_img, test_img]), axis=0)
  
      CIFAR100_data = {}
      CIFAR100_data["train_img"] = train_img - mean_img
      CIFAR100_data["test_img"] = test_img - mean_img
      CIFAR100_data["train_label"] = train_label
      CIFAR100_data["test_label"] = test_label
  
      return CIFAR100_data
  
file_path: cleverhans/cleverhans_v3.1.0/examples/multigpu_advtrain/utils_cifar.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import os
  import cPickle
  import numpy
  from six.moves import range
  import tensorflow
label_desc: Use image node_id 3 for calling a global function with example usage: read_CIFAR100(data_folder) and returns: CIFAR100_data