Darkflow: Behauptungsfehler: yolo.weights ĂŒberlesen

Erstellt am 28. MĂ€rz 2017  Â·  35Kommentare  Â·  Quelle: thtrieu/darkflow

Ich habe versucht, ./flow --test test/ --model cfg/yolo.cfg --load yolo.weights --gpu 1.0 . auszufĂŒhren

Ich bekomme das Laden von yolo.weights ... und dann einen Assertionsfehler: Over-read yolo.weights.

Wenn ich jedoch den gleichen Befehl mit tiny-yolo.cfg und tiny-yolo.weights ausfĂŒhre, funktioniert es. Ich habe die Gewichtsdatei von https://pjreddie.com/darknet/yolo/ heruntergeladen

Hilfreichster Kommentar

@Dhruv-Mohan @kinhunt siehe aktualisierte README, ich habe einige der Gewichtsdateien hochgeladen.

Alle 35 Kommentare

Ich schĂ€tze, du hast falsche Gewichte verwendet, es stimmte nicht mit cfg ĂŒberein. Ich habe es mit yolo.cfg & yolo.weights versucht, es hat gut funktioniert.
Wenn ich jedoch yolo-voc.cfg mit einer benutzerdefinierten Klasse trainiere, erhalte ich die gleiche Fehlermeldung mit meinen trainierten Gewichten. Ich wĂŒrde mich freuen, wenn mir jemand erklĂ€ren könnte, was dieser Fehler bedeutet.

Der .weights Parser folgt .cfg Schicht fĂŒr Schicht und liest den entsprechenden Byte-Block von .weights , aber dann gibt es noch Schicht zu lesen, wĂ€hrend der Parser bereits das Ende von erreicht hat .weights ; das ist, wenn Sie den Assertion-Fehler haben.

Bitte geben Sie den Befehl ein, der zu diesem Fehler fĂŒhrt. Wenn Sie Ihre Klasse anpassen möchten, können Sie an einigen Stellen Änderungen vornehmen:

  1. Anzahl der Filter in der letzten conv Ebene in .cfg
  2. class Nummer in region Ebene
  3. labels.txt

Dann renne

./flow --model cfg/model.cfg --load bin/model.weights --train

Versuchen Sie, Ihr Netzwerk von Grund auf neu zu trainieren, die neuesten Gewichte https://pjreddie.com/darknet/yolo/ scheinen nicht mit der cfg-Datei ĂŒbereinzustimmen.
Ich habe das gleiche Problem mit yolo.weights und yolo-voc.weights, aber die Gewichte meines individuell trainierten Netzwerks funktionieren einwandfrei

Könnten Sie eine Anleitung zum Training mit der Datei yolo.cfg bereitstellen? Danke

Am Mi, 29. MĂ€rz 2017 um 12:20 Uhr, Dhruv-Mohan [email protected]
schrieb:

Versuchen Sie, Ihr Netzwerk von Grund auf neu zu trainieren, die neuesten Gewichte
https://pjreddie.com/darknet/yolo/ nicht mit der cfg-Datei ausrichten.
Ich habe das gleiche Problem mit yolo.weights und yolo-voc.weights,
Die Gewichtungen meines benutzerdefinierten trainierten Netzwerks funktionieren jedoch einwandfrei

—
Sie erhalten dies, weil Sie den Thread verfasst haben.
Antworten Sie direkt auf diese E-Mail und zeigen Sie sie auf GitHub an
https://github.com/thtrieu/darkflow/issues/107#issuecomment-289999490 ,
oder den Thread stumm schalten
https://github.com/notifications/unsubscribe-auth/AZgJMHWUgCDnwlS_s1HY5RcBNrVSAWusks5rqf9CgaJpZM4Mrj84
.

gleiches Problem. Verwenden Sie die Readme-Anweisung mit yolo.cfg und v2 Weights von http://pjreddie.com/media/files/yolo-voc.weights

@kinhunt yolo.cfg und yolo-voc.weights stimmen nicht ĂŒberein. Sogar das neue yolo.weights passt nicht zu yolo.cfg , es scheint, dass die offizielle YOLO-Site ihre Dateien nicht zuverlĂ€ssig aufbewahrt.

@thtrieu, danke, dass du dich

@kinhunt Ich habe viele Tage gejagt und sie nicht gefunden. Am besten trainierst du von Grund auf neu

Ich kann meine hochladen. Warten Sie ~ 24 Stunden.

@thtrieu gute Nachrichten. Danke schön

@Dhruv-Mohan @kinhunt siehe aktualisierte README, ich habe einige der Gewichtsdateien hochgeladen.

habs danke. Es klappt

@thtrieu könnten Sie die Schritte

Hallo @thtrieu ,
Ich habe die von Ihnen erwÀhnten Schritte befolgt, um das Modell mit einer benutzerdefinierten Anzahl von Klassen neu zu trainieren

[faltend]
GrĂ¶ĂŸe=1
Schritt = 1
pad=1
Filter=30
Aktivierung=linear

[Region]
Anker = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52
bias_match=1
Klassen=1
Koordinaten = 4
Anzahl=5

Ich habe auch nur ein Label in der label.txt. Aber wenn ich dies mit der winzigen Gewichtungsdatei ausfĂŒhre, die ich von Ihrer Google-Freigabe heruntergeladen habe [ https://drive.google.com/drive/folders/0B1tW_VtY7onidEwyQ2FtQVplWEU tiny-yolo-voc.weights], schlĂ€gt es mit einem Assertionsfehler fehl

AssertionError: 63082056 Bytes erwarten, 63471556 gefunden

Können Sie mir helfen zu verstehen, was hier falsch sein könnte.

Ich hatte ein Àhnliches Problem mit einem zuvor speziell trainierten Gewicht von Darknet, ich kopierte die gleiche .cfg-Datei mit dem Gewicht, um es auf Darkflow auszuprobieren und bekam:
AssertionError: expect 202314760 bytes, found 202314764
Es unterscheidet sich nur um 4 Byte, also fehlen mir einige Einstellungen?

@deng1028 hast du dein problem schon gelöst? Ich habe das gleiche Problem.

@helloGitHub1993 hast du dein Problem schon gelöst? Ich habe das gleiche Problem.

@helloGitHub1993 gehe in loader.py im utils-Ordner, dann Àndere self.offset = 20 in Zeile 121

@beerboaa Ich habe einen anderen Weg verwendet. flow -model cfg/yolo-new.cfg (ersetzen Sie es durch Ihre Trainings-cfg) --load -1 --imgdir yourimgdir. Bei mir funktioniert es und du kannst es ausprobieren. Übrigens musst du nicht nochmal trainieren.

@itsayush hast du dein Problem schon gelöst? Ich habe auch die gleichen Schritte wie Sie befolgt und habe das gleiche Problem mit dem Training benutzerdefinierter Daten (1 Klasse). Ich habe versucht, self.offset = 1 in loader.py zu Àndern, es hat nicht funktioniert.
Mein Befehl:
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
Aber es funktioniert gut mit:
flow --imgdir sample_img/ --model cfg/tiny-yolo-voc.cfg --load bin/tiny-yolo-voc.weights --gpu 0.9
AssertionError: 63471541 Bytes erwarten, 63471556 gefunden

Kann mir jemand helfen?

Ich habe das gleiche Problem mit dem Code dieses Git https://github.com/bendidi/Tracking-with-darkflow with tiny-yolo

@hyperfraise
image
Ich habe auch das gleiche Problem, hast du es behoben?

mit dem gleichen Problem konfrontiert. Ich habe versucht, Gewichte von Ihrem Google-Laufwerk mit entsprechender .cfg zu verwenden, funktionierte, bis ich versuchte, die Anzahl der Klassen auf 1 zu Àndern (=> Filter in der letzten Schicht = 30). Besteht noch die Möglichkeit, mit einem vortrainierten Modell in einer benutzerdefinierten Anzahl von Klassen zu trainieren?

Ich hatte das gleiche Problem, als ich Yolo mit meinem eigenen benutzerdefinierten Datensatz von der Website von pjreddie trainierte und versuchte, die resultierende .weights-Datei mit Darkflow auszufĂŒhren. Ich hatte das Problem von "Assertion Error: Erwarte 268283952 Bytes, gefunden 268283956". Sobald ich self.offset = 20 in Zeile 121 in loader.py im Ordner utils geĂ€ndert habe, wie einwandfrei . Danke.

@MartinBrisiak wo hast du die entsprechende .cfg her?

Egal, ich habe es in einer Umgebung mit den yolo.weights von @thtrieu und der yolo.cfg in diesem Repo ausgefĂŒhrt
etwas stimmt nicht mit der anderen Umgebung...

@helloGitHub1993 gehe in loader.py im utils-Ordner, dann Àndere self.offset = 20 in Zeile 121

Ja, es funktioniert, vielen Dank

@beerboaa Danke mahn..es hat geklappt

Es scheint, dass die PJ Reddie-Dateien nicht vollstĂ€ndig kompatibel sind, daher muss ich die vorgefertigten Gewichte ĂŒber den bereitgestellten Link in der README herunterladen: https://drive.google.com/drive/folders/0B1tW_VtY7onidEwyQ2FtQVplWEU

Es scheint, dass die PJ Reddie-Dateien nicht vollstĂ€ndig kompatibel sind, daher muss ich die vorgefertigten Gewichte ĂŒber den bereitgestellten Link in der README herunterladen: https://drive.google.com/drive/folders/0B1tW_VtY7onidEwyQ2FtQVplWEU

wo finde ich yolov2-voc.weights? fehlt... irgendeine idee?

es gibt eine Mischung mit 2 verschiedenen Problemen, das erste, wenn es sich von der vorhandenen Gewichtsdatei unterscheidet und die Konfiguration von genau 4 Bytes in diesem Fall mĂŒssen Sie den Offset in Zeile 121 auf 20 Ă€ndern (in meinem Fall arbeitet mit yolov2) der zweite Fall, wenn der Unterschied mehr als 4 Byte betrĂ€gt, ist dies eine falsche Konfigurationsdatei fĂŒr die Gewichtsdatei ODER falls Sie Ihre eigenen Objekte trainieren möchten, stellen Sie sicher, dass yolov2-voc.cfg im Konfigurationsordner vorhanden ist, ich hĂ€nge diejenige an, die auflöst die Angelegenheit
cfg-yolov2-voc.zip

Ich hatte das gleiche Problem, als ich Yolo mit meinem eigenen benutzerdefinierten Datensatz von der Website von pjreddie trainierte und versuchte, die resultierende .weights-Datei mit Darkflow auszufĂŒhren. Ich hatte das Problem von "Assertion Error: Erwarte 268283952 Bytes, gefunden 268283956". Sobald ich self.offset = 20 in Zeile 121 in loader.py im Ordner utils geĂ€ndert habe, wie einwandfrei . Danke.

bei mir funktioniert es nicht, andere ideen? :(

Hallo,
Ich konnte es endlich zum Laufen bringen, indem ich diese .cfg-Datei verwendet habe https://github.com/pjreddie/darknet/blob/master/cfg/yolov2.cfg
und es funktioniert mit dem "yolov2 608X608" Gewicht von hier: https://pjreddie.com/darknet/yolo/

Um den Fehler zu beheben

AssertionError: 64701556 Bytes erwarten, gefunden 180357512

Renn einfach

$ cd /content/darkflow
$ !sed -i "s/self.offset = 16/self.offset = 20/g"  ./darkflow/utils/loader.py

BezĂŒglich des Assertionsfehlers liegt es wahrscheinlich an der NichtĂŒbereinstimmung der Konfigurationsdatei und der Gewichtungen.

Also habe ich einen Hack dafĂŒr gefunden. Verwenden Sie dieses Notizbuch von Zoltan Szabo
Der Autor stellt eine Demo fĂŒr nur 2 Klassen zur VerfĂŒgung. Seine cfg-Datei hat also 2 Klassen und verwendet die yolov2-tiny-voc-10000-Gewichte, die hier gefunden
Aber das eigentliche Modell (v2-tiny) wurde auf 20 Klassen trainiert. Um also eine pb-Datei fĂŒr das tatsĂ€chliche Modell zu generieren, verwenden Sie die tatsĂ€chliche Konfigurationsdatei des Modells, die von pJreddie at . verwaltet wird
https://raw.githubusercontent.com/pjreddie/darknet/master/cfg/yolov2-tiny-voc.cfg "

und ersetzen Sie die ursprĂŒngliche cfg-Datei durch diese. Lassen Sie die Gewichte gleich.

Die letzte Änderung, die Sie jetzt vornehmen mĂŒssen, betrifft die Textdatei mit den Klassennamen. Gehen Dazu in die Klassennamen - /content/darkflow/labels.txt Datei von pj Reddie gepflegt und fĂŒgen Sie sie in die Textdatei in /content/darkflow/labels.txt (in Google Collab).

FĂŒhren Sie jetzt einfach den Befehl aus, den Sie ausgefĂŒhrt haben
!./flow --model cfg/yolo-v2-tiny.cfg --load weights/yolov2-tiny-voc_10000.weights --savepb

Und Sie sollten die gewĂŒnschte protobuf-Datei erhalten :yum:

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

LeeroyHannigan picture LeeroyHannigan  Â·  4Kommentare

wonny2001 picture wonny2001  Â·  4Kommentare

Kowasaki picture Kowasaki  Â·  4Kommentare

borasy picture borasy  Â·  3Kommentare

ma3252788 picture ma3252788  Â·  3Kommentare