pub enum MaskResolution {
Proto,
Scaled {
width: u32,
height: u32,
},
}Expand description
Controls the resolution and coordinate frame of masks produced by
ImageProcessor::materialize_masks.
Protoreturns per-detection tiles at proto-plane resolution (e.g. 48×32 u8 for a typical COCO bbox on a 160×160 proto plane). This is the historical behavior ofmaterialize_masksand the fastest path because no upsample runs inside HAL. Mask values are continuous sigmoid output quantized touint8 [0, 255].Scaledreturns per-detection tiles at caller-specified pixel resolution by upsampling the full proto plane once and cropping by bbox after sigmoid. The upsample uses bilinear interpolation with edge-clamp sampling — semantically equivalent to Ultralytics’process_masks_retinareference. When aletterboxis also passed tomaterialize_masks, the inverse letterbox transform is applied during the upsample so mask pixels land in original-content coordinates (drop-in for overlay on the original image). Mask values are binaryuint8 {0, 255}after thresholding sigmoid > 0.5 — interchangeable withProtooutput via the same> 127test.
Variants§
Proto
Per-detection tile at proto-plane resolution (default).
Scaled
Per-detection tile at (width, height) pixel resolution in the
coordinate frame determined by the letterbox parameter of
ImageProcessor::materialize_masks.
Trait Implementations§
Source§impl Clone for MaskResolution
impl Clone for MaskResolution
impl Copy for MaskResolution
Source§impl Debug for MaskResolution
impl Debug for MaskResolution
Source§impl Default for MaskResolution
impl Default for MaskResolution
impl Eq for MaskResolution
Source§impl PartialEq for MaskResolution
impl PartialEq for MaskResolution
impl StructuralPartialEq for MaskResolution
Auto Trait Implementations§
impl Freeze for MaskResolution
impl RefUnwindSafe for MaskResolution
impl Send for MaskResolution
impl Sync for MaskResolution
impl Unpin for MaskResolution
impl UnsafeUnpin for MaskResolution
impl UnwindSafe for MaskResolution
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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