-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.py
34 lines (22 loc) · 825 Bytes
/
app.py
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
__all__ = ['learn', 'prepara_imagen', 'clasificador', 'categorias', 'imagen', 'etiqueta', 'ejemplos', 'intf']
from fastai.vision.all import *
import gradio as gr
learn = load_learner('modelo_resnet.pkl')
categorias = learn.dls.vocab
def clasificador(img):
#Invertir imagen
tns = np.invert(img)
dgto = Image.fromarray(tns)
#Convertir a escala de grises
dgto = dgto.convert('L')
#Ajustar tamaño a 28*28
dgto = dgto.resize((28,28))
tns = tensor(dgto)
# Predición
pred,idx,probs = learn.predict(tns)
return dict(zip(categorias, map(float,probs)))
imagen = gr.Image(type="pil")
etiqueta = gr.outputs.Label()
ejemplos = ['dos.png','cinco.png','seis.png']
intf = gr.Interface(fn=clasificador, inputs=imagen, outputs=etiqueta, examples=ejemplos)
intf.launch()