import numpy as np import cv2 as cv2 from tensorflow import keras import gradio as gr import matplotlib.pyplot as plt import os model = keras.models.load_model('./model1.h5') def pipeline(img_path, model= model): img = plt.imread(img_path) width = 96 height = 96 dim = (width, height) resized = cv2.resize(img, dim, interpolation = cv2.INTER_AREA) resized_gray = cv2.cvtColor(resized, cv2.COLOR_BGR2GRAY) formato = resized_gray.reshape(96,96,1) formato = np.repeat(formato, 3, axis=2) formato = np.expand_dims(formato,0) puntos = model.predict(formato) plt.imshow(resized) for i in range(1,31,2): plt.plot(puntos[0][i-1], puntos[0][i], 'ro') plt.savefig('tran.jpg') img = cv2.imread('tran.jpg') img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) os.remove('tran.jpg') plt.clf() return img examples=[] examples.append("./1.png") examples.append("./2.png") examples.append("./3.png") examples.append("./4.png") examples.append("./5.png") gr.Interface( pipeline, inputs=gr.inputs.Image(label="Upload THE FACEEEEOOOO", type="filepath"), outputs=gr.outputs.Image(type="numpy"), title="point on your uglo face >:(", examples=examples ).launch()