将数组从一种形状转换为另一种形状?
Converting an array from one shape to another?
我有一个视频,即保存在数组中的图像序列。输出为:
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
本质上,这个概念是以这样一种方式重塑或转置数组,即您想要的行中的元素最终应该位于连续的内存位置。
我有一个视频,即保存在数组中的图像序列。输出为:
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
本质上,这个概念是以这样一种方式重塑或转置数组,即您想要的行中的元素最终应该位于连续的内存位置。