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.NEAREST
和InterpolationMode.BILINEAR
。相应的 Pillow 整数常量(例如PIL.Image.BILINEAR
)也可以接受。fill (序列 或 数字) – 变换图像外部区域的像素填充值。默认为
0
。如果给定一个数字,则该值将分别用于所有波段。center (序列, 可选) – 旋转的可选中心,(x, y)。原点是左上角。默认为图像的中心。
使用
RandomAffine
的示例变换图示