Project-Digit-Recognizer / src /streamlit_app.py
BeyzaTopbas's picture
Update src/streamlit_app.py
da080f3 verified
import streamlit as st
import pandas as pd
import numpy as np
import joblib
from PIL import Image
import os
# ======================
# LOAD MODEL
# ======================
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
model_path = os.path.join(BASE_DIR, "digit_model.pkl")
model = joblib.load(model_path)
# ======================
# PAGE CONFIG
# ======================
st.set_page_config(
page_title="Digit Recognizer",
page_icon="🔢",
layout="centered"
)
st.title("🔢 Handwritten Digit Recognizer")
st.write("Upload a 28x28 image of a digit to get prediction")
# ======================
# IMAGE UPLOAD
# ======================
uploaded_file = st.file_uploader("Upload Digit Image", type=["png", "jpg", "jpeg"])
if uploaded_file is not None:
image = Image.open(uploaded_file).convert("L")
image = image.resize((28, 28))
st.image(image, caption="Processed Image", width=150)
img_array = np.array(image)
img_array = img_array.reshape(1, 784)
prediction = model.predict(img_array)[0]
st.subheader("Prediction")
st.success(f"Predicted Digit: {prediction}")