numpy.dstack#

numpy.dstack(tup)[源码]#

按顺序按深度(沿第三轴)堆叠数组。

这等同于在将形状为 (M,N) 的 2-D 数组重塑为 (M,N,1),以及将形状为 (N,) 的 1-D 数组重塑为 (1,N,1) 后,沿着第三个轴进行连接。重构由 dsplit 分割的数组。

此函数对于维度最多为 3 的数组最有意义。例如,对于具有高度(第一个轴)、宽度(第二个轴)和 r/g/b 通道(第三个轴)的像素数据。函数 concatenatestackblock 提供了更通用的堆叠和连接操作。

参数:
tup数组序列

沿除第三个轴以外的所有轴,这些数组必须具有相同的形状。1-D 或 2-D 数组必须具有相同的形状。

返回:
stackedndarray

通过堆叠给定数组形成的数组,至少将是 3-D 的。

另请参阅

concatenate

沿现有轴连接数组序列。

stack

沿新轴连接数组序列。

block

从嵌套块列表中组装 ndarray。

vstack

按顺序垂直(逐行)堆叠数组。

hstack

按顺序水平(逐列)堆叠数组。

column_stack

将 1D 数组作为列堆叠到 2D 数组中。

dsplit

沿第三个轴分割数组。

示例

>>> import numpy as np
>>> a = np.array((1,2,3))
>>> b = np.array((4,5,6))
>>> np.dstack((a,b))
array([[[1, 4],
        [2, 5],
        [3, 6]]])
>>> a = np.array([[1],[2],[3]])
>>> b = np.array([[4],[5],[6]])
>>> np.dstack((a,b))
array([[[1, 4]],
       [[2, 5]],
       [[3, 6]]])