快捷方式

ScaleJitter

class torchvision.transforms.v2.ScaleJitter(target_size: tuple[int, int], scale_range: tuple[float, float] = (0.1, 2.0), interpolation: Union[InterpolationMode, int] = InterpolationMode.BILINEAR, antialias: Optional[bool] = True)[源]

根据 “Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation” 对输入执行大尺度抖动(Large Scale Jitter)。

如果输入是 torch.TensorTVTensor(例如 ImageVideoBoundingBoxes 等),它可以具有任意数量的前导批次维度。例如,图像可以具有 [..., C, H, W] 的形状。边界框可以具有 [..., 4] 的形状。

参数:
  • target_size (python:int 的元组) – 目标尺寸。此参数定义抖动的基础比例,例如 min(target_size[0] / width, target_size[1] / height)

  • scale_range (python:float 的元组, 可选) – 缩放范围的最小值和最大值。默认为 (0.1, 2.0)

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

  • antialias (bool, 可选) –

    是否应用抗锯齿。它仅影响具有双线性或双三次模式的张量,否则将被忽略:在 PIL 图像上,抗锯齿始终应用于双线性或双三次模式;在其他模式(对于 PIL 图像和张量)下,抗锯齿没有意义,此参数将被忽略。可能的值为

    • True (默认):将对双线性或双三次模式应用抗锯齿。其他模式不受影响。这可能是您想要使用的。

    • False:将不对任何模式下的张量应用抗锯齿。PIL 图像在双线性或双三次模式下仍然进行抗锯齿处理,因为 PIL 不支持无抗锯齿。

    • None:对于张量等同于 False,对于 PIL 图像等同于 True。此值是出于历史原因而存在的,除非您真正知道自己在做什么,否则可能不希望使用它。

    默认值在 v0.17 中从 None 更改为 True,以使 PIL 和 Tensor 后端保持一致。

make_params(flat_inputs: list[Any]) dict[str, Any][源]

用于覆盖自定义变换的方法。

请参阅 如何编写自己的 v2 变换

transform(inpt: Any, params: dict[str, Any]) Any[源]

用于覆盖自定义变换的方法。

请参阅 如何编写自己的 v2 变换

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源