快捷方式

RandomAffine

class torchvision.transforms.RandomAffine(degrees, translate=None, scale=None, shear=None, interpolation=InterpolationMode.NEAREST, fill=0, center=None)[source]

保持中心不变的图像随机仿射变换。如果图像是 torch 张量,则预期其形状为 […, H, W],其中 … 表示任意数量的前导维度。

参数:
  • degrees (序列数字) – 要从中选择的角度范围。如果 degrees 是一个数字而不是序列(如 (min, max)),则角度范围将为 (-degrees, +degrees)。设置为 0 以停用旋转。

  • translate (元组, 可选) – 水平和垂直平移的最大绝对分数的元组。例如 translate=(a, b),则水平位移在 -img_width * a < dx < img_width * a 范围内随机采样,垂直位移在 -img_height * b < dy < img_height * b 范围内随机采样。默认情况下不会平移。

  • scale (元组, 可选) – 缩放因子区间,例如 (a, b),则缩放因子在 a <= scale <= b 范围内随机采样。默认情况下将保持原始比例。

  • shear (序列数字, 可选) – 要从中选择的角度范围。如果 shear 是一个数字,则将应用一个在 (-shear, +shear) 范围内的平行于 x 轴的剪切。否则,如果 shear 是一个包含 2 个值的序列,则将应用一个在 (shear[0], shear[1]) 范围内的平行于 x 轴的剪切。否则,如果 shear 是一个包含 4 个值的序列,则将应用一个在 (shear[0], shear[1]) 范围内的 x 轴剪切和一个在 (shear[2], shear[3]) 范围内的 y 轴剪切。默认情况下不会应用剪切。

  • interpolation (InterpolationMode) – 由 torchvision.transforms.InterpolationMode 定义的所需插值枚举。默认为 InterpolationMode.NEAREST。如果输入是张量,则仅支持 InterpolationMode.NEARESTInterpolationMode.BILINEAR。相应的 Pillow 整数常量(例如 PIL.Image.BILINEAR)也可以接受。

  • fill (序列数字) – 变换图像外部区域的像素填充值。默认为 0。如果给定一个数字,则该值将分别用于所有波段。

  • center (序列, 可选) – 旋转的可选中心,(x, y)。原点是左上角。默认为图像的中心。

使用 RandomAffine 的示例

变换图示

变换图示
forward(img)[source]

img (PIL 图像或张量):要变换的图像。

返回值:

仿射变换后的图像。

返回类型:

PIL 图像或张量

static get_params(degrees: List[float], translate: Optional[List[float]], scale_ranges: Optional[List[float]], shears: Optional[List[float]], img_size: List[int]) Tuple[float, Tuple[int, int], float, Tuple[float, float]][source]

获取仿射变换的参数

返回值:

传递给仿射变换的参数

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源