File size: 1,656 Bytes
ed2886e
e1b0813
c919903
2673557
c919903
ed2886e
c919903
 
b3b1355
c919903
 
2673557
473a909
 
 
b68ebd5
473a909
 
 
 
 
 
 
 
 
 
 
 
 
2836436
c919903
473a909
7ec83f2
 
b68ebd5
7ec83f2
 
b68ebd5
 
7ec83f2
 
 
 
 
b68ebd5
 
 
 
 
 
7ec83f2
b68ebd5
1471e11
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import streamlit as st
from PIL import Image
import numpy as np
from tensorflow.keras.models import load_model
import io

def main():
    st.set_page_config(page_title="Hurma Sınıflandırıcı")

    st.title("📷 Hurma Resmi Sınıflandırma")
    st.write("Bir hurma resmi yükleyin ve hangi tür olduğunu tahmin edelim.")

    try:
        model = load_model("src/dates_classifier_model.h5")
    except Exception as e:
        st.error("❌ Model yüklenemedi.")
        st.stop()

    class_names = [
        'Rutab',
        'Meneifi',
        'Sokari',
        'Galaxy',
        'Shaishe',
        'Medjool',
        'Ajwa',
        'Nabtat Ali',
        'Sugaey'
    ]

    file = st.file_uploader("Resim seç", type=["jpg", "jpeg", "png"])
    if file:
        try:
            image = Image.open(io.BytesIO(file.read())).convert("RGB")
            st.image(image, caption="Yüklenen Resim", use_container_width=True)

            img = image.resize((224, 224))
            img = np.array(img)
            img = img / 255.0  # Bu adımı kaldırman gerekebilir, model eğitimine göre!
            img = np.expand_dims(img, axis=0)

            prediction = model.predict(img)
            predicted_class = np.argmax(prediction)

            st.success(f"Tahmin: {class_names[predicted_class]}")

            # Debug için tahmin sonuçlarını göster
            st.subheader("Tahmin Skorları (Softmax Çıkışı):")
            for i, score in enumerate(prediction[0]):
                st.write(f"{class_names[i]}: {score:.4f}")
        except Exception as e:
            st.error(f"Hata: {str(e)}")

if __name__ == "__main__":
    main()