affine¶
- torchvision.transforms.functional.affine(img: Tensor, angle: float, translate: list[int], scale: float, shear: list[float], interpolation: InterpolationMode = InterpolationMode.NEAREST, fill: Optional[list[float]] = None, center: Optional[list[int]] = None) Tensor [源码]¶
在保持图像中心不变的情况下对图像应用仿射变换。如果图像是 torch Tensor,则假定其形状为 [..., H, W],其中 ... 表示任意数量的前导维度。
- 参数:
img (PIL Image 或 Tensor) – 要变换的图像。
angle (数字) – 旋转角度(以度为单位),范围在 -180 到 180 之间,顺时针方向。
translate (整数序列) – 水平和垂直平移(旋转后的平移)
scale (浮点数) – 整体缩放比例
shear (浮点数 或 序列) – 剪切角度(以度为单位),范围在 -180 到 180 之间,顺时针方向。如果指定了序列,第一个值对应于平行于 x 轴的剪切,第二个值对应于平行于 y 轴的剪切。
interpolation (InterpolationMode) – 由
torchvision.transforms.InterpolationMode
定义的所需插值枚举。默认为InterpolationMode.NEAREST
。如果输入是 Tensor,仅支持InterpolationMode.NEAREST
和InterpolationMode.BILINEAR
。也可以接受相应的 Pillow 整数常量,例如PIL.Image.BILINEAR
。fill (sequence 或 number, optional) –
变换后图像区域的像素填充值。如果提供数字,则该值将分别用于所有通道。
注意
在 torchscript 模式下,不支持单个 int/float 值,请使用长度为 1 的序列:
[value, ]
。center (序列, 可选) – 可选的旋转中心。原点是左上角。默认为图像中心。
- 返回:
转换后的图像。
- 返回类型:
PIL 图像或张量
使用
affine
的示例