Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import cv2
- import numpy as np
- import sys
- facePath = "haarcascade_frontalface_default.xml"
- smilePath = "haarcascade_smile.xml"
- faceCascade = cv2.CascadeClassifier(facePath)
- smileCascade = cv2.CascadeClassifier(smilePath)
- cap = cv2.VideoCapture(0)
- cap.set(3,800)
- cap.set(4,600)
- while True:
- ret, frame = cap.read() # Capture frame-by-frame
- img = frame
- gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
- faces = faceCascade.detectMultiScale(
- gray,
- scaleFactor=1.05,
- minNeighbors=8,
- minSize=(55, 55)
- )
- # ---- Draw a rectangle around the faces
- for (x, y, w, h) in faces:
- cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 0, 255), 2)
- roi_gray = gray[y:y+h, x:x+w]
- roi_color = frame[y:y+h, x:x+w]
- smile = smileCascade.detectMultiScale(
- roi_gray,
- scaleFactor= 1.7,
- minNeighbors=22,
- minSize=(25, 25)
- )
- # Set region of interest for smiles
- for (x, y, w, h) in smile:
- print "Found", len(smile), "smiles!"
- cv2.rectangle(roi_color, (x, y), (x+w, y+h), (255, 0, 0), 1)
- #print "!!!!!!!!!!!!!!!!!"
- #cv2.cv.Flip(frame, None, 1)
- cv2.imshow('Smile Detector', frame)
- if cv2.waitKey(1) & 0xFF == ord('q'):
- break
- cap.release()
- cv2.destroyAllWindows()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement