#[non_exhaustive]pub enum MotionEstimation {
Auto,
Direct,
Chained {
refine_radius: u32,
},
}Expand description
How motion toward a temporal neighbour is estimated.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Auto
Picks Direct or Chained from the temporal radius when the
denoiser is built.
MotionEstimation::resolve describes the rule and where it
came from.
Direct
Matches every neighbour against the centre frame directly, at the configured search radius.
The cost grows with the temporal radius, because each neighbour repeats the whole coarse and fine search.
Chained
Measures motion only between adjacent frames, once per pushed frame.
Those per-step vectors are then joined into a seed for each neighbour, and a small seeded search cleans up whatever drift is left.
Implementations§
Source§impl MotionEstimation
impl MotionEstimation
Sourcepub fn chained_default() -> Self
pub fn chained_default() -> Self
Builds a Chained estimation with the library’s default
refinement radius.
Trait Implementations§
Source§impl Clone for MotionEstimation
impl Clone for MotionEstimation
Source§fn clone(&self) -> MotionEstimation
fn clone(&self) -> MotionEstimation
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for MotionEstimation
Source§impl Debug for MotionEstimation
impl Debug for MotionEstimation
Source§impl Default for MotionEstimation
impl Default for MotionEstimation
Source§fn default() -> MotionEstimation
fn default() -> MotionEstimation
Returns the “default value” for a type. Read more
Source§impl PartialEq for MotionEstimation
impl PartialEq for MotionEstimation
impl StructuralPartialEq for MotionEstimation
Auto Trait Implementations§
impl Freeze for MotionEstimation
impl RefUnwindSafe for MotionEstimation
impl Send for MotionEstimation
impl Sync for MotionEstimation
impl Unpin for MotionEstimation
impl UnsafeUnpin for MotionEstimation
impl UnwindSafe for MotionEstimation
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