mindspore.ops.ExtractVolumePatches
- class mindspore.ops.ExtractVolumePatches(kernel_size, strides, padding)[源代码]
从输入中提取数据,并将它放入”depth”输出维度中,”depth”为输出的第二维。
警告
这是一个实验性API,后续可能修改或删除。
- 参数:
kernel_size (Union[int, tuple[int], list[int]]) - 长度为3或5的int列表。输入每个维度表示滑动窗口大小。必须是:
或 。如果 ,则可以输入整数。strides (Union[int, tuple[int], list[int]]) - 长度为3或5的int列表。 两个连续色块的中心在输入中的距离。必须是:
或 。如果 ,则可以输入整数。padding (str) - 要使用的填充算法的类型。可选值有”SAME”和”VALID”。
- 输入:
input_x (Tensor) - 一个五维的输入Tensor。数据类型必须为float16、float32,shape为
。
- 输出:
Tensor,与输入的类型相同。如果填充为”VALID”,则shape为
;如果填充”SAME”,则shape为 。- 异常:
TypeError - 如果 kernel_size 或 strides 不是一个list,tuple或int。
TypeError - 如果 input_x 不是Tensor。
TypeError - 如果 padding 不是str。
ValueError - 如果 kernel_size 的长度不是3或5,并且 kernel_size 不是int。
ValueError - 如果 strides 的长度不是3或5,并且 strides 不是int。
ValueError - 如果 padding 既不是”VALID”也不是”SAME”。
ValueError - 如果 kernel_size 或 strides 的元素不是正整数。
ValueError - 如果 input_x 不是五维的Tensor。
ValueError - 如果 input_x 的shape含有0。
ValueError - 如果 kernel_size 或 strides 的前两个数不等于1。
ValueError - 如果 padding 为”VALID”,并且
在d、h或w维上小于0。ValueError - 如果 padding 为”SAME”,并且
在d、h或w维中小于0。ValueError - 如果x_h不等于1或x_w不等于1,并且
小于0。ValueError - 如果
大于2048。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> kernel_size = (1, 1, 2, 2, 2) >>> strides = (1, 1, 1, 1, 1) >>> padding = "VALID" >>> input_x = ops.Reshape()(Tensor(np.arange(1, 28), mstype.float16), (1, 1, 3, 3, 3)) >>> output_y = ops.ExtractVolumePatches(kernel_size, strides, padding)(input_x) >>> print(output_y.shape) (1, 8, 2, 2, 2)