I use the transpose function in python as data.transpose(3, 0, 1, 2)
这是错误的,因为此操作需要4个维度,而您只提供3个维度(如(10,10,10))。可复制为:
>>> a = np.arange(60).reshape((1,4,5,3))
>>> b = a.transpose((2,0,1))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: axes don't match array
看看numpy.transpose
例如
操作从(
samples
、rows
、columns
、channels
)转换为(samples
、channels
、rows
、cols
),可能是opencv到pytorch让我用Python3来讨论
这是错误的,因为此操作需要4个维度,而您只提供3个维度(如
(10,10,10)
)。可复制为:如果图像批次为1,则可以通过将(10,10,10)重塑为(1,10,10,10)来添加另一个维度。这可以通过以下方式实现:
对于2D numpy数组,数组(矩阵)的
transpose
操作与名称所述的一样。但是对于像您这样的高维数组,它基本上是作为moveaxis
工作的显然,这两种方法都是一样的
相关问题 更多 >
编程相关推荐