File size: 1,004 Bytes
181ceb6
0ecbfab
 
9565e59
5702361
0ecbfab
0b184b0
835ee48
0c74d5c
e0ce9de
 
 
 
 
0b184b0
9565e59
 
b6384f9
0ce466b
9565e59
 
 
 
 
c93f364
9565e59
 
 
 
 
 
 
d5a5459
9565e59
4712590
 
 
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
__all__ = ['learn', 'classify_image', 'categories', 'classifier', 'virtual','image', 'label', 'examples', 'intf']

# Cell
from fastai.vision.all import *
import gradio as gr
import timm
import pickle
import torch

#   with open('./model.pkl', 'rb') as f:
#    model = pickle.load(f)

with open('model.pkl', 'rb') as f:
    model = pickle.load(f)

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(img)
    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
image = gr.inputs.Image(shape=(192,192))
label = gr.outputs.Label()
examples = ['virtual.jpg','real.jpg']

# Cell
intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples,share=True)
intf.launch()