2016-12-07 12 views

回答

2

在TensorFlow,您可以使用tf.expand_dims(img, 2)操作或TensorFlow索引操作符的32×32矩阵转换为32x32x1张量:

img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 
img_tensor = tf.constant(img) 
img_expanded = tf.expand_dims(img, 2) # or `img[:, :, tf.newaxis]` 

同样可以使用NumPy的索引来实现:

import numpy as np 
# ... 
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 
img_expanded = img[:, :, np.newaxis] 
+0

谢谢。我正在预处理步骤中进行灰度转换,所以我不想涉及到tf。有没有另外一种方法可以做到这一点? – megashigger

+0

当然,你可以用同样的方式在NumPy中完成它(见更新的答案)。 – mrry

相关问题