快捷方式

RandomAffine

class torchvision.transforms.v2.RandomAffine(degrees: Union[Number, Sequence], translate: Optional[Sequence[float]] = None, scale: Optional[Sequence[float]] = None, shear: Optional[Union[int, float, Sequence[float]]] = None, interpolation: Union[InterpolationMode, int] = InterpolationMode.NEAREST, fill: Union[int, float, Sequence[int], Sequence[float], None, Dict[Union[Type, str], Optional[Union[int, float, Sequence[int], Sequence[float]]]]] = 0, center: Optional[List[float]] = None)[source]

對輸入進行隨機仿射變換,保持中心不變。

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

引數:
  • degrees (sequencenumber) – 選擇角度的範圍。如果 degrees 是一個數字而不是像 (min, max) 這樣的序列,則角度範圍將是 (-degrees, +degrees)。設定為 0 可停用旋轉。

  • translate (tuple, optional) – 水平和平移的最大絕對比例元組。例如 translate=(a, b),則水平偏移在 -img_width * a < dx < img_width * a 範圍內隨機取樣,垂直偏移在 -img_height * b < dy < img_height * b 範圍內隨機取樣。預設情況下不進行平移。

  • scale (tuple, optional) – 縮放因子區間,例如 (a, b),則 scale 在 a <= scale <= b 範圍內隨機取樣。預設情況下保持原始比例。

  • shear (sequencenumber, optional) – 選擇剪下角度的範圍。如果 shear 是一個數字,將應用 x 軸平行剪下,範圍為 (-shear, +shear)。如果 shear 是一個包含 2 個值的序列,將應用 x 軸平行剪下,範圍為 (shear[0], shear[1])。如果 shear 是一個包含 4 個值的序列,將應用 x 軸剪下,範圍為 (shear[0], shear[1]),以及 y 軸剪下,範圍為 (shear[2], shear[3])。預設情況下不應用剪下。

  • interpolation (InterpolationMode, optional) – 由 torchvision.transforms.InterpolationMode 定義的所需的插值列舉。預設值為 InterpolationMode.NEAREST。如果輸入是 Tensor,僅支援 InterpolationMode.NEARESTInterpolationMode.BILINEAR。也接受相應的 Pillow 整型常量,例如 PIL.Image.BILINEAR

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

  • center (sequence, optional) – 可選的旋轉中心,(x, y)。原點是左上角。預設是影像中心。

使用 RandomAffine 的示例

變換圖示

變換圖示
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]

獲取仿射變換引數

返回:

要傳遞給仿射變換的引數

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

為自定義變換而重寫的方法。

參見 如何編寫自己的 v2 變換

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

為自定義變換而重寫的方法。

參見 如何編寫自己的 v2 變換

文件

查閱 PyTorch 的全面開發者文件

檢視文件

教程

獲取適合初學者和高階開發者的深度教程

檢視教程

資源

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

檢視資源