PyInstaller:如何使用dlib.shape_predictor调用"shape_predictor_68_face_landmarks.dat"文件,同时使用"二进制文件"导入文件?



我有一个小应用程序,它使用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函数来获取地标。

相关内容

最新更新