Darkflow: Aucun module nommé cy_yolo_findboxes

Créé le 16 avr. 2017  ·  38Commentaires  ·  Source: thtrieu/darkflow

quand je lance la démo montre ceci

darkflow/net/yolo/test.py", ligne 6, dans
depuis cython_utils.cy_yolo_findboxes importer yolo_box_constructor

Commentaire le plus utile

Avez-vous construit le module cython avec

cd ./cython_utils
python3 setup.py build_ext --inplace
cd ..

Tous les 38 commentaires

Avez-vous construit le module cython avec

cd ./cython_utils
python3 setup.py build_ext --inplace
cd ..

Est-ce uniquement pour python 3, j'ai vu dans l'un des problèmes que quelqu'un a dit à propos de son exécution sur python 2.7.
https://github.com/thtrieu/darkflow/issues/18
puis-je exécuter ce darkflow dans python2.7.Great port cependant, fonctionne bien avec python3 s'il existe une configuration système optimale pour cela.
Merci.

Le même problème s'est produit pour moi. Quelqu'un l'a-t-il résolu? Je l'ai essayé sur deux PC et j'ai construit le module cython, mais cela s'est reproduit.

@lesthad666
Je pense qu'il est temps de fermer ce problème maintenant si vous l'avez résolu. Voilà ma situation et solution:
Tout comme @abagshaw l' a dit, a construit le module cython avec
`
cd ./cython_utils

python3 setup.py build_ext --inplace

cd ..
`
Faites ensuite attention au fichier "flow", ouvrez ce fichier et modifiez "#! /usr/bin/env python" en "#! /usr/bin/env python3" , cela fonctionnera bien.

L'exécution avec python3 m'a aidé ici. Cela nécessite alors que tensorflow et opencv-python soient également installés pour python3.

Une petite correction opencv-python finira par être levée en essayant d'obtenir l'entrée de la caméra en raison de ses imitations. Essayer de trouver une solution de contournement.

Le même problème s'est produit pour moi.
Dans mon cas, j'ai ajouté import pyximport; pyximport.install() à darkflow/net/yolo/test.py ligne 7.
Ma résolution est d'importer directement cy_yolo_findboxes.pyx.

Cela m'arrive quand je fais

git clone https://github.com/thtrieu/darkflow.git
cd darkflow
pip install .

et alors

./flow3 --model bin/yolo.cfg --load bin/yolo.weights --demo samples/video_1.avi --gpu 0.5 --saveVideo
Traceback (most recent call last):
  File "./yolo", line 3, in <module>
    from darkflow.net.build import TFNet
  File "/darkflow/darkflow/darkflow/net/build.py", line 7, in <module>
    from .framework import create_framework
  File "/darkflow/darkflow/darkflow/net/framework.py", line 1, in <module>
    from . import yolo
  File "/darkflow/darkflow/darkflow/net/yolo/__init__.py", line 2, in <module>
    from . import test
  File "/darkflow/darkflow/darkflow/net/yolo/test.py", line 6, in <module>
    from darkflow.cython_utils.cy_yolo_findboxes import yolo_box_constructor
ImportError: No module named 'darkflow.cython_utils.cy_yolo_findboxes'

flow3 a un shebang modifié #! /usr/bin/env python3

tout en faisant avec Cython pour moi ne fonctionne pas du tout se terminant par

cd darkflow/
python3 setup.py build_ext --inplace
Traceback (most recent call last):
  File "setup.py", line 3, in <module>
    from Cython.Build import cythonize
ImportError: No module named 'Cython'

vous pouvez installer cython en tapant dans votre terminal :

sudo apt-get install cython3

J'ai eu ce problème en utilisant la méthode d'installation pip / pip3. l'utilisation de Setup.py a fonctionné.

Apparemment tous les problèmes sont résolus.

J'ai rencontré le même problème en cours d'exécution

git clone https://github.com/thtrieu/darkflow.git
cd darkflow
python3.5 setup.py build_ext --inplace

Ceci est la sortie de ./flow --h

$ ./flow
Traceback (most recent call last):
  File "./flow", line 4, in <module>
    from darkflow.cli import cliHandler
  File "/mnt/hdd3t/Data/hci2/borinyun/darkflow/darkflow/cli.py", line 3, in <module>
    from darkflow.net.build import TFNet
  File "/mnt/hdd3t/Data/hci2/borinyun/darkflow/darkflow/net/build.py", line 7, in <module>
    from .framework import create_framework
  File "/mnt/hdd3t/Data/hci2/borinyun/darkflow/darkflow/net/framework.py", line 1, in <module>
    from . import yolo
  File "/mnt/hdd3t/Data/hci2/borinyun/darkflow/darkflow/net/yolo/__init__.py", line 2, in <module>
    from . import predict
  File "/mnt/hdd3t/Data/hci2/borinyun/darkflow/darkflow/net/yolo/predict.py", line 6, in <module>
    from darkflow.cython_utils.cy_yolo_findboxes import yolo_box_constructor
ImportError: No module named cy_yolo_findboxes

et ceci est la sortie de "flow"

$ flow --h
No command 'flow' found, did you mean:
 Command 'flog' from package 'flog' (universe)
 Command 'cflow' from package 'cflow' (universe)
 Command 'flow6' from package 'ipv6toolkit' (universe)
flow: command not found

@ benn94 Le premier problème ImportError: No module named cy_yolo_findboxes est en effet un bug je crois. Il existe déjà un PR ouvert pour résoudre le problème (https://github.com/thtrieu/darkflow/pull/273) - Je pense que le problème est causé par tous les chemins d'importation directement issus de darkflow au lieu d'utiliser chemins relatifs. Si darkflow est installé globalement à l'aide de l'une des deux autres options qui utilisent pip (décrites ici ), cela fonctionne très bien, mais s'il n'est pas installé globalement, ces importations échouent. Le PR rend ces importations relatives afin qu'elles fonctionnent, que darkflow soit installé globalement ou non. Donc, pour résoudre temporairement votre problème, essayez d'installer en utilisant l'une des options qui utilisent pip jusqu'à ce que ce PR soit fusionné.

En ce qui concerne votre deuxième problème, flow ne fonctionnera que si vous installez darkflow globalement. Ce n'est pas un bogue - c'est normal, car la construction des extensions Cython n'installe pas darkflow comme pip install . fait donc vous ne pourrez pas accéder globalement à flow , vous' Je dois utiliser ./flow dans le dossier darkflow .

@abagshaw merci. J'ai trouvé que c'est le problème de la version python. Je pourrais exécuter la commande flow en spécifiant simplement la version de mon python et au lieu d'exécuter ./flow , cela fonctionne simplement en exécutant $# flow

python3.5 flow --h

J'ai un problème similaire à @ benn94

Traceback (most recent call last):
  File "./flow", line 4, in <module>
    from darkflow.cli import cliHandler
  File "/home/kadia/Documents/darkflow-master/darkflow/cli.py", line 3, in <module>
    from .net.build import TFNet
  File "/home/kadia/Documents/darkflow-master/darkflow/net/build.py", line 7, in <module>
    from .framework import create_framework
  File "/home/kadia/Documents/darkflow-master/darkflow/net/framework.py", line 1, in <module>
    from . import yolo
  File "/home/kadia/Documents/darkflow-master/darkflow/net/yolo/__init__.py", line 2, in <module>
    from . import predict
  File "/home/kadia/Documents/darkflow-master/darkflow/net/yolo/predict.py", line 7, in <module>
    from ...cython_utils.cy_yolo_findboxes import yolo_box_constructor
ImportError: No module named cy_yolo_findboxes

J'ai rencontré le même problème ImportError: No module named 'darkflow.cython_utils.cy_yolo_findboxes' lorsque j'essaie d'exécuter l'exemple de code dans "Utilisation de darkflow à partir d'une autre application python".
J'utilise python 3 dans un environnement Anaconda et j'ai installé darkflow globalement avec pip install .

J'aimerais essayer la solution proposée : python3 setup.py build_ext --inplace mais je ne vois aucun setup.py dans cython_utils . Est-ce que je manque quelque chose?

Même problème que @stesalati . Il n'y a pas setup.py dans cython_utils .

En exécutant, depuis windows 10, "python flow --model cfg/yolo.cfg --load bin/yolo.weights --demo E:\image\photos\abrilsss.wmv --gpu 1.0", j'obtiens la même erreur :
"Erreur d'importation : aucun module nommé ' darkflow.cython_utils.cy_yolo_findboxes' "
Je ne sais pas comment continuer car setup.py n'est pas dans cython_utils.

@clitenmestra exécute python setup.py build_ext dans le répertoire darkflow. Il construit le fichier cython_utils.

(tensorflow) F:\tut-tf\darkflow>python setup.py build_ext
running build_ext
error: [WinError 2] El sistema no puede encontrar el archivo especificado``

il n'y a pas de fichier nommé build_ext . Dois-je télécharger ce fichier ? où?

@clitenmestra Avez-vous installé Cython ?

Oui, j'ai cython et le prochain code exécuté.

import cython
cython.__version__

'0.25.2'

@clitenmestra

(ML) E:\AkashJ\projects\darkflow - Copy>python setup.py build_ext --inplace
running build_ext
copying build\lib.win-amd64-3.5\darkflow\cython_utils\nms.cp35-win_amd64.pyd -> darkflow\cython_utils
copying build\lib.win-amd64-3.5\darkflow\cython_utils\cy_yolo2_findboxes.cp35-win_amd64.pyd -> darkflow\cython_utils
copying build\lib.win-amd64-3.5\darkflow\cython_utils\cy_yolo_findboxes.cp35-win_amd64.pyd -> darkflow\cython_utils

Cela fonctionne, qu'avez-vous utilisé pip ou conda pour installer cython, numpy, mkl ?
J'ai utilisé --inplace parce que j'ai déjà cython_utils dans mon système, --inplace ne construira que pour ce répertoire particulier, si vous construisez pour l'ensemble du système, vous n'avez pas à utiliser --inplace .

Traduire l'erreur, il dit The system can not find the specified file. , donc cela ne signifie pas there is not a file named build_ext comme vous l'avez mentionné.

La même réponse en utilisant --inplace

(tensorflow) F: \ tut-tf \ darkflow> python setup.py build_ext --inplace
running build_ext
error: [WinError 2] The system can not find the specified file

J'ai utilisé anaconda pour l'installation de la plupart des packages.

Après avoir lu dans votre réponse qu'une copie de trois fichiers a été faite, je les ai localisés dans ANACONDA site_packages darkflow sur mon ordinateur et je les ai copiés dans cython_utils dans mon projet. À partir de là, avec une correction de l'emplacement du fichier, la commande fonctionne correctement avec le GPU.
Je vais aller plus loin pour découvrir les causes de ma mauvaise installation.
Merci de votre intérêt.

J'ai aussi eu le problème. Et j'ai trouvé que mon tensorflow fonctionnait dans virtualenv de python2.7.

Changer le virtualenv en python3 pourrait résoudre ce problème.
Installer tensorflow avec virtualenv

Je reçois toujours cette erreur lorsque j'utilise Pycharm pour exécuter du code
Voici ce que j'ai obtenu, Toute aide sera appréciée. Nœud : J'ai fait python3 setup.py build_ext --inplace. Tous les fichiers comme cy_yolo_findboxes.c et cy_yolo2_findboxes sont tous dans le dossier cython_utils. Mais cela ne peut pas fonctionner.
screen shot 2018-01-31 at 11 46 15 pm

J'ai la même erreur que liuhantao9. Le fichier est là, et j'ai même ajouté sys.path.append au bon endroit. Mais il jette la même erreur, des idées?

L'erreur qui m'est survenue était due à la version de python, je rétrograde le python de 3.6 à 3.5 et résous tout le problème.

flux python3 --h
Traceback (dernier appel le plus récent) :
Fichier "flow", ligne 4, dans
à partir de darkflow.cli importer cliHandler
Fichier "/home/kirubel/YOLO_Object_Detection/darkflow/cli.py", ligne 3, dans
depuis .net.build importer TFNet
Fichier "/home/kirubel/YOLO_Object_Detection/darkflow/net/build.py", ligne 3, dans
à partir de . aide à l'importation
Fichier "/home/kirubel/YOLO_Object_Detection/darkflow/net/help.py", ligne 9, dans
importer cv2
ImportError : aucun module nommé 'cv2'

Donc cela ne fonctionne pas pour python2.7 ?

Et le lien vers les directives d'installation de darkflow dans le monde est mort. Comment installer darkflow globalement ?

J'ai dû exécuter les commandes suivantes pour résoudre ce problème :

sudo pip3 install opencv-python
sudo pip3 install tensorflow

cd darkflow master
setup.py build_ext --inplace

Terminé!

Pour moi, cela a été résolu en exécutant du code en dehors du répertoire darkflow. python3 importait des bibliothèques à partir du répertoire local qui contenait des modules pyx (cython) pré-construits.

depuis le répertoire darkflow :

python3 -c "de darkflow.net.build importer TFNet"
ModuleNotFoundError : Aucun module nommé 'darkflow.cython_utils.cy_yolo_findboxes'

cd ../
python3 -c "de darkflow.net.build importer TFNet"
[Succès]

Apparemment tous les problèmes sont résolus.

Tous les problèmes ne sont certainement pas résolus.

Pour moi la solution est simple. Regardez (modifiez) le fichier "flux". La première ligne essaie d'invoquer "python". Dans ma configuration par défaut, "python" signifie "python2". Je l'ai donc changé en "python3" au lieu de simplement "python" et cela fonctionne comme un charme.

J'utilisais jupyter notebook mais il n'utilisait pas mes bibliothèques anaconda, je suis donc passé à l'invite de commande et j'ai exécuté ce qui suit :

  1. pip uninstall darkflow alors

  2. pip install -e .

Et l'erreur a disparu.

Cette page vous a été utile?
0 / 5 - 0 notes