Enum image_canvas::color::Differencing
source · [−]#[non_exhaustive]
pub enum Differencing {
Bt407MPal,
Bt407MPalPrecise,
Bt601,
Bt601Quantized,
Bt601FullSwing,
Bt709,
Bt709Quantized,
Bt709FullSwing,
YDbDr,
Bt2020,
Bt2100,
YCoCg,
}
Expand description
The differencing scheme used in a Yuv construction.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Bt407MPal
Rec BT.470 M/PAL differencing scheme for E_U and E_V, the naming origin for ‘YUV’. FIXME: add YIQ proper, to add BT.470 M/NTSC?
Note this same differencing scheme is used with different color primaries and whitepoints. With those shared with BT601_625 and D65 in more modern systems and a different one under illuminant C.
Bt407MPalPrecise
The BT.470 M/PAL has a typo and, based on its parameters, we can derive a more accurate version than as what was published..
Bt601
Rec BT.601 luminance differencing.
Bt601Quantized
Rec BT.601 luminance differencing, quantized with headroom. This is intended for analog use, not for digital images.
Bt601FullSwing
Rec BT.601 luminance differencing, quantized without headroom.
Please tell the crate author where it’s used but this makes it easy to quantize to 8-bit unsigned integers.
Bt709
Rec BT.709 luminance differencing.
Bt709Quantized
Analog form
Bt709FullSwing
Rec BT.709 luminance differencing, quantized without headroom. Not technically an ITU BT recommendation, but introduced in h.264.
YDbDr
Factors from analog SECAM standard.
Bt2020
Rec BT.2020 luminance differencing.
Bt2100
Rec BT.2100 luminance differencing. Same coefficients as the BT2020 scheme.
YCoCg
Differencing scheme from YCoCb/ITU-T H.273.
Trait Implementations
sourceimpl Clone for Differencing
impl Clone for Differencing
sourcefn clone(&self) -> Differencing
fn clone(&self) -> Differencing
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for Differencing
impl Debug for Differencing
sourceimpl PartialEq<Differencing> for Differencing
impl PartialEq<Differencing> for Differencing
impl Copy for Differencing
impl Eq for Differencing
impl StructuralEq for Differencing
impl StructuralPartialEq for Differencing
Auto Trait Implementations
impl RefUnwindSafe for Differencing
impl Send for Differencing
impl Sync for Differencing
impl Unpin for Differencing
impl UnwindSafe for Differencing
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more