danielcd99's picture
Changed the labels to english
2d29ff9
raw
history blame
925 Bytes
import gradio as gr
import torch
from Model import LeNet
labels = ['Zero','One','Two','Three','Four','Five','Six','Seven','Eight', 'Nine']
# Locate device
if torch.cuda.is_available():
device = torch.device("cuda:0")
print("GPU")
else:
device = torch.device("cpu")
print("CPU")
# Loading model
model = LeNet().to(device)
model.load_state_dict(torch.load("model_mnist.pth", map_location=torch.device('cpu')))
def predict(input):
input = torch.from_numpy(input.reshape(1, 1, 28, 28)).to(dtype=torch.float32, device=device)
with torch.no_grad():
outputs = model(input)
prediction = torch.nn.functional.softmax(outputs[0], dim=0)
confidences = {labels[i]: float(prediction[i]) for i in range(10)}
return confidences
gr.Interface(title='Digit classifier', fn=predict,
inputs="sketchpad",
outputs=gr.Label(num_top_classes=3)).launch(share=False, debug=True)