2016-10-03 164 views
0

设Y为100个规则的列表,使得Y [i]是图像的图像,其形状是160x320x3。将多维数组列表转换为单个多维数组?

我想X无是包含所有图像的ndarrays,我做如下:

x = [ y[i] for i in range(0,10) ] 

,但它产生的100个160X320X3 ndarrays列表。我如何修改它以获得形状为100x160x320x3的ndarray?

+1

我假设你正在使用'numpy',所以我可以添加标签? –

+0

是的。谢谢。 –

回答

2

Y(即np.array(Y))上调用np.array应该将ndarray列表变成一个ndarray,其中第一个轴的大小对应于列表的长度。

演示

>>> x = np.array([[1,2], [3,4]]) 
>>> c = [x,x] # list of 2x2 arrays 
>>> c 
[array([[1, 2], 
     [3, 4]]), 
array([[1, 2], 
     [3, 4]])] 
>>> np.array(c) # 2x2x2 array 
array([[[1, 2], 
     [3, 4]], 

     [[1, 2], 
     [3, 4]]]) 

只需拨打np.arrayY,或x如果你只想要Y片。