pub struct RDPosition {
pub theta_s2: f64,
pub theta_ba: f64,
pub bpp: f64,
pub ssimulacra2: f64,
pub butteraugli: f64,
}Expand description
An encode’s position in the fixed-frame corner coordinate system.
Both angles are measured from the worst corner (max bpp, zero quality). Higher angle = better (closer to the ideal of zero-cost perfect quality).
Comparing the two angles reveals artifact character:
theta_s2 ≈ theta_ba→ uniform quality tradeofftheta_s2 > theta_ba→ better structural fidelity than local contrasttheta_s2 < theta_ba→ better local contrast than structural fidelity
Fields§
§theta_s2: f64Corner angle in SSIMULACRA2 space (degrees, 0–90).
theta_ba: f64Corner angle in Butteraugli space (degrees, 0–90).
bpp: f64Raw bits per pixel.
ssimulacra2: f64Raw SSIMULACRA2 score (0–100, higher is better).
butteraugli: f64Raw Butteraugli distance (0+, lower is better).
Implementations§
Source§impl RDPosition
impl RDPosition
Sourcepub fn in_disagreement_zone(&self, cal: &RDCalibration) -> bool
pub fn in_disagreement_zone(&self, cal: &RDCalibration) -> bool
In the disagreement zone between the two knees.
Sourcepub fn dual_bin(&self, scheme: &BinScheme) -> DualAngleBin
pub fn dual_bin(&self, scheme: &BinScheme) -> DualAngleBin
Dual-metric bin.
Trait Implementations§
Source§impl Clone for RDPosition
impl Clone for RDPosition
Source§fn clone(&self) -> RDPosition
fn clone(&self) -> RDPosition
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RDPosition
impl Debug for RDPosition
Source§impl<'de> Deserialize<'de> for RDPosition
impl<'de> Deserialize<'de> for RDPosition
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for RDPosition
impl Serialize for RDPosition
impl Copy for RDPosition
Auto Trait Implementations§
impl Freeze for RDPosition
impl RefUnwindSafe for RDPosition
impl Send for RDPosition
impl Sync for RDPosition
impl Unpin for RDPosition
impl UnwindSafe for RDPosition
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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