import streamlit as st from tensorflow.keras.models import load_model from PIL import Image import numpy as np model = load_model('src/dog_cat.h5') def process_image(img): img = img.resize((80, 80)) img = np.array(img) img = img / 255.0 img = np.expand_dims(img, axis=0) return img st.title("Dog vs Cat Classification") st.write("Upload an image to detect if it is a Dog or a Cat.") file = st.file_uploader('Select an image', type=['jpg', 'jpeg', 'png']) if file is not None: img = Image.open(file) st.image(img, caption='Uploaded Image', width=200) image = process_image(img) prediction = model.predict(image) if prediction[0][0] > 0.5: st.write("Prediction: **Dog**") else: st.write("Prediction: **Cat**")