metloseema/Animal_Classification_App
0
1import streamlit as st2import numpy as np3import cv2, pickle4from PIL import Image5 6# LOAD MODEL (File ka naam sahi rakhiye ga)7with open("final_animal_model.pkl", "rb") as f:8 saved = pickle.load(f)9 10model = saved["model"]11pca = saved["pca"]12IMG_SIZE = saved["IMG_SIZE"]13 14st.title("🐾 Animal Classifier (SVM + PCA)")15 16uploaded_file = st.file_uploader("Upload an animal image", type=["jpg", "png", "jpeg"])17 18if uploaded_file:19 image = Image.open(uploaded_file)20 st.image(image, use_container_width=True)21 22 # Preprocessing (Training se match hona zaroori hai)23 img = np.array(image.convert("RGB"))24 img = cv2.resize(img, (IMG_SIZE, IMG_SIZE))25 img_flat = img.flatten().reshape(1, -1) / 255.026 27 # Prediction28 img_pca = pca.transform(img_flat)29 res = model.predict(img_pca)[0]30 31 st.success(f"Predicted Animal: {res}")