igman101's picture
Update app.py
b8e7728 verified
import gradio as gr
import tensorflow as tf
from tensorflow.keras.preprocessing import image
import numpy as np
# Modell laden mit Fehlerbehandlung
try:
model = tf.keras.models.load_model('pokemon_classifier_model.keras')
except Exception as e:
print(f"Fehler beim Laden des Modells: {e}")
# Klassenlabels
class_names = ['Bisasam', 'Schiggy', 'Glumanda']
# Vorhersagefunktion
def predict(img):
try:
img = img.resize((224, 224))
img_array = np.array(img)
img_array = np.expand_dims(img_array, axis=0)
img_array = tf.keras.applications.vgg16.preprocess_input(img_array)
predictions = model.predict(img_array)
score = tf.nn.softmax(predictions[0])
return {class_names[i]: float(score[i]) for i in range(3)}
except Exception as e:
return {"Fehler": str(e)}
# Gradio Interface erstellen
image_input = gr.Image(type='pil')
label_output = gr.Label(num_top_classes=3)
gr.Interface(fn=predict, inputs=image_input, outputs=label_output,
title="Pokémon Classifier",
description="Laden Sie ein Bild hoch, um das Pokémon zu klassifizieren.").launch()