Ich habe eine große .tfrecords-Datei erstellt, ohne einen Fehler zu sehen. Während des Trainings habe ich jedoch den Fehler "trunked record at XXXX" gesehen, als der TfRecordReader ungefähr am Ende der .tfrecord-Datei angekommen ist. Wie kann ich schnell überprüfen, ob die .tfrecord-Datei wirklich beschädigt ist? Wenn ja, wie kann ich die Datei schnell reparieren? (Es ist in Ordnung, die letzten paar Schlüssel-Wert-Paare zu verwerfen)?Wie abgeschnittene tfrecords für Tensorflow zu beheben?
Antwort
Die Nachricht bedeutet, was es sagt --- die TFRecord-Datei scheint unerwartet teilweise durch einen Datensatz zu enden.
Wenn Sie verstehen wollen, was unter der Haube vor sich geht, ist das Dateiformat ganz einfach und wird hier dokumentiert: https://www.tensorflow.org/versions/r0.11/api_docs/python/python_io.html#tfrecords-format-details
Eine schnelle Sache zu überprüfen: ist die Datei, die Sie wirklich Datei zu lesen sind ein TFRecord? Es ist immer gut, sicher zu sein.
Es ist schwer, eine gute Antwort darauf zu geben, wie "beschädigt" eine TFRecord-Datei ist --- der ganze Code des Lesers kann Ihnen sagen, dass etwas inkonsistent ist.
(Haben Ihren Schreibprozess die Datei beenden, wenn es fertig ist? Richtig und schließen)
Wenn Sie die Datei reparieren wollen, wahrscheinlich die beste Wahl, es zu regenerieren ist.
Alternativ können Sie den Inhalt der Datei mit den im obigen Link dokumentierten Reader-Funktionen einlesen und in eine neue TFRecord-Datei schreiben. Sie werden die beschädigten Datensätze verlieren, aber Sie sollten in der Lage sein, alles andere zu kopieren.
Ich hatte einige beschädigte Bilder, teilweise heruntergeladenen Bilder um genau zu sein, aber ich konnte sie nicht mit fangen: imghdr.What()
, Image.open().verify()
oder cv2.imread
Methoden.
Nur Lösung gearbeitet, ist dies: Image.open(path/to/image).tobytes()
dieser Code Fehler IOError werfen, wenn das Bild beschädigt ist.
hoffe, es hilft jemandem
- 1. Wie zu beheben Tensorflow Tutorial (Mnist für Anfänger) Fehler?
- 2. Wie kann ich einen java.lang.ClassFormatError beheben: Abgeschnittene Klassendateifehler?
- 3. TensorFlow - Lesen Sie alle Beispiele von einem TFRecords auf einmal?
- 4. Erstellen einer Zeichenliste Features in TFrecords mit Tensorflow
- 5. Tensorflow Erstellen Sie eine tfrecords Datei von csv
- 6. Tensorflow liest Daten von tfrecords in Minilose richtig
- 7. TFRecords und Record Shuffling
- 8. Trainieren mit TFrecords wird langsam langsamer
- 9. Konvertiert meine eigenen Bilddaten in TFRecords
- 10. Wie zu beheben Fehler für Laravel 5.2
- 11. Wie UTF-Codierung für Leerzeichen zu beheben?
- 12. Wie C-style für Anweisung zu beheben?
- 13. Wie Fehler für ActivityFeeds.UI.js zu beheben?
- 14. Wie zu beheben calico.yaml für kubernetes Cluster?
- 15. Wie zu beheben NoForeignKeysError
- 16. ImageNet ILSVRC2012 abgeschnittene tar Archiv
- 17. Abgeschnittene Zeichenfolgen mit TextBoxFor
- 18. Wie zu beheben java.lang.ClassCastException?
- 19. wie Speicherverlust zu beheben?
- 20. Wie zu beheben org.springframework.beans.factory.BeanCreationException
- 21. Wie zu beheben EntityValidationErrors
- 22. abgeschnittene bekannte Teilzeichenfolge sh
- 23. Abgeschnittene Textzeichen 'IIf' + 'Left' (?)
- 24. Extrahieren von Bildern aus Tfrecords-Dateien mit Protobuf ohne eine TensorFlow-Sitzung
- 25. Schreiben von TFrecords mit Bildern und Multilabels zur Klassifizierung
- 26. ungültige Syntax, wie zu beheben?
- 27. Wie AS3-Taste zu beheben?
- 28. Wie QuasiQuoter Warnung zu beheben?
- 29. Wie Makefile Fehler zu beheben?
- 30. Wie kann ich Werte aus TFRecords als Argumente für tf.reshape verwenden?