#python #face-recognition #dlib
#python #распознавание лиц #dlib
Вопрос:
Я на самом деле работаю над проектом распознавания лиц, но получаю ошибку, такую как:
from _dlib_pybind11 import *
ModuleNotFoundError: No module named '_dlib_pybind11'
Пожалуйста, помогите, я буду признателен за любую помощь.
- ОС: Windows 10
- Python 3.8
- dlib 19.18.0
- распознавание лиц 1.3.0
- NumPy 1.18.4
Мой код:
import cv2
import numpy as np
import face_recognition
imElon = face_recognition.load_image_file("ImageBasic/ElonMusk.jpg")
imElon = cv2.cvtColor(imElon.cv2.COLOR_BGR2RGB)
imTest = face_recognition.load_image_file("ImageBasic/ElonTest.jpg")
imTest = cv2.cvtColor(imTest.cv2.COLOR_BGR2RGB)
faceLoc = face_recognition.face_locations(imElon)[0]
encodeElon = face_recognition.face_encodings(imElon)[0]
print(faceLoc)
cv2.imshow('Elon Musk', imElon)
cv2.imshow('Elon Test', imTest)
cv2.waitkey(0)
Ответ №1:
пакет face_recognition основан на dlib, и это проблемный пакет. Почему вы не используете deepface?
#!pip install deepface
from deepface import DeepFace
resp = DeepFace.verify(img1_path = "ImageBasic/ElonMusk.jpg", img2_path = "ImageBasic/ElonTest.jpg")
print(resp["verified"])
По умолчанию он создает модель VGG-Face, но вы можете управлять серверной частью модели распознавания лиц. Следующие модели распознавания лиц заключены в рамки. В настоящее время VGG-Face, Google FaceNet и ArcFace превосходят производительность.
models = ['VGG-Face', 'Facenet', 'OpenFace', 'DeepFace', 'DeepID', 'ArcFace', 'Dlib']
DeepFace.verify("img1.jpg", "img2.jpg", model_name = models[1])
Обратите внимание, что он также переносит Dlib. Но вы должны установить dlib в качестве предварительного условия.
Комментарии:
1. привет, дорогая, я исправил свою проблему. Да, я попробую deep face, если он эффективен и качественно распознается. Спасибо за ответ))
2. Привет, дорогой, Да, я сделал так, как ты написал, это сработало. Большое вам спасибо. Ценю это!