使用shape_predictor
使用Dlib
进行面部地标检测时遇到问题。
我根据these issue和this one编译了dlib并验证了升级lib路径,但仍然有相同的错误:
Traceback (most recent call last):
File "face_landmark_detection.py", line 66, in <module>
predictor = dlib.shape_predictor(predictor_path)
Boost.Python.ArgumentError: Python argument types in
shape_predictor.__init__(shape_predictor, str)
did not match C++ signature:
__init__(boost::python::api::object, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)
__init__(_object*)
有什么想法吗?
答案 0 :(得分:1)
在两个完全相同的Ubuntu 16版本中,我遇到了同样的问题。 诀窍是用g ++ - 5.4编译而不是g ++ - 4.9。
{{1}}
你可能也会改变我猜的CMake-Flags。
答案 1 :(得分:0)
我能想到的是你的predictor_path无法转换为std :: string。可以用Unicode吗?你使用的是Python 3。*?