2017-10-31 1 views
0

다음과 같은 모양을 가진 텐서를 처리 중입니다 : [frame, channel, height, width]. 텐서에서 각 프레임을 추출하고 싶습니다. 쉽게 수행 할 수 있습니다 [frame_number, :,:,:]. 그런 다음 특정 프레임의 치수를 계속 처리합니다. [channel, height, width]많은 이미지를 순차적으로 쌓아서 더 큰 텐서를 만드는 방법은 무엇입니까?

그러나 각 프레임을 처리 할 때 [frame, channel, height, width] 모양의 다른 텐서 형태로 순차적으로 쌓는 것이 어렵다는 것을 알고 있습니다. (즉,이 텐서는 0 축에서 자랄 것입니다)

가장 효과적인 방법은 무엇입니까?

답변

0

tf.stack (doc)을 사용하면 간단하게 결합 할 수 있습니다. 다음은 예입니다.

import tensorflow as tf 
import numpy as np 

a = tf.Variable(np.ones([2, 3, 4, 5])) 

# Slice a 
b = a[0, :, :, :] 
c = a[1, :, :, :] 

# Stack b, c. Result should be the same as a 
d = tf.stack([b, c]) 

with tf.Session() as sess: 
    sess.run(tf.global_variables_initializer()) 
    assert sess.run(a).all() == sess.run(d).all() 
관련 문제