Spaces:
Sleeping
Sleeping
import gradio as gr | |
from sklearn.neighbors import KNeighborsClassifier | |
from skimage.io import imread | |
from skimage.transform import resize | |
import numpy as np | |
# Cargar el modelo KNN pre-entrenado (debes entrenar previamente el modelo y guardarlo) | |
classifier = KNeighborsClassifier(n_neighbors=5) | |
# Cargar el conjunto de datos o modelo pre-entrenado | |
# Por ejemplo, puedes cargar el mismo conjunto de datos de dígitos que usaste en tu código original o uno similar. | |
# Define una función para realizar la predicción | |
def knn_predict(image): | |
# Lee la imagen cargada por el usuario | |
user_image = imread(image) | |
# Asegúrate de que la imagen tenga el mismo tamaño que las imágenes de entrenamiento | |
user_image = resize(user_image, (8, 8), anti_aliasing=True) | |
# Aplique el modelo KNN para realizar la predicción | |
prediction = classifier.predict(user_image.reshape(1, -1)) | |
return str(prediction[0]) | |
# Crea una interfaz de Gradio | |
iface = gr.Interface( | |
fn=knn_predict, | |
inputs="image", | |
outputs="text", | |
title="Clasificador KNN de Dígitos", | |
description="Sube una imagen de un dígito (8x8 píxeles) y predice el número." | |
) | |
# Ejecute la interfaz de Gradio | |
iface.launch(debug = True) |