J'ai essayé d'exécuter ./flow --test test/ --model cfg/yolo.cfg --load yolo.weights --gpu 1.0
J'obtiens le chargement de yolo.weights .... et puis une erreur d'assertion : Over-read yolo.weights.
Cependant, lorsque j'exécute la même commande avec tiny-yolo.cfg et tiny-yolo.weights, cela fonctionne. J'ai téléchargé le fichier de poids à partir de https://pjreddie.com/darknet/yolo/
Je suppose que vous aviez utilisé de mauvais poids, cela ne correspondait pas à cfg. J'ai essayé avec yolo.cfg et yolo.weights, cela a bien fonctionné.
Cependant, lorsque j'entraîne yolo-voc.cfg avec une classe personnalisée, j'obtiens le même message d'erreur avec mes poids entraînés. J'apprécierais si quelqu'un peut expliquer ce que signifie cette erreur.
L'analyseur .weights
suit .cfg
couche par couche, en lisant le bloc d'octets correspondant à partir de .weights
, mais il y a encore une couche à lire alors que l'analyseur a déjà atteint la fin de .weights
; c'est alors que vous avez l'erreur d'assertion.
Veuillez donner la commande qui conduit à cette erreur. Si vous souhaitez personnaliser votre classe, il y a quelques endroits pour apporter des modifications :
conv
dans .cfg
class
nombre dans la couche region
labels.txt
Puis cours
./flow --model cfg/model.cfg --load bin/model.weights --train
Essayez de former votre réseau à partir de zéro, les derniers poids https://pjreddie.com/darknet/yolo/ ne semblent pas s'aligner avec le fichier cfg.
J'ai rencontré le même problème avec yolo.weights et yolo-voc.weights, mais les poids de mon réseau formé sur mesure fonctionnent très bien
Pourriez-vous fournir des instructions pour vous entraîner à l'aide du fichier yolo.cfg. Merci
Le mer. 29 mars 2017 à 12:20, Dhruv-Mohan [email protected]
a écrit:
Essayez de former votre réseau à partir de zéro, les derniers poids
https://pjreddie.com/darknet/yolo/ ne s'aligne pas avec le fichier cfg.
J'ai rencontré le même problème avec yolo.weights et yolo-voc.weights,
Cependant, les poids de mon réseau formé sur mesure fonctionnent très bien-
Vous recevez ceci parce que vous avez créé le fil.
Répondez directement à cet e-mail, consultez-le sur GitHub
https://github.com/thtrieu/darkflow/issues/107#issuecomment-289999490 ,
ou couper le fil
https://github.com/notifications/unsubscribe-auth/AZgJMHWUgCDnwlS_s1HY5RcBNrVSAWusks5rqf9CgaJpZM4Mrj84
.
même problème. utilisez l'instruction readme avec les poids yolo.cfg et v2 de http://pjreddie.com/media/files/yolo-voc.weights
@kinhunt yolo.cfg
et yolo-voc.weights
ne correspondent pas. Même le nouveau yolo.weights
ne correspond pas à yolo.cfg
, il semble que le site officiel de YOLO ne conserve pas ses fichiers de manière fiable.
@thtrieu merci de débroussailler. savez-vous où trouver les fichiers correspondants ?
@kinhunt j'ai chassé pendant plusieurs jours et je ne les ai pas trouvés. Vous feriez mieux de vous entraîner à partir de zéro
Je peux télécharger le mien. Attendez ~ 24 heures.
@thtrieu bonne nouvelle. Je vous remercie
@Dhruv-Mohan @kinhunt voir README mis à jour, j'ai téléchargé une partie du fichier de poids.
Je l'ai. Merci. Ça marche
@thtrieu pourriez-vous fournir les étapes que vous avez suivies pour formerj sur l'ensemble de données coco afin de générer le fichier yolo.weights. Je voudrais répéter la même chose et générer un fichier de poids pour yolov2 sur l'ensemble de données coco.
Salut @thtrieu ,
J'ai suivi les étapes que vous avez mentionnées pour recycler le modèle avec un nombre personnalisé de classes
[convolutionnel]
taille=1
foulée=1
pad=1
filtres=30
activation=linéaire
[Région]
ancres = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52
bias_match=1
cours=1
coordonnées=4
nombre=5
J'ai aussi une seule étiquette dans label.txt. Mais lorsque je l'exécute avec le petit fichier de poids que j'ai téléchargé à partir de votre partage google [ https://drive.google.com/drive/folders/0B1tW_VtY7onidEwyQ2FtQVplWEU tiny-yolo-voc.weights], il échoue avec une erreur d'assertion
AssertionError : attendez 63082056 octets, trouvé 63471556
Pouvez-vous m'aider à comprendre ce qui ne va pas ici.
J'ai eu un problème similaire avec un poids précédemment formé sur darknet, j'ai copié le même fichier .cfg avec le poids pour l'essayer sur darkflow et j'ai obtenu :
AssertionError: expect 202314760 bytes, found 202314764
Il ne diffère que de 4 octets, est-ce que certains paramètres me manquent ?
@deng1028 avez-vous déjà résolu votre problème ? J'ai le même problème.
@helloGitHub1993 avez-vous déjà résolu votre problème ? J'ai le même problème.
@helloGitHub1993 allez dans loader.py dans le dossier utils, puis changez self.offset = 20 à la ligne 121
@beerboaa j'ai utilisé un autre moyen. flow -model cfg/yolo-new.cfg (remplacez-le par votre cfg d'entraînement) --load -1 --imgdir yourimgdir. Cela fonctionne pour moi et vous pouvez essayer. Au fait, vous n'avez pas besoin de vous entraîner à nouveau.
@itsayush as-tu déjà résolu ton problème ? J'ai également suivi les mêmes étapes que vous et j'ai le même problème avec la formation de données personnalisées (1 classe). J'ai essayé de changer self.offset = 1 dans loader.py, cela n'a pas fonctionné.
Ma commande :
flow --train --model cfg/tiny-yolo-voc-1c.cfg --load bin/tiny-yolo-voc.weights --annotation train/Annotations/ --dataset train/Images/ --config cfg/ - -gpu 0.9
Mais ça marche bien avec :
flux --imgdir sample_img/ --model cfg/tiny-yolo-voc.cfg --load bin/tiny-yolo-voc.weights --gpu 0.9
AssertionError : attendez 63471541 octets, trouvé 63471556
Quelqu'un peut-il m'aider?
J'ai le même problème en utilisant le code de ce git https://github.com/bendidi/Tracking-with-darkflow avec tiny-yolo
@hyperfraise
J'ai aussi le même problème, le résolvez-vous ?
confronté au même problème. j'ai essayé d'utiliser les poids de votre lecteur google avec le .cfg correspondant, j'ai travaillé jusqu'à ce que j'essaye de changer le nombre de classes en 1 (=> filtres dans la dernière couche = 30). Existe-t-il encore une possibilité de s'entraîner sur un nombre personnalisé de classes avec un modèle pré-entraîné ?
J'ai eu le même problème lorsque j'ai formé Yolo avec mon propre ensemble de données personnalisé à partir du site Web de pjreddie et j'ai essayé d'exécuter le fichier .weights résultant à l'aide de darkflow. J'ai eu le problème de "Erreur d'assertion : attendez 268283952 octets, trouvé 268283956". Une fois que j'ai modifié self.offset = 20 à la ligne 121 dans loader.py dans le dossier utils comme l' a dit
@MartinBrisiak où avez-vous obtenu le .cfg correspondant ?
peu importe, je l'ai exécuté dans un environnement avec le yolo.weights de @thtrieu et le yolo.cfg dans ce référentiel
quelque chose ne va pas avec l'autre environnement...
@helloGitHub1993 allez dans loader.py dans le dossier utils, puis changez self.offset = 20 à la ligne 121
oui ça marche merci beaucoup
@beerboaa Merci mahn..ça a fonctionné
Il semble que les fichiers PJ Reddie ne soient pas entièrement compatibles, je dois donc télécharger les poids pré-construits à partir du lien fourni dans le README : https://drive.google.com/drive/folders/0B1tW_VtY7onidEwyQ2FtQVplWEU
Il semble que les fichiers PJ Reddie ne soient pas entièrement compatibles, je dois donc télécharger les poids pré-construits à partir du lien fourni dans le README : https://drive.google.com/drive/folders/0B1tW_VtY7onidEwyQ2FtQVplWEU
où trouver les poids yolov2-voc.? manque... une idée ?
il y a un mélange avec 2 problèmes différents, le premier s'il est différent du fichier de poids existant et la configuration d'exactement 4 octets dans ce cas, vous devez modifier l'offset de la ligne 121 à 20 (dans mon cas, cela fonctionne avec yolov2) le deuxième cas si le différent fait plus de 4 octets, c'est un mauvais fichier de configuration pour le fichier de poids OU si vous voulez former vos propres objets assurez-vous que yolov2-voc.cfg existe dans le dossier de configuration, je joins celui qui résout le problème
cfg-yolov2-voc.zip
J'ai eu le même problème lorsque j'ai formé Yolo avec mon propre ensemble de données personnalisé à partir du site Web de pjreddie et j'ai essayé d'exécuter le fichier .weights résultant à l'aide de darkflow. J'ai eu le problème de "Erreur d'assertion : attendez 268283952 octets, trouvé 268283956". Une fois que j'ai modifié self.offset = 20 à la ligne 121 dans loader.py dans le dossier utils comme l' a dit
pour moi ça ne marche pas, d'autres idées ? :(
Salut,
J'ai finalement pu le faire fonctionner en utilisant ce fichier .cfg https://github.com/pjreddie/darknet/blob/master/cfg/yolov2.cfg
et cela fonctionne avec le poids "yolov2 608X608" d'ici : https://pjreddie.com/darknet/yolo/
Pour faire face à l'erreur
AssertionError : attendez 64701556 octets, trouvé 180357512
juste courir
$ cd /content/darkflow
$ !sed -i "s/self.offset = 16/self.offset = 20/g" ./darkflow/utils/loader.py
Concernant l'erreur d'assertion, elle est probablement due à la non-concordance du fichier de configuration et des poids.
Donc, j'ai trouvé un hack autour de ça. Utilisez ce carnet de Zoltan Szabo
L'auteur fournit une démo pour seulement 2 classes. Ainsi, son fichier cfg a 2 classes et utilise les poids yolov2-tiny-voc-10000, trouvés ici .
Mais le modèle réel (v2-tiny) a été formé sur 20 classes. Ainsi, pour générer un fichier pb pour le modèle réel, utilisez le fichier de configuration réel du modèle, maintenu par pJreddie à
https://raw.githubusercontent.com/pjreddie/darknet/master/cfg/yolov2-tiny-voc.cfg "
et remplacez le fichier cfg d'origine par celui-ci. Laissez les poids restent les mêmes.
Maintenant, la dernière modification que vous devez apporter concerne le fichier texte contenant les noms de classe. Pour cela, allez dans le fichier des noms de classes maintenu par pj reddie et collez-les dans le fichier texte présent dans /content/darkflow/labels.txt
(dans Google Collab).
Maintenant, exécutez simplement la commande que vous exécutiez
!./flow --model cfg/yolo-v2-tiny.cfg --load weights/yolov2-tiny-voc_10000.weights --savepb
Et vous devriez obtenir le fichier protobuf souhaité :miam:
Commentaire le plus utile
@Dhruv-Mohan @kinhunt voir README mis à jour, j'ai téléchargé une partie du fichier de poids.