|
import gradio as gr |
|
from tensorflow.keras.models import load_model |
|
from tensorflow.keras.preprocessing import image |
|
import numpy as np |
|
|
|
# Load the model |
|
model = load_model('best_model.h5') |
|
|
|
def classify_image(inp): |
|
inp = inp.reshape((-1, 224, 224, 3)) |
|
inp = preprocess_input(inp) |
|
prediction = model.predict(inp).flatten() |
|
return {f"Class {i}": float(prediction[i]) for i in range(2)} |
|
|
|
image = gr.inputs.Image(shape=(224, 224)) |
|
label = gr.outputs.Label(num_top_classes=2) |
|
|
|
gr.Interface(fn=classify_image, inputs=image, outputs=label, capture_session=True).launch() |
|
|