import streamlit as st from streamlit_drawable_canvas import st_canvas import numpy as np from tensorflow.keras.models import load_model import os # Hugging Face Spaces ortamında pip komutlarını çalıştırmak os.system('pip install --upgrade tensorflow h5py') # Başlık st.title("El Yazısı Rakam Tanıma") # Solda çizim kanvası st.sidebar.header("Çizim Ayarları") stroke_width = st.sidebar.slider("Fırça Kalınlığı:", 1, 25, 9) bg_color = st.sidebar.color_picker("Arka Plan Rengi:", "#ffffff") drawing_mode = st.sidebar.selectbox("Çizim Modu:", ("freehand", "line")) # Çizim alanı st.write("Soldaki alana bir sayı çizin (0-9):") canvas_result = st_canvas( fill_color="rgba(255, 165, 0, 0.3)", # Doldurma rengi stroke_width=stroke_width, background_color=bg_color, height=200, width=200, drawing_mode=drawing_mode, key="canvas", ) # Sağda tahmin işlemi if canvas_result.image_data is not None: # Kanvastan alınan çizimi işleyelim image = canvas_result.image_data[:, :, 3] # Sadece alfa kanalını alıyoruz (çizim) image_resized = np.array(image) image_resized = image_resized / 255.0 # Normalize et image_resized = np.expand_dims(image_resized, axis=(0, -1)) # Model girişine uygun hale getir # MNIST modelini yükle model = load_model("mnist_model.h5") print("Test modeli başarıyla yüklendi!") # Sonucu göster st.write("Tahmin edilen sayı:") st.subheader(predicted_digit)