File size: 888 Bytes
014d166
 
 
2122cec
71c7a7e
014d166
be235f8
014d166
 
2122cec
014d166
71c7a7e
 
 
 
 
 
 
 
 
 
 
 
014d166
 
 
13160f3
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
import gradio as gr
from fastai.vision.all import *
import skimage
from fastai.vision.all import PILImage
import datetime  # Import datetime to generate unique filenames

learn = load_learner('export.pkl')

labels = learn.dls.vocab

def predict(img):
    img = PILImage.create(img)
    img = img.resize((512, 512))
    pred, pred_idx, probs = learn.predict(img)
    
    # Check if the prediction is "elephant"
    if pred == "elephant":
        # Generate a unique filename using the current timestamp
        filename = f"elephant_{datetime.datetime.now().strftime('%Y%m%d_%H%M%S')}.jpg"
        # Save the image
        img.save(filename)
    
    return {labels[i]: float(probs[i]) for i in range(len(labels))}

examples = ['image1.jpg', 'image2.jpg']

gr.Interface(fn=predict, inputs=gr.components.Image(), outputs=gr.components.Label(num_top_classes=3), examples=examples).launch()