为了账号安全,请及时绑定邮箱和手机立即绑定

展平平铺数组

展平平铺数组

牧羊人nacy 2023-12-20 19:48:27
我有一个形状为 (16, 32, 16, 16) 的平铺 numpy 数组,即每个平铺都是 16x16 像素,网格为 32 个平铺宽,16 个高。从这里我想将其重塑为 256 高 x 512 宽的 2D 图像,但我无法找到正确的分割、切片和重塑咒语来达到我想要的效果。
查看完整描述

1 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

您可以结合 numpy 的 reshape 和 transpose 来完成这项工作。我不完全确定三个“16”中的哪一个属于 32x16 重复网格,但假设它是第一个:


import numpy as np


data = np.random.random((16, 32, 16, 16))

# put number of repetitions next to respective dimension

transposed_data = np.transpose(data, (0, 2, 1, 3))

# concatenate repeated dimensions via reshape

reshaped_data = transposed_data.reshape((16 * 16, 32 * 16))

print(reshaped_data.shape)


查看完整回答
反对 回复 2023-12-20
  • 1 回答
  • 0 关注
  • 95 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信