lenet5 / app.py
HudsonArauj
Fix: bug Image
6ad7222
from utils import*
from PIL import Image
# dicionario das classes
classes = {0: 'Avião', 1: 'Carro', 2: 'Pássaro', 3: 'Gato', 4: 'Cervo', 5: 'Cachorro', 6: 'Sapo', 7: 'Cavalo', 8: 'Navio', 9: 'Caminhão'}
import gradio as gr
model = Lenet5Modular()
model.load_state_dict(torch.load(arquivo))
# Função de classificação de imagem
def classifier_image(image):
preprocess = create_transformer()
# Converter a imagem para PIL se não estiver neste formato
if isinstance(image, np.ndarray):
image = Image.fromarray(image.astype('uint8'), 'RGB')
# Redimensionar a imagem para 32x32
image = image.resize((32, 32))
image_tensor = preprocess(image)
image_tensor = image_tensor.unsqueeze(0)
# Realizar a predição
with torch.no_grad():
output = model(image_tensor)
_, predicted_class = torch.max(output, 1)
return f"{str(classes[predicted_class.item()])}"
# Interface Gradio
gr.Interface(fn=classifier_image, inputs="image", outputs="text").launch()