File size: 1,168 Bytes
0630ca1
 
 
 
 
f8393d0
 
ea6f5ba
 
f8393d0
0630ca1
 
 
 
 
 
 
 
 
 
 
369428e
0630ca1
 
 
93ed2e5
 
0630ca1
 
 
 
 
 
 
11e4dea
0630ca1
 
 
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
35
36
37
38
import gradio as gr
import torch
from huggingface_hub import from_pretrained_fastai
from pathlib import Path

examples = ["examples/example_0.png", 
            "examples/example_1.png", 
            "examples/example_2.png", 
            "examples/example_3.png", 
            "examples/example_4.png"]
            
repo_id = "hugginglearners/rice_image_classification"
path = Path("./")

def get_y(r):
    return r["label"]
    
def get_x(r):
    return path/r["fname"]
    
learner = from_pretrained_fastai(repo_id)
labels = learner.dls.vocab

def inference(image):
    label_predict,_,probs = learner.predict(image)
    labels_probs = {labels[i]: float(probs[i]) for i, _ in enumerate(labels)}
    return labels_probs

gr.Interface(
    fn=inference,
    title="Rice image classification",
    description = "Predict which type of rice belong to Arborio, Basmati, Ipsala, Jasmine, Karacadag",
    inputs="image",
    examples=examples,
    outputs=gr.outputs.Label(num_top_classes=5, label='Prediction'),
    cache_examples=False,
    article = "Author: <a href=\"https://www.linkedin.com/in/vumichien/\">Vu Minh Chien</a>",
).launch(debug=True, enable_queue=True)