Spaces:
No application file
No application file
import joblib | |
import streamlit as st | |
from prediction import predict_single_image | |
knn_model = joblib.load('models/knn_model.joblib') | |
svm_model = joblib.load('models/svm_model.joblib') | |
random_forest_model = joblib.load('models/random_forest_model.joblib') | |
def show_error_popup(message): | |
st.error(message, icon="🚨") | |
st.set_page_config(layout="wide") | |
st.title('CASIA PALMPRINT DATASET') | |
st.markdown('By Yash Patel') | |
st.header('Add Palmprint Image') | |
uploaded_file = st.file_uploader("Choose an image", type=["jpg", "png", "jpeg"]) | |
st.header("Available Models") | |
option = st.selectbox( | |
"Available Models", | |
("SVM", "KNN","Random Forest"), | |
) | |
predicted_label ="" | |
col1, col2= st.columns(2) | |
if uploaded_file is not None: | |
with col1: | |
image_data = uploaded_file.read() | |
st.image(image_data, caption="Uploaded Image") | |
with col2: | |
if option=="SVM": | |
predicted_label = predict_single_image(svm_model,image_data) | |
elif option=="KNN": | |
predicted_label = predict_single_image(knn_model, image_data) | |
elif option=="Random Forest": | |
predicted_label = predict_single_image(random_forest_model, image_data) | |
else: | |
p = "Other Models are still under training due to overfitting" | |
print(predicted_label) | |
st.markdown(""" | |
<style> | |
.big-font { | |
display: flex; | |
align-items:center; | |
justify-content: center; | |
font-size:50px !important; | |
color:green; | |
height: 50vh; | |
} | |
</style> | |
""", unsafe_allow_html=True) | |
st.markdown(f'<div class="big-font">{predicted_label}</div>', unsafe_allow_html=True) | |
else: | |
show_error_popup("Please Upload Image...") | |