我有一个形状为 (480, 640, 3)
的矩阵 A
,我想使用这些值来填充另一个矩阵 B
code>,形状为 (3, 480, 640)
。我已经尝试过 numpy.reshape(A, B.shape),但我认为这不起作用。
对于某些上下文,480 和 640 尺寸是图像的帧高度和宽度,3 尺寸用于颜色 (RGB) 值。
(我正在寻找一种有效的方法来做到这一点,而不是一堆嵌套的 for 循环。)
最佳答案
我认为您想要交换或滚动轴。让我们从 3 维数组开始:
>>> mat = np.arange(24).reshape(2, 4, 3)
>>> mat.shape
(2, 4, 3)
现在,让我们用交换轴重新排序轴:
>>> mat.swapaxes(0, 2).swapaxes(1, 2).shape
(3, 2, 4)
或者,让我们滚动轴:
>>> rolled = np.rollaxis(mat, 2)
>>> rolled.shape
(3, 2, 4)
关于python - 如何移动 numpy 矩阵的一维?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38909243/