You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何填充3D NumPy数组:将(2,128,128)转为(2,162,162)

3D数组补零填充实现方案

针对你形状为(2, 128, 128)的3D NumPy数组,要填充到(2, 162, 162),可以直接基于tf.pad扩展实现,步骤如下:

计算填充量

  • 第一个维度(对应原数组的2):目标尺寸和原尺寸一致,无需填充,前后填充量为[0, 0]
  • 第二、第三个维度(对应原数组的128):目标尺寸162与原尺寸128的差值为34,将差值均分在前后两侧,即每个维度前后各填充17,填充量为[17, 17]

完整代码示例

import numpy as np
import tensorflow as tf

# 模拟你的3D NumPy数组
np_input = np.random.rand(2, 128, 128)
# 转成TensorFlow张量
input_tensor = tf.convert_to_tensor(np_input)

# 定义3D数组的填充规则:每个维度对应[前填充量, 后填充量]
padding = tf.constant([[0, 0], [17, 17], [17, 17]])

# 执行补零填充
padded_tensor = tf.pad(input_tensor, padding, mode='CONSTANT')

# 验证形状
print("原数组形状:", input_tensor.shape)
print("填充后形状:", padded_tensor.shape)

代码说明

  • padding参数是一个3行2列的张量,每一行对应原数组的一个维度,分别指定该维度前面和后面需要填充的零的数量
  • mode='CONSTANT'指定填充值为常数(默认就是0,无需额外指定填充值)

内容的提问来源于stack exchange,提问作者user19686684

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 06:18:24