我有一个小应用程序,它使用face_recognition
库。我已经用导入了它
face_models = [
('.//face_recognition_models//models//dlib_face_recognition_resnet_model_v1.dat',
'./face_recognition_models/models'),
('.//face_recognition_models//models//mmod_human_face_detector.dat',
'./face_recognition_models/models'),
('.//face_recognition_models//models//shape_predictor_5_face_landmarks.dat',
'./face_recognition_models/models'),
('.//face_recognition_models//models//shape_predictor_68_face_landmarks.dat',
'./face_recognition_models/models'),
]
a = Analysis(['logic.py'],
pathex=[],
binaries=face_models,
...
在CCD_ 2文件中。这意味着我的.exe
已经包含shape_predictor_68_face_landmarks.dat
文件。(我用--onefile
参数构建它,它工作得很好(。但当我尝试用dlib.shape_predictor
导入相同的shape_predictor_68_face_landmarks
文件时,我得到了RuntimeError: Unable to open models/shape_predictor_68_face_landmarks.dat
。
所以,我的问题是如何使用dlib.shape_predictor
导入shape_predictor_68_face_landmarks.dat
文件?(它应该已经包含在exe
..(
代码的和平:
import dlib
predictor = dlib.shape_predictor('shape_predictor_68_face_landmarks. dat')
解决方案尽可能简单:
我们可以使用face_recognition.face_landmarks
函数来获取地标。