Affine#
- class deepinv.transform.projective.Affine(n_trans: int = 1, theta_max: float = 180.0, theta_z_max: float = 180.0, zoom_factor_min: float = 0.5, shift_max: float = 1.0, skew_max: float = 50.0, x_stretch_factor_min: float = 0.5, y_stretch_factor_min: float = 0.5, padding: str = 'reflection', interpolation: str = 'bilinear', device: str = 'cpu')[source]#
Bases:
Homography
Random affine image transformations using projective transformation framework.
Special case of homography which corresponds to the actions of the affine subgroup Aff(3). Affine transformations include translations, rotations, reflections, skews, and stretches. These transformations are parametrised using geometric parameters in the pinhole camera model. See
deepinv.transform.Homography
for more details.Generates
n_trans
random transformations concatenated along the batch dimension.
- Example:
Apply a random affine transformation:
>>> from deepinv.transform.projective import Affine >>> x = torch.randn(1, 3, 16, 16) # Random 16x16 image >>> transform = Affine(n_trans = 1) >>> x_T = transform(x)
- Parameters:
theta_z_max (float) – Maximum 2D z-rotation angle in degrees, defaults to 180.
zoom_factor_min (float) – Minimum zoom factor (up to 1), defaults to 0.5.
shift_max (float) – Maximum shift percentage, where 1 is full shift, defaults to 1.
skew_max (float) – Maximum skew parameter, defaults to 50.
x_stretch_factor_min (float) – Min stretch factor along the x-axis (up to 1), defaults to 0.5.
y_stretch_factor_min (float) – Min stretch factor along the y-axis (up to 1), defaults to 0.5.
padding (str) – kornia padding mode, defaults to “reflection”
interpolation (str) – kornia or PIL interpolation mode, defaults to “bilinear”
device (str) – torch device, defaults to “cpu”.
n_trans – number of transformed versions generated per input image, defaults to 1.
rng (torch.Generator) – random number generator, if None, use torch.Generator(), defaults to None
Examples using Affine
:#
Image transforms for equivariance & augmentations
Image transformations for Equivariant Imaging