DOMMETI commited on
Commit
ba77185
·
verified ·
1 Parent(s): 2859b40

Create Home.py

Browse files
Files changed (1) hide show
  1. Home.py +40 -0
Home.py ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ from streamlit_drawable_canvas import st_canvas
3
+ from keras.models import load_model
4
+ import numpy as np
5
+ import cv2
6
+
7
+ drawing_mode = st.sidebar.selectbox("Drawing tool:", ("freedraw", "line", "rect", "circle", "transform"))
8
+ stroke_width = st.sidebar.slider("Stroke width: ", 1, 25, 10)
9
+ stroke_color = st.sidebar.color_picker("Stroke color hex: ", "#FFFFFF")
10
+ bg_color = st.sidebar.color_picker("Background color hex: ", "#000000")
11
+ bg_image = st.sidebar.file_uploader("Background image:", type=["png", "jpg"])
12
+ realtime_update = st.sidebar.checkbox("Update in realtime", True)
13
+
14
+ @st.cache_resource
15
+ def load_mnist_model():
16
+ return load_model("digit_reco.keras")
17
+
18
+ model = load_mnist_model()
19
+
20
+ canvas_result = st_canvas(
21
+ fill_color="rgba(255, 165, 0, 0.3)",
22
+ stroke_width=stroke_width,
23
+ stroke_color=stroke_color,
24
+ background_color=bg_color,
25
+ update_streamlit=realtime_update,
26
+ height=280,
27
+ width=280,
28
+ drawing_mode=drawing_mode,
29
+ key="canvas",
30
+ )
31
+
32
+
33
+ if canvas_result.image_data is not None:
34
+ st.image(canvas_result.image_data, caption="Original Drawing")
35
+ img = cv2.cvtColor(canvas_result.image_data.astype("uint8"), cv2.COLOR_RGBA2GRAY)
36
+ img_resized = cv2.resize(img, (28, 28))
37
+ img_normalized = img_resized / 255.0
38
+ img_resh=img_normalized.reshape((1,28,28))
39
+ prediction = model.predict(img_resh)
40
+ st.write("Prediction:", np.argmax(prediction))