code: def download_texture_to_working_folder(
      broden_path, saving_path, texture_name, number_of_images
  ):
      # Create new experiment folder where we're moving the data to
      texture_saving_path = os.path.join(saving_path, texture_name)
      tf.io.gfile.makedirs(texture_saving_path)
  
      # Get images from broden
      broden_textures_path = os.path.join(
          broden_path, kBrodenTexturesPath
      )
      tf.compat.v1.logging.info(
          "Using path "
          + str(broden_textures_path)
          + " for texture: "
          + str(texture_name)
      )
      for root, dirs, files in os.walk(broden_textures_path):
          # Broden contains _color suffixed images. Those shouldn't be used by tcav.
          texture_files = [
              a
              for a in files
              if (a.startswith(texture_name) and "color" not in a)
          ]
          number_of_files_for_concept = len(texture_files)
          tf.compat.v1.logging.info(
              "We have "
              + str(len(texture_files))
              + " images for the concept "
              + texture_name
          )
  
          # Make sure we can fetch as many as the user requested.
          if number_of_images > number_of_files_for_concept:
              raise Exception(
                  "Concept "
                  + texture_name
                  + " only contains "
                  + str(number_of_files_for_concept)
                  + " images. You requested "
                  + str(number_of_images)
              )
  
          # We are only moving data we are guaranteed to have, so no risk for infinite loop here.
          save_number = number_of_images
          while save_number > 0:
              for file in texture_files:
                  path_file = os.path.join(root, file)
                  texture_saving_path_file = os.path.join(
                      texture_saving_path, file
                  )
                  tf.io.gfile.copy(
                      path_file,
                      texture_saving_path_file,
                      overwrite=True,
                  )  # change you destination dir
                  save_number -= 1
                  # Break if we saved all images
                  if save_number <= 0:
                      break
  
file_path: tcav/tcav/tcav_examples/image_models/imagenet/imagenet_and_broden_fetcher.py
imports: import pandas
  import urllib.request
  import os
  import shutil
  import PIL
  from PIL import Image
  import tensorflow
  import socket
  import random
label_desc: Use image node_id 5 for calling a global function with example usage: download_texture_to_working_folder(broden_path, saving_path, texture_name, number_of_images) without return types