Spaces:
Runtime error
Runtime error
import gradio as gr | |
import numpy as np | |
import joblib | |
from PIL import Image | |
from skimage.transform import resize | |
# Charger le modèle à partir du fichier enregistré | |
filename = 'modele_mlp.joblib' | |
loaded_model = joblib.load(filename) | |
# Fonction de traitement d'image | |
def preprocess_image(image): | |
# Convertir l'image en niveaux de gris | |
pil_image = Image.fromarray(image) | |
gray_image = pil_image.convert("L") | |
# Redimensionner l'image à 8x8 pixels | |
resized_image = gray_image.resize((8, 8), Image.LANCZOS) | |
# Convertir l'image en tableau NumPy | |
img_array = np.array(resized_image) | |
# Aplatir l'image en un vecteur 1D | |
flat_img = img_array.flatten() | |
# Normaliser les valeurs de pixel entre 0 et 16 (correspondant aux valeurs dans le jeu de données) | |
normalized_img = (flat_img / 255) * 16 | |
return normalized_img | |
def predict_digit(image): | |
# Prétraiter l'image | |
preprocessed_image = preprocess_image(image) | |
# Faire une prédiction avec le modèle chargé | |
prediction = loaded_model.predict([preprocessed_image])[0] | |
return str(prediction) | |
iface = gr.Interface(fn=predict_digit, inputs="image", outputs="text") | |
iface.launch() | |