DHEIVER's picture
Update app.py
78b24ae
raw
history blame
1.14 kB
import gradio as gr
import tensorflow as tf
from tensorflow.keras.models import load_model
from tensorflow.keras.layers import Layer
# Define the custom 'FixedDropout' layer
class FixedDropout(Layer):
def __init__(self, rate, **kwargs):
super(FixedDropout, self).__init__(**kwargs)
self.rate = rate
def call(self, inputs, training=None):
if training is None:
training = K.learning_phase()
if training == 1:
return K.dropout(inputs, self.rate)
return inputs
# Register the custom layer in a custom object scope
custom_objects = {"FixedDropout": FixedDropout}
# Load the TensorFlow model with the custom object scope
tf_model_path = 'modelo_treinado.h5' # Update with the path to your model
tf_model = load_model(tf_model_path, custom_objects=custom_objects)
# Class labels for the model
class_labels = ["Normal", "Cataract"]
# Define a function for prediction
def predict(image):
# Your prediction code here...
# Create the Gradio interface
gr.Interface(
fn=predict,
inputs=gr.Image(type="pil"),
outputs=gr.Label(num_top_classes=2)
).launch()