0
私が作業しているCNNへの入力として、画像のシーケンスを使用したい(convレイヤーで3D畳み込みを使用)。3Dテンソルの画像をどのように読み込むのですか?
しかし、私はすでに計算に使用できる3Dテンソルとしてイメージの読み込みに失敗しています。私はnumpyのアレイからの期待通り、私はテンソルとインデックス表記を使用することはできませんので、すでに失敗し
def get_sequence_as_tensor(folder):
images = [folder + "/depth-%i.png" for i in range(15)]
tensor = tf.zeros(shape=(480, 640, 15), dtype=tf.float32)
for i, image in enumerate(images):
img = tf.image.decode_png(image)
img_float = tf.cast(img, tf.float32)
img_float = tf.reshape(img_float, (480, 640))
tensor[:, :, i] = img_float
return tensor
:
は、ここに私の原始的な試みです。
TypeError: 'Tensor' object does not support item assignment
一連の画像を3次元テンソルとして読み取るには、どのような方法が適していますか?
だから、トリックは浮動小数点型のプレースホルダを定義し、そのプレースホルダにnumpy型の配列を渡すだけで、自動的にテンソルに変換されます。 – florianletsch
ありがとう、私はそれを働かせました。あなたのコード例のいくつかの修正(私の後に来る人々のために働きやすくなるように): 1. 'Sesssion' - >' Session'。 2. 'enumerate(images)' - > 'enumerate(filenames)'などと同様に、ファイル名のリストを繰り返します。 3. 'feed_dict {file_name:image}' - > 'feed_dict = {filename:image}' – florianletsch
私は助けることができてうれしいです。エラーについては申し訳ありません。 – jasekp