Spaces:
Sleeping
Sleeping
import tensorflow as tf | |
import numpy as np | |
import gradio as gr | |
# With the path to your actual .h5 file | |
model_path = 'model__xception.h5' | |
# Load the pre-trained model | |
model = tf.keras.models.load_model(model_path) | |
#Defining the labels | |
labels = ['Aloevera','Amla','Amruthaballi','Arali','Astma_weed','Badipala','Balloon_Vine','Bamboo','Beans','Betel','Bhrami','Bringaraja','Caricature','Castor','Catharanthus', | |
'Chakte','Chilly','Citron lime (herelikai)','Coffee','Common rue(naagdalli)','Coriender','Curry','Doddpathre','Drumstick','Ekka','Eucalyptus','Ganigale','Ganike', | |
'Gasagase','Ginger','Globe Amarnath','Guava','Henna','Hibiscus','Honge','Insulin','Jackfruit','Jasmine','Kambajala','Kasambruga','Kohlrabi','Lantana','Lemon', | |
'Lemongrass','Malabar_Nut','Malabar_Spinach','Mango','Marigold','Mint','Neem','Nelavembu','Nerale','Nooni','Onion','Padri','Palak(Spinach)','Papaya','Parijatha', | |
'Pea','Pepper','Pomoegranate','Pumpkin','Raddish','Rose','Sampige','Sapota','Seethaashoka','Seethapala','Spinach1','Tamarind','Taro','Tecoma','Thumbe','Tomato', | |
'Tulsi','Turmeric','ashoka','camphor','kamakasturi','kepala'] | |
## Define the predict function for Gradio | |
def predict_gradio(image): | |
# Preprocess the input image | |
img_array = tf.image.resize(image, (299, 299)) | |
img_array = tf.keras.preprocessing.image.img_to_array(img_array) | |
img_array = tf.expand_dims(img_array, 0) # Create a batch | |
# Make a prediction using the trained model | |
predictions = model.predict(img_array) | |
print(predictions) | |
score = tf.nn.sigmoid(predictions[0]) | |
return ("This image most likely belongs to {} with a {:.2f} percent confidence.".format(labels[np.argmax(score)], 100 * np.max(score))) | |
#Create a Gradio interface | |
iface = gr.Interface( | |
fn=predict_gradio, | |
inputs=gr.Image(), | |
outputs="label", | |
live=True, | |
cache_examples=False | |
) | |
# Launch the Gradio interface | |
iface.launch(share=True) |