common boosting function

This commit is contained in:
serengil 2020-11-30 14:20:17 +03:00
parent 5963ea4d2b
commit 0b257841cb
3 changed files with 23 additions and 44 deletions

View File

@ -145,23 +145,10 @@ def verify(img1_path, img2_path = '', model_name = 'VGG-Face', distance_metric =
ensemble_features_string += "]"
#-------------------------------
#find deepface path
home = str(Path.home())
deepface_ensemble = functions.boosting_method()
if os.path.isfile(home+'/.deepface/weights/face-recognition-ensemble-model.txt') != True:
print("face-recognition-ensemble-model.txt will be downloaded...")
url = 'https://raw.githubusercontent.com/serengil/deepface/master/deepface/models/face-recognition-ensemble-model.txt'
output = home+'/.deepface/weights/face-recognition-ensemble-model.txt'
gdown.download(url, output, quiet=False)
ensemble_model_path = home+'/.deepface/weights/face-recognition-ensemble-model.txt'
#print(ensemble_model_path)
#-------------------------------
deepface_ensemble = lgb.Booster(model_file = ensemble_model_path)
#---------------------------
prediction = deepface_ensemble.predict(np.expand_dims(np.array(ensemble_features), axis=0))[0]
@ -681,17 +668,7 @@ def find(img_path, db_path, model_name ='VGG-Face', distance_metric = 'cosine',
#----------------------------------
#lightgbm model
home = str(Path.home())
if os.path.isfile(home+'/.deepface/weights/face-recognition-ensemble-model.txt') != True:
print("face-recognition-ensemble-model.txt will be downloaded...")
url = 'https://raw.githubusercontent.com/serengil/deepface/master/deepface/models/face-recognition-ensemble-model.txt'
output = home+'/.deepface/weights/face-recognition-ensemble-model.txt'
gdown.download(url, output, quiet=False)
ensemble_model_path = home+'/.deepface/weights/face-recognition-ensemble-model.txt'
deepface_ensemble = lgb.Booster(model_file = ensemble_model_path)
deepface_ensemble = functions.boosting_method()
y = deepface_ensemble.predict(x)

View File

@ -447,3 +447,21 @@ def preprocess_face(img, target_size=(224, 224), grayscale = False, enforce_dete
img_pixels /= 255 #normalize input in [0, 1]
return img_pixels
def boosting_method():
import lightgbm as lgb #lightgbm==2.3.1
home = str(Path.home())
if os.path.isfile(home+'/.deepface/weights/face-recognition-ensemble-model.txt') != True:
print("face-recognition-ensemble-model.txt will be downloaded...")
url = 'https://raw.githubusercontent.com/serengil/deepface/master/deepface/models/face-recognition-ensemble-model.txt'
output = home+'/.deepface/weights/face-recognition-ensemble-model.txt'
gdown.download(url, output, quiet=False)
ensemble_model_path = home+'/.deepface/weights/face-recognition-ensemble-model.txt'
deepface_ensemble = lgb.Booster(model_file = ensemble_model_path)
return deepface_ensemble

View File

@ -242,19 +242,3 @@ print(df)
#-----------------------------------
print("--------------------------")
print("Different face detector backends")
backends = ['opencv', 'ssd', 'dlib', 'mtcnn']
for backend in backends:
tic = time.time()
processed_img = functions.preprocess_face(img = "dataset/img11.jpg", detector_backend = backend)
toc = time.time()
print("Backend ", backend, " is done in ", toc-tic," seconds")
#-----------------------------------
print("--------------------------")