1

Using ImageDataGenerator of Keras. suppose my folder structure is like

a -
  1.jpg
  2.jpg
  3.jpg
b -
  5.jpg
  6.jpg
  7.jpg

I am doing the augmentation like below :

for i in range (20):
    for label in LABELS:  # "LABELS" is the folder name here
        folder_tail = <--- -----------------------------------------how to ????
        if os.path.isdir('./f/'+folder_tail):
            print("Exists")
        else:
            print("Doesn't exists")
            os.makedirs('./f/'+folder_tail)

        datagen_kwargs = dict(rescale=1./255)  
        dataflow_kwargs = dict(target_size=(IMAGE_SIZE, IMAGE_SIZE), 
                            batch_size=BATCH_SIZE, interpolation="bilinear")

        train_datagen = tf.keras.preprocessing.image.ImageDataGenerator(
#         rotation_range=40,
#         horizontal_flip=True,
#         width_shift_range=0.2, 
#         height_shift_range=0.2,
#         shear_range=0.2, 
#         zoom_range=0.2,
#         fill_mode = 'nearest',
        **datagen_kwargs)

        train_generator = train_datagen.flow_from_directory(
          data_dir, subset="training", shuffle=True, save_to_dir='./f/'+ folder_tail, save_prefix=folder_tail , classes=[label], **dataflow_kwargs)

        batch = next(train_generator)

It's running fine but I am facing a problem with file saving. I want to save files with their previous name as prefixes after the augmentation process.

like

a - 
1_0_786786.jpg
1_0_786786.jpg
1_0_786786.jpg
......
2_0_785686.jpg
2_0_786786.jpg
2_0_786786.jpg
....

How can I add my folder_tail ?

siam
  • 109
  • 7
  • Maybe [this](https://stackoverflow.com/questions/47826730/how-to-save-resized-images-using-imagedatagenerator-and-flow-from-directory-in-k) discussion can help. – Shubham Panchal Oct 03 '22 at 12:22
  • Seems like this is not related to google-cloud-dataflow ? – chamikara Oct 03 '22 at 23:13
  • @ShubhamPanchal It's a little bit different case. I just want the augmented image as a prefix when saving the augmented images against an image. – siam Oct 04 '22 at 00:04

0 Answers0