Esempio n. 1
0
    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)
Esempio n. 2
0
    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)
Esempio n. 3
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')
Esempio n. 4
0
    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)