2017-08-30 2 views
0

Je suis en train d'utiliser le Dlib (v19.6) API Python pour créer un détecteur de visage CNN en utilisant le code:Dlib cnn_face_detection_model_v1 erreur Python

cnn_face_detector = dlib.cnn_face_detection_model_v1('mmod_human_face_detector.dat') 

Cependant, je reçois un ArgumentError comme suit:

--------------------------------------------------------------------------- 
ArgumentError        Traceback (most recent call last) 
<ipython-input-16-c2ca0a6e8dff> in <module>() 
----> 1 cnn_face_detector = dlib.cnn_face_detection_model_v1('mmod_human_face_detector.dat') 

ArgumentError: Python argument types in 
    cnn_face_detection_model_v1.__init__(cnn_face_detection_model_v1, str) 
did not match C++ signature: 
    __init__(_object*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) 

Que pourrais-je faire de mal? Est-ce que je ne peux pas passer le nom de fichier du fichier modèle simplement comme une chaîne?

Répondre

0

Cela fonctionne pour moi, en utilisant cette nouvelle version et votre utilisation est correcte!

Cela signifie probablement que vous soit:

  • fait une erreur lors de l'installation
    • installé par python setup.py install? Ce serait correct!
  • ou: votre python-interprète utilise une autre version de Dlib à votre insu
+0

J'ai utilisé 'python setup.py install --yes USE_AVX_INSTRUCTIONS' pour l'installation. J'ai vérifié que l'interpréteur python utilise la même version de dlib. Je vais essayer à nouveau en faisant une installation propre. – chronosynclastic

0

J'ai eu un problème simmilar après python setup.py install en raison de python en utilisant une ancienne version de Dlib de /opt/conda/lib/python3.6/site-packages/dlib.so. Faire un simple mv /opt/conda/lib/python3.6/site-packages/dlib.so /opt/conda/lib/python3.6/site-packages/dlib_old.so l'a résolu pour moi.