У меня есть python
face recognition
, где я использую модель open-face
и SVM
для обнаружения и распознавания лиц. Кажется, это работает для изображений хорошего качества, но у меня также есть изображения очень низкого качества, которые очень distorted
и pixelated
. Ниже приведены общие шаги по распознаванию изображения:
- Обнаружение лица с использованием модели распознавания лиц: Причина использования модели с открытым лицом вместо каскада HAAR заключается в том, что каскад не может обнаружить боковое лицо
- Извлечение врезания лица: Извлечение врезания лица 128 d с использованием модели открытого лица
Обучение: использование SVM
Я тренирую встраивание лица с соответствующей меткой, как показано ниже:
params = {"C": [0.001, 0.01, 0.1, 1.0, 10.0, 100.0, 1000.0], "gamma": [1e-1, 1e-2, 1e-3, 1e-4, 1e-5]}
model = GridSearchCV(SVC(kernel="rbf", gamma="auto", probability=True), params, cv=3, n_jobs=-1)
model.fit(data["embeddings"], labels)
Тестирование: извлечение встраивания лица тестового изображения и прогнозирование результатов, например ниже:
model.predict_proba()
Вышеуказанные действия работают нормально, когда изображения хорошего качества. Но когда изображения похожи на приведенные ниже:
Теперь у меня есть unknown dataset
, который также содержит некоторые искаженные изображения случайных людей, и у меня есть наборы данных изображений выше известного человека. Если я сдаю тестовое изображение вышеупомянутого человека, я получаю хороший результат, но если я прохожу изображение неизвестного человека, оно становится идентифицированным как вышеупомянутый человек с довольно хорошим показателем доверия. Из-за чего я думаю, что это происходит, потому что качество изображения не очень хорошее.
Может кто-нибудь указать мне хорошие ресурсы или статьи, где этот тип изображений лиц используется для распознавания. Есть ли способ улучшить качество изображения, чтобы получить лучшие результаты. Пожалуйста помоги. Спасибо