minimal / app.py
thedevvikas's picture
fix: Path ref
1ce001c
# AUTOGENERATED! DO NOT EDIT! File to edit: ../course22/vikas/dog-or-cat.ipynb.
# %% auto 0
__all__ = ['learner', 'categories', 'example_imgs_path', 'img', 'label', 'examples', 'intf', 'is_cat', 'classify_image']
# %% ../course22/vikas/dog-or-cat.ipynb 2
# Imports
from fastai.vision.all import PILImage
from fastai.vision.all import load_learner
from pathlib import Path
import gradio as gr
# %% ../course22/vikas/dog-or-cat.ipynb 4
# Function to check if it is a cat
def is_cat(x): return x[0].isupper()
# %% ../course22/vikas/dog-or-cat.ipynb 6
# Load the trained model
learner = load_learner(fname="./dog_or_cat.pkl")
# %% ../course22/vikas/dog-or-cat.ipynb 8
categories = ("Cat", "Dog")
def classify_image(img):
pred, idx, probs = learner.predict(img)
print(pred, idx)
return dict(zip(categories, map(float, probs)))
# %% ../course22/vikas/dog-or-cat.ipynb 10
example_imgs_path = Path("./sample")
img = gr.Image()
label = gr.Label()
examples = [
example_imgs_path/f"dog.jpg",
example_imgs_path/f"cat.jpg",
example_imgs_path/f"dunno.jpg"
]
intf = gr.Interface(fn=classify_image, inputs=img, outputs=label, examples=examples)
intf.launch(inline=True)