Shue's picture
added Animefy web app files.
421360e
raw
history blame
No virus
1.44 kB
import os
import tensorflow.compat.v1 as tf
import numpy as np
os.environ["CUDA_VISIBLE_DEVICES"] = "-1"
# utils.py
from utils import *
# generator.py
import generator
# stylize input image with chosen anime style
def stylize(anime_style, input_image):
test_real = tf.placeholder(tf.float32, [1, None, None, 3], name='test')
with tf.variable_scope("generator", reuse=False):
test_generated = generator.G_net(test_real).fake
saver = tf.train.Saver()
# get model checkpoint folder according to chosen anime style
checkpoint_dir = 'models/' + anime_style
gpu_options = tf.GPUOptions(allow_growth=True)
with tf.Session(config=tf.ConfigProto(allow_soft_placement=True, gpu_options=gpu_options)) as sess:
# load style model and its weights
ckpt = tf.train.get_checkpoint_state(checkpoint_dir)
ckpt_name = os.path.basename(ckpt.model_checkpoint_path)
saver.restore(sess, os.path.join(checkpoint_dir, ckpt_name))
# load and preprocess input image as a NumPy array
image = np.asarray(load_input_image(input_image))
# stylize image
output_image = sess.run(test_generated, feed_dict = {test_real : image})
# adjust brightness of output image
output_image = adjust_brightness_from_src_to_dst(inverse_transform(output_image.squeeze()), read_img(input_image))
return output_image