From 905e1b082be1753b8678cdf99f1fb0c8fbeb47f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=9Eefik=20Serangil?= Date: Tue, 25 Feb 2020 22:08:18 +0300 Subject: [PATCH] alignment fix for emotion --- deepface/DeepFace.py | 15 +++++++++------ deepface/commons/functions.py | 9 +++++---- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/deepface/DeepFace.py b/deepface/DeepFace.py index ecd594a..ab7722d 100644 --- a/deepface/DeepFace.py +++ b/deepface/DeepFace.py @@ -9,13 +9,13 @@ import pandas as pd from tqdm import tqdm import json -#from basemodels import VGGFace, OpenFace, Facenet, FbDeepFace -#from extendedmodels import Age, Gender, Race, Emotion -#from commons import functions, distance as dst +from basemodels import VGGFace, OpenFace, Facenet, FbDeepFace +from extendedmodels import Age, Gender, Race, Emotion +from commons import functions, distance as dst -from deepface.basemodels import VGGFace, OpenFace, Facenet, FbDeepFace -from deepface.extendedmodels import Age, Gender, Race, Emotion -from deepface.commons import functions, distance as dst +#from deepface.basemodels import VGGFace, OpenFace, Facenet, FbDeepFace +#from deepface.extendedmodels import Age, Gender, Race, Emotion +#from deepface.commons import functions, distance as dst def verify(img1_path, img2_path , model_name ='VGG-Face', distance_metric = 'cosine', plot = False): @@ -129,6 +129,9 @@ def verify(img1_path, img2_path def analyze(img_path, actions= []): + if os.path.isfile(img_path) != True: + raise ValueError("Confirm that ",img_path," exists") + resp_obj = "{" #if a specific target is not passed, then find them all diff --git a/deepface/commons/functions.py b/deepface/commons/functions.py index b3c687b..f9b8cbb 100644 --- a/deepface/commons/functions.py +++ b/deepface/commons/functions.py @@ -128,10 +128,7 @@ def detectFace(image_path, target_size=(224, 224), grayscale = False): face_detector = cv2.CascadeClassifier(face_detector_path) eye_detector = cv2.CascadeClassifier(eye_detector_path) - if grayscale != True: - img = cv2.imread(image_path) - else: #gray scale - img = cv2.imread(image_path, 0) + img = cv2.imread(image_path) img_raw = img.copy() @@ -229,6 +226,10 @@ def detectFace(image_path, target_size=(224, 224), grayscale = False): #face alignment block end #--------------------------- + #face alignment block needs colorful images. that's why, converting to gray scale logic moved to here. + if grayscale == True: + detected_face = cv2.cvtColor(detected_face, cv2.COLOR_BGR2GRAY) + detected_face = cv2.resize(detected_face, target_size) img_pixels = image.img_to_array(detected_face)