0

Ich bereite mich vor, in Caffe mit Daten in einer hdf5-Datei zu trainieren. Diese Datei enthält auch die pro-Pixel-Mittelwertdaten/Bild des Trainingssatzes. In der Datei 'train_val.prototxt' für die Eingangsdatenschicht in dem Abschnitt 'transform_params' ist es möglich, ein mean_file zu verwenden, um die Daten zu normalisieren, in der Regel in binaryproto Format, beispielsweise für die ImageNet Caffe tutorial example:Verwenden Sie die durchschnittliche Datei in hdf5 in caffe

transform_param { 
    mirror: true 
    crop_size: 227 
    mean_file: "data/ilsvrc12/imagenet_mean.binaryproto" 
} 

Für pro-Kanal-Normalisierung kann man Verwenden Sie stattdessen mean_value anstelle von mean_file.

Aber gibt es eine Möglichkeit, mittlere Bilddaten direkt aus meiner Datenbank (hier hdf5) zu verwenden?

Ich habe den Mittelwert aus dem hdf5 in eine numpy-Datei extrahiert, bin mir aber nicht sicher, ob das im prototxt verwendet oder konvertiert werden kann. Ich kann keine Informationen dazu in der Caffe-Dokumentation finden.

Antwort

0

AFAIK, "HDF5Data" Schicht unterstützt keine Transformationen. Sie sollten die Mittelwerte selbst subtrahieren, wenn Sie die Daten in HDF5-Dateien speichern.

Wenn Sie ein nupy Array in einem binaryproto Format speichern möchten, können Sie this answer für weitere Details sehen.

+0

Danke für die Antwort! Ja, das scheint der Fall zu sein. Nach dem Schreiben dieser Frage habe ich nach einer Weile von Caffe bekommen: "HDF5Data transformiert keine Daten." – Menx100

Verwandte Themen