Spaces:
Sleeping
Sleeping
File size: 1,916 Bytes
fe6f0ef eeaa8d0 4b555a1 eeaa8d0 fe6f0ef 0e4d3e5 5e00ad7 fe6f0ef 5e00ad7 fe6f0ef 5e00ad7 52994fc fe6f0ef ad7849a b8fb8cf ad7849a 0e4d3e5 ad7849a b8fb8cf fe6f0ef 5e00ad7 fe6f0ef 5e00ad7 fe6f0ef 5e00ad7 4b555a1 b8fb8cf fe6f0ef 4b555a1 0e4d3e5 5aab43b 0e4d3e5 fe6f0ef 5e00ad7 0e4d3e5 5e00ad7 87f72b7 fe6f0ef f973db1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
import gradio as gr
import tensorflow as tf
from huggingface_hub import from_pretrained_keras
from tensorflow.keras import mixed_precision
# Load your trained models
model1 = from_pretrained_keras("ml-debi/EfficientNetB0-Food101")
#model2 = from_pretrained_keras("ml-debi/EfficientNetB0-Food101")
with open('classes.txt', 'r') as f:
classes = [line.strip() for line in f]
# Add information about the models
model1_info = """
### Model 1 Information
This model is based on the EfficientNetB0 architecture and was trained on the Food101 dataset.
"""
#model2_info = """
#### Model 2 Information
#This model is based on the EfficientNetB0 architecture and was trained on augmented data, providing improved generalization.
#"""
examples = [["./examples/club_sandwich.jpg"], ["./examples/edamame.jpg"], ["./examples/eggs_benedict.jpg"]]
def preprocess(image):
print("before resize", image.shape)
image = tf.image.resize(image, [224, 224])
image = tf.expand_dims(image, axis=0)
print("After expanddims", image.shape)
return image
def predict(image):
# Choose the model based on the dropdown selection
#print("---model_selection---", model_selection) #
#model = model1 if model_selection == "EfficentNetB0 Fine Tune" else model2
#print(model.summary())
if mixed_precision.global_policy() == "mixed_float16":
mixed_precision.set_global_policy(policy="float32")
image = preprocess(image)
print(mixed_precision.global_policy())
prediction = model1.predict(image)[0]
print("model prediction", prediction)
confidences = {model1.config['id2label'][str(i)]: float(prediction[i]) for i in range(101)}
return confidences
iface = gr.Interface(
fn=predict,
inputs=[gr.Image()],
outputs=[gr.Label(num_top_classes=5)],
title="Food Vision Mini Project",
description=f"{model1_info}\n",
examples=examples
)
iface.launch()
|