TrabajoAP / app.py
ramirces's picture
Update app.py
5277ff4 verified
from huggingface_hub import from_pretrained_keras
import gradio as gr
import numpy as np
import tensorflow as tf
# Cargar modelo desde Hugging Face (esto es solo un ejemplo, asegúrate de tener un modelo adecuado)
repo_id = "ramirces/anomalydetectiondataset"
learner = from_pretrained_keras(repo_id)
# Definir función predict para detectar anomalías
def predict(img):
# Hacer predicciones con el modelo
pred = learner.predict(img)
# Calcular error cuadrático medio (MSE) entre entrada y salida
mse = np.mean((img - pred) ** 2)
# Establecer umbral de anomalía (ajustar según sea necesario)
anomaly_threshold = 0.1
# Determinar si la instancia es una anomalía
if mse >= anomaly_threshold:
anomaly_msg = "Posible anomalía significativa"
else:
anomaly_msg = "No anomalía"
return {"Mensaje": anomaly_msg, "MSE": mse}
# Crear interfaz Gradio
gr.Interface(fn=predict, inputs=gr.inputs.Image(shape=(28, 28)), outputs=[gr.outputs.Textbox(label="Mensaje"), gr.outputs.Textbox(label="MSE")], examples=['output_image.png', 'output_image_anomaly1.png']).launch(share=False)