Spaces:
Runtime error
Runtime error
| import streamlit as st | |
| import cv2 | |
| from PIL import Image,ImageEnhance | |
| import numpy as np | |
| import os | |
| face_cascade = cv2.CascadeClassifier('models/haarcascade_frontalface_default.xml') | |
| eye_cascade = cv2.CascadeClassifier('models/haarcascade_eye.xml') | |
| smile_cascade = cv2.CascadeClassifier('models/haarcascade_smile.xml') | |
| def load_image(img): | |
| im = Image.open(img) | |
| return im | |
| def detect_faces(our_image): | |
| new_img = np.array(our_image.convert('RGB')) | |
| img = cv2.cvtColor(new_img,1) | |
| gray = cv2.cvtColor(new_img, cv2.COLOR_BGR2GRAY) | |
| # Detect faces | |
| faces = face_cascade.detectMultiScale(gray, 1.1, 4) | |
| # Draw rectangle around the faces | |
| for (x, y, w, h) in faces: | |
| cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2) | |
| return img,faces | |
| def main_face(): | |
| st.title("Face Detection App") | |
| image_file = st.file_uploader("Upload Image",type=['jpg','png','jpeg']) | |
| if image_file is not None: | |
| our_image = Image.open(image_file) | |
| st.text("Original Image") | |
| # st.write(type(our_image)) | |
| st.image(our_image,width=300) | |
| if st.button("Process"): | |
| result_img,result_faces = detect_faces(our_image) | |
| st.image(result_img) | |
| st.success("Found {} faces".format(len(result_faces))) | |
| #elif feature_choice == 'Smiles': | |
| # result_img = detect_smiles(our_image) | |
| # st.image(result_img) | |
| if __name__ == '__main__': | |
| main_face() | |