2017-09-12 3 views
1

Ich weiß nicht, was schief geht mit diesem kleinen Programm.Tensorflow-Programm hängt im Lesen tfrecord

Hier ist ein Ausschnitt des MCVE-Autor:

def convert_to_example(): 
    example = tf.train.Example(features=tf.train.Features(feature={ 
      'bboxes': _floats_feature([0.,1.]) 
      })) 
    return example 

writer = tf.python_io.TFRecordWriter(output_file) 
... 
for filename in filenames: 
    ... 
    example = convert_to_example() 
    writer.write(example.SerializeToString()) 

writer.close() 

Dies ist, wie ich die Beispiele lesen:

filename = '/path/to/file' 
record_iter = tf.python_io.tf_record_iterator(path=filename) 
example = tf.train.Example() 
l = [] 
for record in record_iter: 
    example.ParseFromString(record) 
    bboxes = example.features.feature['bboxes'].float_list.value[:] 
    l.append(bboxes) 

print(l) 

Ich habe das Problem in eingrenzen:

  • es funktioniert mit bytes_list
  • es funktioniert mit int64_list, wenn die Liste nur eine ganze Zahl ist aber nicht eine Liste von ganzen Zahlen
  • es funktioniert mit float_list, wenn die Liste nur ein Schwimmer ist aber nicht eine Liste von Schwimmern

Also, wenn ich eine Liste des Schwimmer verwenden/Integer, die Ausführung erreicht einen Deadlock oder zerfällt. Wenn ich einen float/integer benutze, läuft alles glatt.

Irgendeine Idee?

Antwort

0

Dieser Fehler ist systemabhängig. Auf der Workstation funktioniert das gut, aber nicht auf meinem PC. Ich habe ein Problem in github.com geöffnet.

Verwandte Themen