def restart_visualisation(): # initialize the bounding box coordinates of the object we are going to track initBB = None # initialize the FPS throughput estimator fps = None # id of img img_id = 0 video_capture = cv2.VideoCapture(camera_port) # + cv2.CAP_DSHOW) # video_capture.set(cv2.CAP_PROP_FRAME_WIDTH,camera_width) # video_capture.set(cv2.CAP_PROP_FRAME_HEIGHT,camera_height) faces,faceID,name_dict=fr.labels_for_training_data('../face_reco_app/dataset') face_recognizer=fr.train_classifier(faces,faceID) param_track = False state = 0 while state == 0: # Capture frame-by-frame ret, test_img = video_capture.read() if test_img is None: video_capture = cv2.VideoCapture(camera_port) # + cv2.CAP_DSHOW) # video_capture.set(cv2.CAP_PROP_FRAME_WIDTH,camera_width) # video_capture.set(cv2.CAP_PROP_FRAME_HEIGHT,camera_height) ret, test_img = video_capture.read() if test_img is not None: faces_detected,gray_img = fr.detect_face(test_img) key = cv2.waitKey(1) & 0xFF # face detect par if param_track == False : for face in faces_detected: (x,y,w,h)=face roi_gray=gray_img[y:y+h,x:x+w] label,confidence=face_recognizer.predict(roi_gray) print("\nconfidence:",confidence) print("label :",label) if confidence < 100: fr.draw_rect(test_img,face) predicted_name=name_dict[label] fr.put_text(test_img,predicted_name,x,y) else: fr.draw_rect(test_img,face) predicted_name="John Doe" fr.put_text(test_img,predicted_name,x,y) ret, jpeg = cv2.imencode('.jpg', test_img) yield (b'--frame\r\n'b'Content-Type: image/jpeg\r\n\r\n' + jpeg.tobytes() + b'\r\n')
faces_detected, gray_img = fr.faceDetection(test_img) print("faces_detected:", faces_detected) ################################################################testing######################################################################### #for (x,y,w,h) in faces_detected: # cv2.rectangle(test_img,(x,y),(x+w,y+h),(255,0,0),thickness=3) #resized_img = cv2.resize(test_img,(1000,700)) #cv2.imshow("Face Detection",resized_img) #cv2.waitKey(0) #cv2.destroyAllWindows() ################################################################################################################################################ #Comment belows lines when running this program second time.Since it saves training.yml file in directory faces, faceID = fr.labels_for_training_data( 'C:\\Users\\Yadvi\\PycharmProjects\\face\\training') face_recognizer = fr.train_classifier(faces, faceID) #face_recognizer.write('trainingData.yml') name = { 0: "Virat Kohli", 1: "Barack Obama" } #creating dictionary containing names for each label ############################################################ testing ######################################################################### #face_recognizer = cv2.face.LBPHFaceRecognizer_create() #face_recognizer.read('C:\\Users\\Yadvi\\PycharmProjects\\face\\trainingData.yml') #test_img=cv2.imread('C:\\Users\\Yadvi\\Desktop\\bo_test.jpg') ################################################################################################################################################ for face in faces_detected:
import numpy as np import cv2 import os import face_recognition as FR print(FR) test_img=cv2.imread('G:\Data Science Project\LBPH Face Recongition\Test_image.jpg') faces_detected,gray_img=FR.faceDetection(test_img) cv2.imshow print("Faces Detected",faces_detected) #Initializing the training faces,face_ID=FR.labels_for_training_data(r'G:\Data Science Project\LBPH Face Recongition\capture\0') face_recognizer=FR.train_classifier(faces,face_ID) face_recognizer.save(r'G:\Data Science Project\LBPH Face Recongition\trainingData.yml') name={0:'Yashraj/nData Scientist'} for face in faces_detected: (x,y,w,h)=face roi_gray=gray_img[y:y+w,x:x+h] label,confidence=face_recognizer.predict(roi_gray) print(label) print(confidence) FR.draw_rect(test_img,face) predict_name=name[label] FR.put_text1(test_img,predict_name,x,y) resized_img=cv2.resize(test_img,(1000,700))