pub struct MaeConfig {
pub img_size: usize,
pub patch_size: usize,
pub in_channels: usize,
pub encoder_dim: usize,
pub encoder_depth: usize,
pub encoder_heads: usize,
pub decoder_dim: usize,
pub decoder_depth: usize,
pub decoder_heads: usize,
pub mlp_ratio: usize,
pub mask_ratio: f32,
}Expand description
Configuration for an MAE (Masked Autoencoder) model.
Fields§
§img_size: usizeSquare spatial resolution of the input image (H = W).
patch_size: usizePatch size (must divide img_size).
in_channels: usizeNumber of input channels (e.g. 3 for RGB).
encoder_dim: usizeEncoder embedding dimension.
encoder_depth: usizeNumber of encoder transformer blocks.
encoder_heads: usizeNumber of encoder attention heads.
decoder_dim: usizeDecoder embedding dimension (usually smaller than encoder_dim).
decoder_depth: usizeNumber of decoder transformer blocks.
decoder_heads: usizeNumber of decoder attention heads.
mlp_ratio: usizeMLP hidden-dim multiplier (shared by encoder + decoder blocks).
mask_ratio: f32Fraction of patches to mask, in [0, 1] (e.g. 0.75).
Implementations§
Source§impl MaeConfig
impl MaeConfig
Sourcepub fn new(
img_size: usize,
patch_size: usize,
in_channels: usize,
encoder_dim: usize,
encoder_depth: usize,
encoder_heads: usize,
decoder_dim: usize,
decoder_depth: usize,
decoder_heads: usize,
mlp_ratio: usize,
mask_ratio: f32,
) -> VisionResult<Self>
pub fn new( img_size: usize, patch_size: usize, in_channels: usize, encoder_dim: usize, encoder_depth: usize, encoder_heads: usize, decoder_dim: usize, decoder_depth: usize, decoder_heads: usize, mlp_ratio: usize, mask_ratio: f32, ) -> VisionResult<Self>
Build and validate a new MaeConfig.
§Errors
img_size % patch_size != 0→InvalidPatchSize- any zero-sized dimension →
InvalidEmbedDim/EmptyInput mask_ratiooutside[0, 1]→Internalencoder_dim % encoder_heads != 0ordecoder_dim % decoder_heads != 0→HeadDimMismatch
Sourcepub fn patch_pixels(&self) -> usize
pub fn patch_pixels(&self) -> usize
Per-patch flat pixel count (patch_size² · in_channels).
Trait Implementations§
impl StructuralPartialEq for MaeConfig
Auto Trait Implementations§
impl Freeze for MaeConfig
impl RefUnwindSafe for MaeConfig
impl Send for MaeConfig
impl Sync for MaeConfig
impl Unpin for MaeConfig
impl UnsafeUnpin for MaeConfig
impl UnwindSafe for MaeConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more