mindspore.dataset.vision.Rotate
- class mindspore.dataset.vision.Rotate(degrees, resample=Inter.NEAREST, expand=False, center=None, fill_value=0)[source]
Rotate the input image by specified degrees.
- Parameters
resample (Inter, optional) – Image interpolation method defined by
Inter
. Default:Inter.NEAREST
.expand (bool, optional) – Optional expansion flag. Default:
False
. If set toTrue
, expand the output image to make it large enough to hold the entire rotated image. If set toFalse
or omitted, make the output image the same size as the input. Note that the expand flag assumes rotation around the center and no translation.center (tuple, optional) – Optional center of rotation (a 2-tuple). Default:
None
. Origin is the top left corner.None
sets to the center of the image.fill_value (Union[int, tuple[int]], optional) – Optional fill color for the area outside the rotated image. If it is a 3-tuple, it is used to fill R, G, B channels respectively. If it is an integer, it is used for all RGB channels. The fill_value values must be in range [0, 255]. Default:
0
.
- Raises
TypeError – If degrees is not of type integer, float or sequence.
TypeError – If expand is not of type bool.
TypeError – If center is not of type tuple.
TypeError – If fill_value is not of type int or tuple[int].
ValueError – If fill_value is not in range [0, 255].
RuntimeError – If given tensor shape is not <H, W> or <…, H, W, C>.
- Supported Platforms:
CPU
Examples
>>> import numpy as np >>> import mindspore.dataset as ds >>> import mindspore.dataset.vision as vision >>> from mindspore.dataset.vision import Inter >>> >>> # Use the transform in dataset pipeline mode >>> transforms_list = [vision.Rotate(degrees=30.0, resample=Inter.NEAREST, expand=True)] >>> data = np.random.randint(0, 255, size=(1, 100, 100, 3)).astype(np.uint8) >>> numpy_slices_dataset = ds.NumpySlicesDataset(data, ["image"]) >>> 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 (137, 137, 3) uint8 >>> >>> # Use the transform in eager mode >>> data = np.random.randint(0, 255, size=(100, 100, 3)).astype(np.uint8) >>> output = vision.Rotate(degrees=30.0, resample=Inter.NEAREST, expand=True)(data) >>> print(output.shape, output.dtype) (137, 137, 3) uint8
- Tutorial Examples: