From 9d87471579c80d1c8baff6711c1297dec8f0dcf4 Mon Sep 17 00:00:00 2001 From: Benjamin Fiske Date: Wed, 4 May 2022 23:17:41 -0400 Subject: adding vgg weights --- __pycache__/losses.cpython-38.pyc | Bin 4701 -> 4603 bytes losses.py | 9 ++++----- main.py | 3 ++- save.jpg | Bin 40051 -> 39951 bytes vgg16_imagenet.h5 | Bin 0 -> 58909648 bytes 5 files changed, 6 insertions(+), 6 deletions(-) create mode 100644 vgg16_imagenet.h5 diff --git a/__pycache__/losses.cpython-38.pyc b/__pycache__/losses.cpython-38.pyc index 9678ad00..1112f0ad 100644 Binary files a/__pycache__/losses.cpython-38.pyc and b/__pycache__/losses.cpython-38.pyc differ diff --git a/losses.py b/losses.py index bc241282..c0989ed1 100644 --- a/losses.py +++ b/losses.py @@ -64,15 +64,17 @@ class YourModel(tf.keras.Model): for layer in self.vgg16: layer.trainable = False + self.layer_to_filters = {layer.name: layer.filters for layer in self.vgg16 if "conv" in layer.name} self.indexed_layers = [layer for layer in self.vgg16 if "conv1" in layer.name] self.desired = [layer.name for layer in self.vgg16 if "conv1" in layer.name] + self.vgg16 = tf.keras.Sequential(self.vgg16, name="vgg") + # create a map of the layers to their corresponding number of filters if it is a convolutional layer - self.layer_to_filters = {layer.name: layer.filters for layer in self.vgg16 if "conv" in layer.name} def call(self, x): layers = [] - for layer in self.vgg16: + for layer in self.vgg16.layers: # pass the x through x = layer(x) # print("Sotech117 is so so sus") @@ -159,6 +161,3 @@ class YourModel(tf.keras.Model): print(type(self.x)) print(type(gradients)) self.optimizer.apply_gradients(zip(gradients, [self.x])) - - - diff --git a/main.py b/main.py index 0d707b81..de769baa 100644 --- a/main.py +++ b/main.py @@ -53,7 +53,8 @@ def main(): style_image = imread(ARGS.style) style_image = np.resize(style_image, (255, 255, 3)) my_model = YourModel(content_image=content_image, style_image=style_image) - # my_model.vgg16.load_weights(ARGS.load_vgg, by_name=True) + my_model.vgg16.build([1, 255, 255, 3]) + my_model.vgg16.load_weights('vgg16_imagenet.h5', by_name=True) train(my_model) final_image = tf.squeeze(my_model.x) diff --git a/save.jpg b/save.jpg index 6590cc45..f479fa8d 100644 Binary files a/save.jpg and b/save.jpg differ diff --git a/vgg16_imagenet.h5 b/vgg16_imagenet.h5 new file mode 100644 index 00000000..08138b10 Binary files /dev/null and b/vgg16_imagenet.h5 differ -- cgit v1.2.3-70-g09d2