【发布时间】:2019-07-08 04:04:31
【问题描述】:
我可以通过将 3 个 np.zeros([1,1,1]) 堆叠在一起来生成全黑像素
但为什么不这样呢?
import numpy as np
import cv2
m = np.zeros([8,32,1])
k = 0
for i in range(m.shape[0]):
for j in range(m.shape[1]):
for z in range(m.shape[2]):
m[i,j,z] = k
k+=1
a = np.stack(m,m,m)
cv2.imwrite('rgb.png',a)
错误
axis = normalize_axis_index(axis, result_ndim)
TypeError: only size-1 arrays can be converted to Python scalars
【问题讨论】:
-
你到底想做什么堆叠 3D 数组:
a=np.stack(m,m,m)? -
另外,语法是
np.stack((m,m,m), axis=-1) -
我想将每种颜色生成为一个像素
-
这是您的总体目标,而不是具体的命令。使用这段代码,您将生成不同的灰度级别。
-
@QuangHoang 没有堆叠 [8,32,1] 3 次会变成 [8,32,3]?通过合并这些灰度,我将得到 RGB 颜色