转换数组从一个形状到另一个?



我有一个视频即图像序列保存在数组中。输出为:

Output:
(13,9,9)

其中13表示13个图像序列,两个9表示像素。我希望将数组转换为如下输出:

Output:
(81,13)

其中81表示81个像素实例,13表示捕获时域即实时视频帧。然后我将把这段视频传送到我的CNN。

有人有什么建议吗?因为使用array.reshape(81,13)当然不起作用。

假设x是原始的视频3D数组,您需要将其转换为所需的2D数组:

import numpy as np
x2d = x.transpose(1, 2, 0).reshape(-1, x.shape[0])

x2d = x.reshape(x.shape[0], -1).T

从本质上讲,这个概念是重塑或转置数组,使你想要在一行中的元素最终应该在连续的内存位置。

相关内容