Phytgoras commited on
Commit
abb8a4b
·
verified ·
1 Parent(s): 45f38ba

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -0
app.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from keras.models import load_model
3
+ import numpy as np
4
+ import cv2
5
+
6
+ # Modeli yükle
7
+ model = load_model("keras_model.h5", compile=False)
8
+
9
+ # Etiketleri yükle
10
+ class_names = open("labels.txt", "r").readlines()
11
+
12
+ # Sınıflandırma fonksiyonu
13
+ def classify_image(image):
14
+ img_resized = cv2.resize(image, (224, 224)) # Modelin beklediği boyut
15
+ img_array = np.expand_dims(img_resized, axis=0) # Batch boyutunu ekle
16
+ img_array = img_array / 255.0 # Normalizasyon
17
+
18
+ predictions = model.predict(img_array)
19
+ class_index = np.argmax(predictions)
20
+ confidence = predictions[0][class_index]
21
+
22
+ return {class_names[i].strip(): float(predictions[0][i]) for i in range(len(class_names))}, f"Sınıf: {class_names[class_index].strip()} (Güven: {confidence:.2f})"
23
+
24
+ # Gradio arayüzü
25
+ interface = gr.Interface(
26
+ fn=classify_image,
27
+ inputs=gr.Image(type="numpy", label="Bir görüntü yükleyin"),
28
+ outputs=[
29
+ gr.Label(num_top_classes=3, label="Tahminler"),
30
+ gr.Text(label="Sonuç")
31
+ ],
32
+ title="Burak TURGUT Görüntü Sınıflandırma Model Programı",
33
+ description="Bir görüntü yükleyin ve modelin sınıflandırmasını görün."
34
+ )
35
+
36
+ # Arayüzü başlat
37
+ interface.launch()