Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -7,6 +7,7 @@ from PIL import Image
|
|
7 |
import requests
|
8 |
import base64
|
9 |
from io import BytesIO
|
|
|
10 |
|
11 |
# Define the number of classes
|
12 |
num_classes = 2 # Update with the actual number of classes in your dataset
|
@@ -68,6 +69,15 @@ def predict(image):
|
|
68 |
print(f"Error fetching image from URL: {e}")
|
69 |
return f"Error fetching image from URL: {e}"
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
# Validate that the image is correctly loaded
|
72 |
if not isinstance(image, Image.Image):
|
73 |
print("Invalid image format received.")
|
@@ -97,7 +107,7 @@ def predict(image):
|
|
97 |
# Create the Gradio interface
|
98 |
iface = gr.Interface(
|
99 |
fn=predict,
|
100 |
-
inputs=gr.Image(type="pil", label="Upload an image or provide a URL"), # Input: Image or
|
101 |
outputs=gr.Textbox(label="Prediction Result"), # Output: Predicted class
|
102 |
live=True,
|
103 |
title="Maize Anomaly Detection",
|
|
|
7 |
import requests
|
8 |
import base64
|
9 |
from io import BytesIO
|
10 |
+
import os
|
11 |
|
12 |
# Define the number of classes
|
13 |
num_classes = 2 # Update with the actual number of classes in your dataset
|
|
|
69 |
print(f"Error fetching image from URL: {e}")
|
70 |
return f"Error fetching image from URL: {e}"
|
71 |
|
72 |
+
# Check if the input is a local file path
|
73 |
+
elif isinstance(image, str) and os.path.isfile(image):
|
74 |
+
try:
|
75 |
+
image = Image.open(image)
|
76 |
+
print(f"Loaded image from local path: {image}")
|
77 |
+
except Exception as e:
|
78 |
+
print(f"Error loading image from local path: {e}")
|
79 |
+
return f"Error loading image from local path: {e}"
|
80 |
+
|
81 |
# Validate that the image is correctly loaded
|
82 |
if not isinstance(image, Image.Image):
|
83 |
print("Invalid image format received.")
|
|
|
107 |
# Create the Gradio interface
|
108 |
iface = gr.Interface(
|
109 |
fn=predict,
|
110 |
+
inputs=gr.Image(type="pil", label="Upload an image or provide a URL or local path"), # Input: Image, URL, or Local Path
|
111 |
outputs=gr.Textbox(label="Prediction Result"), # Output: Predicted class
|
112 |
live=True,
|
113 |
title="Maize Anomaly Detection",
|