Das Datenformat für die Ausbildung/Test-Speicherung in der FSN Papier https://arxiv.org/pdf/1702.03970.pdf (Tabelle 4) definiert ist.
Um Tfrecord-Dateien mit tf.Example-Protos zu speichern, können Sie tf.python_io.TFRecordWriter verwenden. Es gibt a nice tutorial, eine bestehende answer on the stackoverflow und eine short gist.
Angenommen, es soll eine numpy ndarray img
haben, die Bilder gespeichert num_of_views
Seite-an-Seite (siehe Figur 3 in der paper.): und einen entsprechenden Text in einer Variablen text
. Sie müssen eine Funktion definieren, um eine Unicode-Zeichenfolge in eine Liste von Zeichen-IDs zu konvertieren, die auf eine feste Länge aufgefüllt und ebenfalls nicht gepolstert sind. Zum Beispiel:
char_ids_padded, char_ids_unpadded = encode_utf8_string(
text='abc',
charset={'a':0, 'b':1, 'c':2},
length=5,
null_char_id=3)
sollte das Ergebnis sein:
char_ids_padded = [0,1,2,3,3]
char_ids_unpadded = [0,1,2]
Wenn Sie Funktionen verwenden _int64_feature
und _bytes_feature
in der definierten gist können Sie einen FSN kompatibel tf.Example Proto mit einem folgenden Ausschnitt erstellen:
char_ids_padded, char_ids_unpadded = encode_utf8_string(
text, charset, length, null_char_id)
example = tf.train.Example(features=tf.train.Features(
feature={
'image/format': _bytes_feature("PNG"),
'image/encoded': _bytes_feature(img.tostring()),
'image/class': _int64_feature(char_ids_padded),
'image/unpadded_class': _int64_feature(char_ids_unpadded),
'height': _int64_feature(img.shape[0]),
'width': _int64_feature(img.shape[1]),
'orig_width': _int64_feature(img.shape[1]/num_of_views),
'image/text': _bytes_feature(text)
}
))
waren Sie in der Lage für Sie diese Arbeit zu bekommen? Können Sie das Skript teilen, mit dem Sie Ihre eigenen Daten vorbereitet haben? – Roger
Entschuldigung, ich habe den Prozess der Erstellung von Datensätzen nicht basierend auf meinen eigenen Bildern reproduziert. Ich bin in diesem Problem stecken geblieben. https://stackoverflow.com/questions/45093932/invalidargumentterror-when-traing-attention-ocr-assign-requires-shapes-of-both –