如何合并 Numpy 数组的最后两个维度

How to combine the last 2 dimensions of Numpy Array

我已经看过了

并尝试过,但是当我尝试时

imgs.reshape(img.shape[:-2]+(-1))

我认为这是合乎逻辑的扩展,我得到一个错误:

can only concatenate tuple (not "int") to tuple

我打算对链接问题中接受的答案发表评论,并直接向他们寻求帮助,而不是为此创建一个新线程,但我没有评论所需的声誉。

编辑: 例如,我有一个形状为 (x,y,8,8) 的输入数组,其中 x 和 y 可以根据输入函数的图像而改变。我想把它做成一个形状为 (x,y,64) 的数组。在这种情况下,64 永远不会改变。

您必须添加逗号才能将其识别为元组。尝试

imgs.reshape(img.shape[:-2] + (-1,))

或者,使用解包:

imgs.reshape((*img.shape[:-2], -1))