File size: 1,383 Bytes
3124dd7
 
 
 
 
 
 
 
f242b40
 
3124dd7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f242b40
3124dd7
 
 
 
 
 
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
# AUTOGENERATED! DO NOT EDIT! File to edit: ../app.ipynb.

# %% auto 0
__all__ = ['learn', 'categories', 'image', 'label', 'examples', 'intf', 'classify_image']

# %% ../app.ipynb 0
from fastai.vision.all import *
import PIL
import gradio as gr

def is_cat(x):
    return x[0].isupper()
# %% ../app.ipynb 3
learn = load_learner('model.pkl')

# %% ../app.ipynb 5
categories = ('American Bulldog', 'American Pit Bull Terrier', 'Basset Hound',
            'Beagle', 'Boxer', 'Chihuahua', 'English Cocker Spaniel', 'English Setter', 'German Shorthaired', 
            'Great Pyrenees', 'Havanese', 'Japanese Chin', 'Keeshond', 'Leonberger', 'Miniature Pinscher', 'Newfoundland',
            'Pomeranian', 'Pug', 'St.Bernard', 'Samyoed', 'Scottish Terrier', 'Shiba Inu', 'Staffordshire Bull Terrier', 
            'Wheaten Terrier', 'Yorkshire Terrier', 'Abyssian', 'Bengal', 'Birman', 'Bombay', 'British Shorthair',
            'Egyptian Mau', 'Main Coon', 'Persian', 'Ragdoll', 'Russian Blue', 'Siamese', 'Sphynx')

def classify_image(img):
    pred, idx, probs = learn.predict(img)
    return dict(zip(categories, map(float, probs)))

# %% ../app.ipynb 
image = gr.Image(shape=(192,192))
label = gr.Label()
examples = ['americanBulldog.jpg', 'bernard.jpg', 'ragdoll.jpg']
intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)
intf.launch(inline=False)