Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Code From https://www.youtube.com/watch?v=PulKlAZRoAY&t=3s
- #https://github.com/pypower-codes/Emotion-Detection
- from keras.models import load_model
- from time import sleep
- from keras.preprocessing.image import img_to_array
- from keras.preprocessing import image
- import cv2
- import numpy as np
- face_classifier = cv2.CascadeClassifier('./haarcascade_frontalface_default.xml')
- classifier = load_model('New_One_Pence_Two_Pence_T50.h5')
- class_labels = ['Two_Pence(0)', 'One_Pence(1)']
- cap = cv2.VideoCapture(0)
- while True:
- # Grab a single frame of video
- ret, frame = cap.read()
- labels = []
- gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
- faces = face_classifier.detectMultiScale(gray, 1.3, 5)
- for (x, y, w, h) in faces:
- cv2.rectangle(frame, (x, y), (x + w, y + h), (255, 0, 0), 2)
- roi_gray = gray[y:y + h, x:x + w]
- roi_gray = cv2.resize(roi_gray, (255, 255), interpolation=cv2.INTER_AREA)
- #roi_gray = cv2.resize(roi_gray, (255, 255), interpolation=cv2.INTER_AREA)
- if np.sum([roi_gray]) != 0:
- roi = roi_gray.astype('float') / 255.0
- roi = img_to_array(roi)
- roi = np.expand_dims(roi, axis=0)
- # make a prediction on the ROI, then lookup the class
- preds = classifier.predict(roi)[0]
- print("\nprediction = ", "Folder_1_Photos", preds,"Folder_2_Photos")
- label = class_labels[preds.argmax()]
- print("\nprediction max = ", preds.argmax())
- print("\nlabel = ", label)
- label_position = (x, y)
- cv2.putText(frame, label, label_position, cv2.FONT_HERSHEY_SIMPLEX, 2, (0, 255, 0), 3)
- else:
- cv2.putText(frame, 'No Face Found', (20, 60), cv2.FONT_HERSHEY_SIMPLEX, 2, (0, 255, 0), 3)
- print("\n\n")
- cv2.imshow('Emotion Detector', frame)
- if cv2.waitKey(1) & 0xFF == ord('q'):
- break
- cv2.imshow('Emotion Detector', frame)
- if cv2.waitKey(1) & 0xFF == ord('q'):
- break
- cap.release()
- cv2.destroyAllWindows()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement