带有 Pillow 的 getcolors 尺寸的 numpy 数组

numpy array with Pillow's getcolors' dimensions

非常不言自明。 Pillow 的 getcolors() 方法 returns 元组列表,每个元组具有 (1,3) 形状(即 (count, (r, g, b)) )。除非有更好的方法来处理这个问题,否则我如何创建一个 [n, [1, 3]] 形状的 numpy 数组?

您应该使用 n x 4numpy 数组。第一个轴允许您在 getcolors 方法的不同结果之间进行选择。第二个轴包含您的数据。您可以在第一个条目中存储 count 值,然后是 rgb 值。然后你可以这样做:

result = np.empty(number, 4)
#get one entry
count, r, g, b = result[n]

您应该始终牢记,您实际上正在尝试做的事情:您要存储的数据包含 4 个不同的整数,因此它是 4 维的。并且您期望 n 这种类型的不同数据点。因此,您的数组必须具有 n x 4.

的形状

PS:你对形状维度的定义很奇怪;这会给你带来很多麻烦。我建议使用形状的默认定义,并将它们视为多维数组的轴。