Python 用NumPy旋转5D立方体

Python 用NumPy旋转5D立方体,python,arrays,numpy,Python,Arrays,Numpy,我得到了两个5D立方体,形状为[1,4,21302302302],需要相互比较。但是,第一个相对于第二个旋转。 如果我只处理这两个图像,我可以通过将np.rot90(np.flipud(a))应用到左侧图像来修复它,其中一个是302x302图像。 如何在不更改其他轴的情况下将其应用于整个立方体 像您所描述的那样旋转图像只不过是对x轴和y轴进行变换/交换。对于二维阵列中的单个图像,只需执行以下操作 img.T 对于像你这样的5D张量,图像包含在最后两个轴中,你可以这样做 img.transpos

我得到了两个5D立方体,形状为
[1,4,21302302302]
,需要相互比较。但是,第一个相对于第二个旋转。 如果我只处理这两个图像,我可以通过将
np.rot90(np.flipud(a))
应用到左侧图像来修复它,其中一个是
302x302
图像。 如何在不更改其他轴的情况下将其应用于整个立方体


像您所描述的那样旋转图像只不过是对x轴和y轴进行变换/交换。对于二维阵列中的单个图像,只需执行以下操作

img.T
对于像你这样的5D张量,图像包含在最后两个轴中,你可以这样做

img.transpose(0, 1, 2, 4, 3)

一些代码片段可能有助于引起更多的注意:)
flipud
只做
arr[::-1,…]
。您可以将该翻转应用于任何其他轴
rot90
采用
参数。