File size: 831 Bytes
c789a0b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import gradio as gr
import os

from fastai.vision.all import *

learn = load_learner("vegetable-classifier.pkl")

labels = learn.dls.vocab


def predict(img):
    img = PILImage.create(img)
    pred, pred_idx, probs = learn.predict(img)
    return {labels[i]: float(probs[i]) for i in range(len(labels))}


title = "Classify vegetables"
description = "A vegetable classifier trained on the vegetable-image-dataset from Kaggle. Made for the fastai deep learning course."


dst_path = "./gradio_example_images"
_examples = [f"{dst_path}/{i}" for i in os.listdir(dst_path)]

gr.Interface(
    fn=predict,
    inputs=gr.inputs.Image(shape=(512, 512)),
    outputs=gr.outputs.Label(num_top_classes=3),
    title=title,
    description=description,
    examples=_examples,
    interpretation="default",
    enable_queue=True,
).launch()