tyler cross
YES! Added sharing in launch
fca8b93
raw
history blame
No virus
1.14 kB
import pathlib
import platform
import gradio as gr
from fastai.vision.all import load_learner
from PIL import Image
if platform.system() != 'Windows':
pathlib.WindowsPath = pathlib.PosixPath
EXPORT_PATH = "export.pkl"
learn_inf = load_learner(EXPORT_PATH)
def classify_image(img):
"""Classifies an image according to three categories: dung beetle, elephant, or dolphin.
Args:
img (any): Any image will be converted to expected type.
Returns:
_type_: Probabilies according to the three types.
"""
# Convert the image to a format the model expects
img = Image.fromarray(img.astype('uint8'), 'RGB')
# Make a prediction
pred_class, pred_idx, probs = learn_inf.predict(img)
# Return the result
return {learn_inf.dls.vocab[i]: float(probs[i]) for i in range(len(learn_inf.dls.vocab))}
demo = gr.Interface(
title = "A dung beetle / dolphin / elephant image classifier",
fn=classify_image,
inputs = gr.Image(
label = 'Upload an image of a dung beetle, a dolphin, or an elephant!'),
outputs="label")
if __name__ == "__main__":
demo.launch(share=True)