2017-06-21 3 views
0

J'essaie d'exécuter un exemple de code de réseau neuronal OpenCV3 en Python.ANN_MLP attribut manquant dans python OpenCV3

import cv2 
model = cv2.ml.ANN_MLP() 
model.load('mlp.xml') 

Mais cela me donne l'erreur:

module 'cv2.ml' has no attribute 'ANN_MLP' 

Mais, il y a une telle classe dans la version OpenCV3 note http://docs.opencv.org/3.2.0/d0/dce/classcv_1_1ml_1_1ANN__MLP.html et le code ci-dessus ne travail sur le système de quelqu'un puisqu'il est donnée à titre exemple de code . J'utilise Anaconda sur Windows 10, avec python 3.5.3 et opencv3 3.1.0.

Que se passe-t-il?

  1. Y at-il quelque chose d'évident que je manque ici?
  2. La version python d'OpenCV3 ne possède-t-elle pas l'encapsuleur?
  3. Est-ce que OpenCV3 python avait un wrapper il était une fois et a été supprimé dans les versions plus récentes?

Répondre

0

Vous obtenez cette erreur car la version python d'OpenCV (c.-à-d.) 3.1 manque de l'enveloppe de chargement. Vous pouvez confirmer cela en vérifiant ce qui suit dans le REPL python - dir (cv2.ml)

Cela a été résolu au v 3.2.0+

Afin de créer un modèle en chargeant les poids ANN_MLP dont vous avez besoin pour effectuer les opérations suivantes -

modèle

= cv2.ml.ANN_MLP_load (nom de fichier)

+0

Si vous avez une nouvelle question, s'il vous plaît demander en cliquant sur le ([poser une question] https://stackoverflow.com/questions/ demander). Incluez un lien vers cette question si cela aide à fournir un contexte. - [À revoir] (/ review/low-quality-posts/16863756) – phd

+0

Cela ne répond pas vraiment à la question. Si vous avez une autre question, vous pouvez la poser en cliquant sur [Poser une question] (https://stackoverflow.com/questions/ask). Vous pouvez également [ajouter une prime] (https://stackoverflow.com/help/privileges/set-bounties) pour attirer plus d'attention à cette question une fois que vous avez assez de [réputation] (https://stackoverflow.com/help/ quoi-réputation). - [De l'examen] (/ review/low-quality-posts/16863756) –

+0

Toutes mes excuses pour cela. J'ai mis à jour ma réponse avec la solution actuelle. –