2017-07-19 13 views
1

テンソルフローでコードを書きます。私はラベル(ラベル[])と呼ばれるリストにラベルを保存します。ラベルリストには文字が含まれています。例えば文字リストの作成テンソルフローを使用したTFrecordsの機能

ラベル[A、B、B]

私はTFRecordsがファイルにラベル要素を書きたいです。 そう、私は宣言する必要があります機能

def _int64_feature(value): 
    return tf.train.Feature(int64_list=tf.train.Int64List(value=[value])) 

私の質問は、私は私の場合に適していると代わりtf.train.int64Listの何を使用する必要がありますされて?

また、私は次の2つのチュートリアルを使用しましたが、別のチュートリアルで問題を説明してください。

TFrecords Guid

How to write into and read from a TFRecords file in TensorFlow

答えて

1

TFRecordsは、バイナリ形式のファイルの種類です。したがって、JPGイメージを文字列に変換してからTFRecordに保存することが目的です。これにより、迅速な読み取りが可能になります。

これは、を使用して最初に画像がraw_imgに変換されたチュートリアルで見ることができます。次に、データ型int64またはバイトに応じて、これはTFRecordに保存されます。

イメージはJPGであるため、バイト(0-255)として保存されていると想定しています。したがって、リスト内のすべての画像について、それを文字列に変換してからチュートリアルの関数_bytes_feature(value)に変換します。

TFRecordに高さ、幅、奥行きを保存するか、文字列をイメージに再変換するためにこれらの寸法を必要とするため、パラメータとして保持します。

ラベルの場合、ASCII文字を2進表現に変換できます。これはできる:

>>> ord('a') 
97 

これは、文字を表す1から127までの数字です。これはバイト形式なので、バイト機能をもう一度使用することができます。

は、すべてを行う必要がある実際の文字に戻って文字値を変換するには:

>>> chr(97) 
'a' 

ホープ、このことができます!

+0

この情報はお役に立ちましたが、これは私が欲しいものではありません。私はJPG画像に問題はありません。私のコードで何をしているのかを説明するだけです。私の問題はラベルと** tf.train.Int64List ** – AAA

+0

にあります。ラベルの移動方法の答えが更新されました! – MarkCutajar

+0

質問をもっと明確にするように更新しました。私はchr()とord()を使ってみます。 ありがとう – AAA

関連する問題