pub struct Model {Show 18 fields
pub h: usize,
pub w: usize,
pub sizes: Vec<(usize, usize)>,
pub hyper: Vec<bool>,
pub ctx: Vec<(i32, i32)>,
pub nifce: usize,
pub ifce_of: Vec<Option<usize>>,
pub arm: Mlp,
pub ifces: Vec<Mlp>,
pub tconv: Vec<Filt>,
pub pconv: Vec<Filt>,
pub syn: Vec<Conv>,
pub stab: Option<Conv>,
pub outt: Conv,
pub slope: usize,
pub lanes: usize,
pub tile_w: usize,
pub tile_h: usize,
}Expand description
Everything the decoder needs except the latent payload.
Fields§
§h: usizeImage height, width.
w: usizeWidth.
sizes: Vec<(usize, usize)>Grid sizes (h, w), finest first.
hyper: Vec<bool>Hyperlatent grids (not fed to the synthesis).
ctx: Vec<(i32, i32)>Context template: (dy, dx) offsets (dy ≤ 0).
nifce: usizeIFCE output features (appended to the ARM input).
ifce_of: Vec<Option<usize>>Per grid: index into ifces, or None (zero inter-feature context).
arm: MlpEntropy model.
ifces: Vec<Mlp>Inter-feature context extractors.
tconv: Vec<Filt>Upsampling (transposed, even) filters.
pconv: Vec<Filt>Pre-concatenation (odd, residual) filters.
syn: Vec<Conv>Synthesis main branch.
stab: Option<Conv>Synthesis stabiliser (1×1 over the input).
outt: ConvOutput transform (1×1).
slope: usizeWavefront slope.
lanes: usizerANS lanes per tile.
tile_w: usizeTile width (0 = whole grid).
tile_h: usizeTile height (0 = whole grid).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Model
impl RefUnwindSafe for Model
impl Send for Model
impl Sync for Model
impl Unpin for Model
impl UnsafeUnpin for Model
impl UnwindSafe for Model
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