0

I wrote a code for the segmentation of iris images and got relatively good results. But I need to do it better. I want to use k-fold cross validation.

I wrote a code for the segmentation of iris images and got relatively good results. But I need to do it better. I want to use k-fold cross validation.

from tensorflow.keras.preprocessing.image import ImageDataGenerator

batch_size = 8
target_size = (45, 60)
seed = 123

image_datagen = ImageDataGenerator(rescale=1./255)
mask_datagen = ImageDataGenerator(rescale=1./255)
val_image_datagen = ImageDataGenerator(rescale=1./255)
val_mask_datagen = ImageDataGenerator(rescale=1./255)
test_image_datagen = ImageDataGenerator(rescale=1./255)
test_mask_datagen = ImageDataGenerator(rescale=1./255)


train_image_generator = image_datagen.flow_from_directory(
        '/content/offf/off-axis/aff-axis',
        color_mode="grayscale",
        batch_size=batch_size,
        class_mode=None,
        target_size=target_size,
        shuffle=True,
        seed=seed)

train_mask_generator = mask_datagen.flow_from_directory(
        '/content/offf/off-axis/off-axisgt',
        batch_size=batch_size,
        color_mode="grayscale",
        class_mode=None,
        target_size=target_size,
        shuffle=True,
        seed=seed)

val_image_generator = val_image_datagen.flow_from_directory(
        '/content/off/off-axis/valid/val',
        color_mode="grayscale",
        batch_size=batch_size,
        class_mode=None,
        target_size=target_size,
        shuffle=True,
        seed=seed)

val_mask_generator = val_mask_datagen.flow_from_directory(
        '/content/off/off-axis/valid/mask',
        batch_size=batch_size,
        color_mode="grayscale",
        class_mode=None,
        target_size=target_size,
        shuffle=True,
        seed=seed)

test_image_generator = test_image_datagen.flow_from_directory(
        '/content/off/off-axis/testset/test',
        batch_size=batch_size,
        color_mode="grayscale",
        class_mode=None,
        target_size=target_size,
        shuffle=True,
        seed=seed)
test_mask_generator = test_image_datagen.flow_from_directory(
        '/content/off/off-axis/testset/gt',
        batch_size=batch_size,
        color_mode="grayscale",
        class_mode=None,
        target_size=target_size,
        shuffle=True,
        seed=seed)



train_generator = (pair for pair in zip(train_image_generator, train_mask_generator))
#train_generator = zip(train_image_generator, train_mask_generator)
val_generator = (pair for pair in zip(val_image_generator, val_mask_generator))

.........
opt = Adam(learning_rate=5e-5, beta_1=0.9 , beta_2=0.999) # Adam optimizer
loss = MSE # Mean Square Error for loss function
model.compile(optimizer=opt, loss = loss, metrics = 'acc')


results = model.fit(train_generator,
                steps_per_epoch = len(train_image_generator),
                validation_data=val_generator,
                validation_steps=len(val_image_generator),
                epochs=50)
  • Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking. – Community Mar 05 '23 at 11:05
  • I want to know how to write the code to use Cross-validation based on the codes I wrote before... – mohammad zeidi Mar 05 '23 at 11:19

0 Answers0