Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从tensorflow到rgb的单通道给出秩0_Python_Numpy_Tensorflow - Fatal编程技术网

Python 从tensorflow到rgb的单通道给出秩0

Python 从tensorflow到rgb的单通道给出秩0,python,numpy,tensorflow,Python,Numpy,Tensorflow,我正在创建一个多维数组 import numpy as np import tensorflow as tf a = np.zeros((10, 4, 4, 1)) print(a.shape) (10, 4, 4, 1) 我想添加rgb频道,因此我正在执行以下操作: tf_a = tf.image.grayscale_to_rgb(a, name=None) print(tf.rank(tf_a)) Tensor("Rank:0", shape=(), dtype=int32) 它

我正在创建一个多维数组

import numpy as np
import tensorflow as tf

a = np.zeros((10, 4, 4, 1))

print(a.shape)

(10, 4, 4, 1)
我想添加rgb频道,因此我正在执行以下操作:

tf_a = tf.image.grayscale_to_rgb(a, name=None)
print(tf.rank(tf_a))

Tensor("Rank:0", shape=(), dtype=int32)
它给了我一个秩为0而不是4的张量

此外,形状:

print(tf.shape(tf_a))

给出:
张量(“Shape:0”,Shape=(4,),dtype=int32)
在Tensorflow中,tf.rank(tf\u a)tf.Shape(tf\u a)返回张量。因此,您正在打印这些张量的形状和秩,而不是tf_a的形状和秩

因此,我稍微编辑了一下您的代码以获得实际结果

import numpy as np
import tensorflow as tf

a = np.zeros((10, 4, 4, 1))

tf_a = tf.image.grayscale_to_rgb(a, name=None)

sess = tf.Session()
with sess.as_default():

   print(tf.rank(tf_a).eval()) # rank 
   print(tf.shape(tf_a).eval()) #shape

 4            #rank
[10  4  4  3] #result
希望这有帮助