Можно ли задавать переменную форму ввода при обучении супер разрешения GANS? - PullRequest
0 голосов
/ 11 января 2020

Я хочу тренировать модель GAN с суперразрешением с изменяемой формой ввода. учебный набор данных имеет изображения различных форм. Таким образом, идея заключается в том, что независимо от того, что является входным изображением, выходное изображение должно быть увеличенным в 4 раза. мой тренировочный код выглядит так

low_resolution_shape = (64, 64, 3)
high_resolution_shape = (256, 256, 3)

# Common optimizer for all networks
common_optimizer = tf.keras.optimizers.Adam(0.0002, 0.5)


# Build and compile VGG19 network to extract features
vgg = vgg19.build_vgg()
vgg.trainable = False
vgg.compile(loss='mse', optimizer=common_optimizer, metrics=['accuracy'])

# Build and compile the discriminator network
discriminator = discriminator.build_discriminator()
discriminator.compile(loss='mse', optimizer=common_optimizer, metrics=['accuracy'])

# Build the generator network
generator = generator.build_generator()

"""
Build and compile the adversarial model
"""

# Input layers for high-resolution and low-resolution images
input_high_resolution = tf.keras.layers.Input(shape=high_resolution_shape)
input_low_resolution = tf.keras.layers.Input(shape=low_resolution_shape)

# Generate high-resolution images from low-resolution images
generated_high_resolution_images = generator(input_low_resolution)

# Extract feature maps of the generated images
features = vgg(generated_high_resolution_images)

# Make the discriminator network as non-trainable
discriminator.trainable = False

# Get the probability of generated high-resolution images
probs = discriminator(generated_high_resolution_images)

# Create and compile an adversarial model
adversarial_model = tf.keras.models.Model([input_low_resolution, input_high_resolution], [probs, features])```

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...