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

NumPy 3D数组提取z轴切片得到非预期形状该如何解决

问题原因

  • 你使用的连续方括号[:][:][2]属于顺序链式索引,并非NumPy规定的多维度同步索引,实际执行逻辑如下:
    1. 第一步vol1[:]返回完整原数组,形状仍为(512,512,120)
    2. 第二步[:]再次返回完整原数组,形状无变化
    3. 第三步[2]对当前数组的第一个维度取索引为2的元素,最终得到的数组形状为(512,120),和你实际得到的结果一致。

修复方案

NumPy中针对多维度数组的切片/索引,需要用逗号分隔不同维度的索引规则,直接按如下写法即可:

zSlice = vol1[:, :, 2]

上述写法会直接对数组的第三个维度取索引为2的切片,得到的结果形状就是你预期的(512,512),无需额外调用squeeze()方法,因为该切片本身不存在长度为1的维度。

补充提示:你代码中的zSlice.shape()写法存在错误,shape是NumPy数组的属性而非可调用方法,直接写print(zSlice.shape)即可正确输出形状。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 16:48:00