DCGAN / app.py
egesko's picture
Update app.py
609c5c1
import gradio as gr
import tensorflow as tf
import numpy as np
from matplotlib import cm
from PIL import Image
import imageio
generator = tf.keras.models.load_model('dc_gan.h5')
def interpolate(steps,fps):
#CHANGE LATER
start = tf.random.normal(shape=(1,128))
end = tf.random.normal(shape=(1,128))
#---------------
input_vectors = np.squeeze(np.linspace(start,end,steps))
image_vectors = np.array(generator.predict(input_vectors))
writer = imageio.get_writer('test.mp4', fps=fps)
for im in image_vectors:
writer.append_data((im*255).astype('uint8'))
writer.close()
return gr.Video(value = 'test.mp4')
demo = gr.Blocks()
with demo:
output_interpolation = gr.Video()
STEPS = gr.Slider(1, 100, step=1,label="Steps")
FPS = gr.Slider(1, 50, step=1,label="fps")
btn = gr.Button("Submit")
btn.click(interpolate, inputs=[STEPS ,FPS], outputs=[output_interpolation])
demo.launch()