mindspore.dataset.vision.HWC2CHW

class mindspore.dataset.vision.HWC2CHW[源代码]

将输入图像的shape从 <H, W, C> 转换为 <C, H, W>。 如果输入图像的shape为 <H, W> ,图像将保持不变。

说明

此操作默认通过 CPU 执行,也支持异构加速到 GPU 或 Ascend 上执行。

异常:
  • RuntimeError - 如果输入图像的shape不是 <H, W> 或 <H, W, C>。

支持平台:

CPU GPU Ascend

样例:

>>> import numpy as np
>>> import mindspore.dataset as ds
>>> import mindspore.dataset.vision as vision
>>>
>>> # Use the transform in dataset pipeline mode
>>> data = np.random.randint(0, 255, size=(1, 100, 100, 3)).astype(np.uint8)
>>> numpy_slices_dataset = ds.NumpySlicesDataset(data, ["image"])
>>> transforms_list = [vision.RandomHorizontalFlip(0.75),
...                    vision.RandomCrop(64),
...                    vision.HWC2CHW()]
>>> numpy_slices_dataset = numpy_slices_dataset.map(operations=transforms_list, input_columns=["image"])
>>> for item in numpy_slices_dataset.create_dict_iterator(num_epochs=1, output_numpy=True):
...     print(item["image"].shape, item["image"].dtype)
...     break
(3, 64, 64) uint8
>>>
>>> # Use the transform in eager mode
>>> data = np.array([[0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5]], dtype=np.uint8).reshape((2, 2, 3))
>>> output = vision.HWC2CHW()(data)
>>> print(output.shape, output.dtype)
(3, 2, 2) uint8
教程样例: