Функция torch.rot90 в PyTorch


Pytorch torch 参考手册Справочное руководство Pytorch torch

torch.rot90Это функция в PyTorch, используемая для поворота тензоров на 90 градусов.

Определение функции

torch.rot90(input, k=1, dims=[0, 1])

Описание параметров:

  • input- Входной тензор
  • k- Количество поворотов; положительное значение означает против часовой стрелки, отрицательное — по часовой стрелке (по умолчанию 1)
  • dims- Размерности плоскости для поворота (по умолчанию [0, 1])

Примеры использования

Пример

import torch

# Поворот 2D-тензора
x = torch.arange(12).reshape(3, 4)
print("Исходный тензор:")
print(x)

result = torch.rot90(x, 1)
print("Поворот против часовой стрелки на 90 градусов:")
print(result)

result = torch.rot90(x, -1)
print("nПоворот по часовой стрелке на 90 градусов:")
print(result)

result = torch.rot90(x, 2)
print("nПоворот на 180 градусов:")
print(result)

# Поворот вдоль указанной плоскости (3D-тензор)
y = torch.arange(24).reshape(2, 3, 4)
print("nФорма 3D-тензора:", y.shape)

result = torch.rot90(y, 1, dims=[1, 2])
print("Форма после поворота на 90 градусов вдоль плоскости [1, 2]:", result.shape)

Результат вывода:

原始张量:
tensor([[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11]])
逆时针旋转 90 度:
tensor([[ 3,  7, 11],
        [ 2,  6, 10],
        [ 1,  5,  9],
        [ 0,  4,  8]])

顺时针旋转 90 度:
tensor([[ 8,  4,  0],
        [ 9,  5,  1],
        [10,  6,  2],
        [11,  7,  3]])

旋转 180 度:
tensor([[11, 10,  9,  8],
        [ 7,  6,  5,  4],
        [ 3,  2,  1,  0]])

三维张量形状: torch.Size([2, 3, 4])
沿 [1, 2] 平面旋转 90 度后形状: torch.Size([2, 4, 3])

Pytorch torch 参考手册Справочное руководство Pytorch torch

Другие расширения