Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import tensorflow as tf | |
| import tensorflow_hub as hub | |
| import numpy as np | |
| # Load your trained model | |
| model = tf.keras.models.load_model("model.h5", custom_objects={'KerasLayer': hub.KerasLayer}) | |
| # Define your waste class labels | |
| class_names = ['batteries', 'clothes', 'e-waste', 'glass', 'light blubs', | |
| 'metal', 'organic', 'paper', 'plastic'] | |
| IMG_SIZE = 224 | |
| # Image preprocessing function | |
| def preprocess_image(image): | |
| image = tf.convert_to_tensor(image, dtype=tf.float32) | |
| image = tf.image.resize(image, (IMG_SIZE, IMG_SIZE)) / 255.0 | |
| return tf.expand_dims(image, axis=0) | |
| # Prediction function | |
| def predict_waste(image): | |
| processed = preprocess_image(image) | |
| preds = model.predict(processed) | |
| label = class_names[np.argmax(preds)] | |
| confidence = float(np.max(preds)) | |
| return f"{label} ({confidence:.2f})" | |
| # Example images – update these paths with actual examples in your Colab space | |
| examples = [ | |
| ["examples/Zeitungen-und-Zeitschriften.png"], | |
| ["examples/hazardous-toxic-electronic-waste-mixture-260nw-1593448036.jpg"], | |
| ["examples/composting_medium-size.jpg"], | |
| ["examples/zero-waste-recycling-wooden-thing-wooden-background-zero-waste-recycling-wooden-thing-wooden-background-flat-lay-158056259.jpg"], | |
| ["examples/plastic waste.png"] | |
| ] | |
| # Launch Gradio Interface | |
| iface = gr.Interface( | |
| fn=predict_waste, | |
| inputs=gr.Image(type="numpy", label="Upload a Waste Image"), | |
| outputs="text", | |
| title="Waste Classification Model 🌱", | |
| description="Upload an image of a waste item to classify it as one of 9 categories.", | |
| examples=examples | |
| ) | |
| iface.launch() |