快捷方式

RandomCrop

class torchvision.transforms.v2.RandomCrop(size: Union[int, Sequence[int]], padding: Optional[Union[int, Sequence[int]]] = None, pad_if_needed: bool = False, fill: Union[int, float, Sequence[int], Sequence[float], None, Dict[Union[Type, str], Optional[Union[int, float, Sequence[int], Sequence[float]]]]] = 0, padding_mode: Literal['constant', 'edge', 'reflect', 'symmetric'] = 'constant')[source]

在隨機位置裁剪輸入。

如果輸入是 torch.TensorTVTensor (例如 ImageVideoBoundingBoxes 等),它可以具有任意數量的領先批次維度。例如,影像可以具有 [..., C, H, W] 的形狀。邊界框可以具有 [..., 4] 的形狀。

引數:
  • size (sequenceint) – 期望的裁剪輸出大小。如果 size 是一個 int 而不是像 (h, w) 這樣的序列,則會進行方形裁剪 (size, size)。如果提供長度為 1 的序列,則將其解釋為 (size[0], size[0])。

  • padding (intsequence, 可選) –

    影像每個邊界的可選填充。預設為 None。如果提供單個 int,則用於填充所有邊界。如果提供長度為 2 的序列,則分別用於左/右和上/下填充。如果提供長度為 4 的序列,則分別用於左、上、右和下邊界填充。

    注意

    在 torchscript 模式下不支援將 padding 作為單個 int 使用,請使用長度為 1 的序列:[padding, ]

  • pad_if_needed (boolean, 可選) – 如果影像小於所需大小,則會填充影像以避免引發異常。由於填充在裁剪之後進行,因此填充看起來是在隨機偏移處完成的。

  • fill (numbertupledict, 可選) – 當 padding_mode 為 constant 時使用的畫素填充值。預設為 0。如果是一個長度為 3 的元組,則分別用於填充 R、G、B 通道。填充值也可以是將資料型別對映到填充值的字典,例如 fill={tv_tensors.Image: 127, tv_tensors.Mask: 0},其中 Image 將填充 127,Mask 將填充 0。

  • padding_mode (str, 可選) –

    填充型別。應為:constant, edge, reflect 或 symmetric。預設為 constant。

    • constant:用一個常數值填充,該值由 fill 指定

    • edge:用影像邊緣的最後一個值填充。

    • reflect:用影像的反射填充,不重複邊緣的最後一個值。例如,在 reflect 模式下,對 [1, 2, 3, 4] 兩側填充 2 個元素將得到 [3, 2, 1, 2, 3, 4, 3, 2]

    • symmetric:用影像的反射填充,重複邊緣的最後一個值。例如,在 symmetric 模式下,對 [1, 2, 3, 4] 兩側填充 2 個元素將得到 [2, 1, 1, 2, 3, 4, 4, 3]

使用 RandomCrop 的示例

Transforms v2 入門

Transforms v2 入門

Transforms 插圖

Transforms 插圖
static get_params(img: Tensor, output_size: Tuple[int, int]) Tuple[int, int, int, int][source]

獲取用於隨機裁剪的 crop 函式的引數。

引數:
  • img (PIL ImageTensor) – 要裁剪的影像。

  • output_size (tuple) – 期望的裁剪輸出大小。

返回:

要傳遞給 crop 函式進行隨機裁剪的引數 (i, j, h, w)。

返回型別:

tuple

make_params(flat_inputs: List[Any]) Dict[str, Any][source]

用於自定義 transforms 的方法。

參見 如何編寫自己的 v2 transforms

transform(inpt: Any, params: Dict[str, Any]) Any[source]

用於自定義 transforms 的方法。

參見 如何編寫自己的 v2 transforms

文件

訪問 PyTorch 的全面開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲取問題的解答

檢視資源