Spaces:
Build error
Build error
File size: 1,612 Bytes
9565e59 0c74d5c 9565e59 |
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 39 40 41 42 43 44 45 46 47 |
import pathlib
temp = pathlib.PosixPath
pathlib.PosixPath = pathlib.WindowsPath
#|export
#fastai has to be available, i.e. fastai folder
from fastai.vision.all import *
import gradio as gr
import pickle
with open('./model.pkl', 'rb') as f:
model = pickle.load(f)
if [ ! -f /etc/apt/sources.list ]; then
echo "Creating /etc/apt/sources.list"
echo "deb http://deb.debian.org/debian buster main" > /etc/apt/sources.list
echo "deb-src http://deb.debian.org/debian buster main" >> /etc/apt/sources.list
echo "deb http://security.debian.org/debian-security buster/updates main" >> /etc/apt/sources.list
echo "deb-src http://security.debian.org/debian-security buster/updates main" >> /etc/apt/sources.list
echo "deb http://deb.debian.org/debian buster-updates main" >> /etc/apt/sources.list
echo "deb-src http://deb.debian.org/debian buster-updates main" >> /etc/apt/sources.list
fi
def is_real(x): return x[0].isupper()
#|export
learn = load_learner('model.pkl')
#|export
categories =('Virtual Staging','Real')
def classify_image(img):
pred,idx,probs = learn.predict(im)
return dict(zip(categories,map(float,probs)))
#*** We have to cast to float above because KAGGLE does not return number on the answer it returns tensors, and Gradio does not deal with numpy so we have to cast to float
#|export
#import gradio as gr
import gradio as gr
image = gr.inputs.Image(shape=(192,192))
label = gr.outputs.Label()
examples = ['virtual.jpg','real.jpg','dunno.jpg']
intf = gr.Interface(fn=classify_image,inputs=image,outputs=label,examples=examples)
intf.launch(inline=False)
|