pub struct DenseRgbdOdometryOptions {
pub iterations: Vec<usize>,
pub min_depth: f64,
pub max_depth: f64,
pub max_depth_difference: f64,
pub depth_weight: f64,
pub min_correspondences: usize,
pub min_correspondence_fraction: f64,
pub epsilon: f64,
pub max_working_bytes: usize,
}Expand description
Bounded dense photometric/projective-depth least-squares controls.
Fields§
§iterations: Vec<usize>Iterations from coarsest to finest; one to six levels, 1..=100 each.
min_depth: f64Inclusive minimum valid metric depth.
max_depth: f64Inclusive maximum valid metric depth.
max_depth_difference: f64Maximum absolute target-depth / warped-source-depth difference, metres.
depth_weight: f64Relative squared depth weight; intensity weight is one minus this value.
min_correspondences: usizeMinimum projective correspondence count at every level and final pose.
min_correspondence_fraction: f64Minimum matched fraction of all valid source pixels at the returned pose. Initial/intermediate hypotheses need the minimum count and a solvable normal system; they are not yet accepted motion estimates.
epsilon: f64Stop a level when rotation-vector norm plus translation norm is smaller.
max_working_bytes: usizeUpper bound on logical owned pyramid/reduction buffer payloads.
Implementations§
Source§impl DenseRgbdOdometryOptions
impl DenseRgbdOdometryOptions
Sourcepub fn required_working_bytes(
&self,
width: usize,
height: usize,
) -> VisionResult<usize>
pub fn required_working_bytes( &self, width: usize, height: usize, ) -> VisionResult<usize>
Preflights dimensions, controls and logical buffers before allocation.
Excludes input views/copies, allocator headers and worker/thread stacks.
Sourcepub fn required_working_bytes_with_model(
&self,
width: usize,
height: usize,
preprocessing: DenseRgbdPreprocessing,
model: DenseRgbdFittingModel,
) -> VisionResult<usize>
pub fn required_working_bytes_with_model( &self, width: usize, height: usize, preprocessing: DenseRgbdPreprocessing, model: DenseRgbdFittingModel, ) -> VisionResult<usize>
Preflights a complete fitting model before allocating any logical buffers. RoundedSobel owns raw levels, floor pyramids and one level’s Sobel gradients.
Sourcepub fn required_working_bytes_with_preprocessing(
&self,
width: usize,
height: usize,
preprocessing: DenseRgbdPreprocessing,
) -> VisionResult<usize>
pub fn required_working_bytes_with_preprocessing( &self, width: usize, height: usize, preprocessing: DenseRgbdPreprocessing, ) -> VisionResult<usize>
Includes both retained raw levels when filtered fitting is selected.
Trait Implementations§
Source§impl Clone for DenseRgbdOdometryOptions
impl Clone for DenseRgbdOdometryOptions
Source§fn clone(&self) -> DenseRgbdOdometryOptions
fn clone(&self) -> DenseRgbdOdometryOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DenseRgbdOdometryOptions
impl Debug for DenseRgbdOdometryOptions
Source§impl Default for DenseRgbdOdometryOptions
impl Default for DenseRgbdOdometryOptions
Source§impl PartialEq for DenseRgbdOdometryOptions
impl PartialEq for DenseRgbdOdometryOptions
impl StructuralPartialEq for DenseRgbdOdometryOptions
Auto Trait Implementations§
impl Freeze for DenseRgbdOdometryOptions
impl RefUnwindSafe for DenseRgbdOdometryOptions
impl Send for DenseRgbdOdometryOptions
impl Sync for DenseRgbdOdometryOptions
impl Unpin for DenseRgbdOdometryOptions
impl UnsafeUnpin for DenseRgbdOdometryOptions
impl UnwindSafe for DenseRgbdOdometryOptions
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
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> ⓘ
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> ⓘ
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