def test_prediction(self): base_path = '..' + os.sep + 'test_files' + os.sep + 'face_models' base_path = os.path.join('..', 'test_files', 'face_models') face_rec_data = os.path.abspath(os.path.join(base_path, 'face_rec_data')) params = {c.GLOBAL_FACE_MODELS_MIN_DIFF_KEY: -1, c.GLOBAL_FACE_REC_DATA_DIR_PATH_KEY: face_rec_data} fm = FaceModels(params) self.test_add_face() fm.load_models() im_path = os.path.join(base_path, '0000000_aligned.png') face = cv2.imread(im_path, cv2.IMREAD_GRAYSCALE) (label, conf) = fm.recognize_face(face) print 'Predicted label = %s (confidence=%.2f)' % (label, conf) self.assertEquals(label, 3812) im_path = os.path.join(base_path, '0000002_aligned.png') face = cv2.imread(im_path, cv2.IMREAD_GRAYSCALE) (tag, conf) = fm.recognize_face(face) print 'Predicted tag = %s (confidence=%.2f)' % (tag, conf) self.assertEquals(tag, 3815)
def test_recognize_model_external_models(self): base_path = os.path.join('..', 'test_files', 'face_models') face_rec_data = os.path.abspath( os.path.join(base_path, 'face_rec_data')) params = {c.GLOBAL_FACE_MODELS_MIN_DIFF_KEY: -1, c.GLOBAL_FACE_REC_DATA_DIR_PATH_KEY: face_rec_data} model_path_0 = os.path.join(face_rec_data, c.FACE_MODELS_DIR, '0') model_path_1 = os.path.join(face_rec_data, c.FACE_MODELS_DIR, '1') model_path_2 = os.path.join(face_rec_data, c.FACE_MODELS_DIR, '2') model_path_3 = os.path.join(face_rec_data, c.FACE_MODELS_DIR, '3') model_0 = {c.MODEL_ID_KEY: 0, c.MODEL_FILE_KEY: model_path_0, c.TAG_KEY: 'Mameli_Giacomo'} model_1 = {c.MODEL_ID_KEY: 1, c.MODEL_FILE_KEY: model_path_1, c.TAG_KEY: 'Fadda_Paolo'} model_2 = {c.MODEL_ID_KEY: 2, c.MODEL_FILE_KEY: model_path_2, c.TAG_KEY: 'Giannotta_Michele'} model_3 = {c.MODEL_ID_KEY: 3, c.MODEL_FILE_KEY: model_path_3, c.TAG_KEY: 'Leoni_Mario'} fm = FaceModels(params, [model_0, model_1, model_2, model_3]) fm.delete_models() self.test_create_models_from_image_list() fm.load_models() model_id = 0 im_list = [os.path.join(base_path, '0000000_aligned.png'), os.path.join(base_path, '0000005_aligned.png')] model_path_0 = fm.create_model_from_image_list(im_list, model_id) query_model = cv2.createLBPHFaceRecognizer() query_model.load(model_path_0) rec_results = fm.recognize_model(query_model) rec_result = rec_results[0] self.assertEqual(rec_result[c.ASSIGNED_TAG_KEY], 0)
def test_get_tag(self): self.test_add_face() base_path = os.path.join('..', 'test_files', 'face_models') face_rec_data = os.path.abspath(os.path.join(base_path, 'face_rec_data')) params = {c.GLOBAL_FACE_MODELS_MIN_DIFF_KEY: -1, c.GLOBAL_FACE_REC_DATA_DIR_PATH_KEY: face_rec_data} fm = FaceModels(params) fm.load_models() tag = fm.get_tag(3812) self.assertEqual(tag, 'Mameli_Giacomo')
def test_get_tags(self): base_path = os.path.join('..', 'test_files', 'face_models') face_rec_data = os.path.abspath(os.path.join(base_path, 'face_rec_data')) params = {c.GLOBAL_FACE_MODELS_MIN_DIFF_KEY: -1, c.GLOBAL_FACE_REC_DATA_DIR_PATH_KEY: face_rec_data} fm = FaceModels(params) fm.delete_models() self.test_add_face() fm.load_models() tags = fm.get_tags() self.assertEquals(len(tags), 4)