Skip to main content

ImageAugmentationOp

Enum ImageAugmentationOp 

Source
pub enum ImageAugmentationOp {
Show 14 variants HorizontalFlip { probability: f32, }, VerticalFlip { probability: f32, }, RandomRotate90 { probability: f32, }, BrightnessJitter { max_delta: f32, }, ContrastJitter { max_scale_delta: f32, }, GammaJitter { max_gamma_delta: f32, }, GaussianNoise { probability: f32, std_dev: f32, }, BoxBlur3x3 { probability: f32, }, RandomResizedCrop { probability: f32, min_scale: f32, max_scale: f32, }, Cutout { probability: f32, max_height_fraction: f32, max_width_fraction: f32, fill_value: f32, }, ChannelNormalize { mean: Vec<f32>, std: Vec<f32>, }, Custom(Arc<dyn Fn(&Tensor) -> Result<Tensor, ModelError> + Send + Sync>), RandomCrop { height: usize, width: usize, }, GaussianBlur { kernel_size: usize, },
}
Expand description

Per-sample image augmentations for rank-4 NHWC training tensors.

Variants§

§

HorizontalFlip

Flip image across width axis with configured probability.

Fields

§probability: f32
§

VerticalFlip

Flip image across height axis with configured probability.

Fields

§probability: f32
§

RandomRotate90

Rotate sample by random multiples of 90 degrees with configured probability.

For square samples, rotation is sampled from {0, 90, 180, 270} degrees. For non-square samples, rotation is sampled from {0, 180} degrees to preserve shape.

Fields

§probability: f32
§

BrightnessJitter

Add random uniform brightness delta in [-max_delta, +max_delta] and clamp to [0, 1].

Fields

§max_delta: f32
§

ContrastJitter

Scale contrast around per-sample mean by factor in [1-max_scale_delta, 1+max_scale_delta].

Fields

§max_scale_delta: f32
§

GammaJitter

Apply gamma correction with gamma sampled in [1-max_gamma_delta, 1+max_gamma_delta].

Fields

§max_gamma_delta: f32
§

GaussianNoise

Add per-value Gaussian noise with configured standard deviation and clamp to [0, 1].

Fields

§probability: f32
§std_dev: f32
§

BoxBlur3x3

Apply 3x3 box blur with configured probability.

Fields

§probability: f32
§

RandomResizedCrop

Crop a random window and resize it back to original sample size.

Fields

§probability: f32
§min_scale: f32
§max_scale: f32
§

Cutout

Apply random rectangular erasing with configured max size fractions and fill value.

Fields

§probability: f32
§max_height_fraction: f32
§max_width_fraction: f32
§fill_value: f32
§

ChannelNormalize

Per-channel normalization in HWC layout: (x - mean[c]) / std[c].

Fields

§mean: Vec<f32>
§std: Vec<f32>
§

Custom(Arc<dyn Fn(&Tensor) -> Result<Tensor, ModelError> + Send + Sync>)

User-provided closure for custom augmentation logic.

§

RandomCrop

Random crop from larger image (does not resize back; changes spatial dims).

Fields

§height: usize
§width: usize
§

GaussianBlur

Apply gaussian blur with the given square kernel size (must be odd and >= 1).

Fields

§kernel_size: usize

Implementations§

Source§

impl ImageAugmentationOp

Source

pub fn from_transform<T: Transform + Send + Sync + 'static>(t: T) -> Self

Create an augmentation op from any Transform implementation.

Trait Implementations§

Source§

impl Clone for ImageAugmentationOp

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ImageAugmentationOp

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ImageAugmentationOp

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.