pub struct ImPtDetectCfg {Show 14 fields
pub do_update_background_model: bool,
pub polarity: ContrastPolarity,
pub alpha: f32,
pub n_sigma: f32,
pub bright_non_gaussian_cutoff: u8,
pub bright_non_gaussian_replacement: u8,
pub bg_update_interval: u32,
pub diff_threshold: u8,
pub use_cmp: bool,
pub max_num_points: u16,
pub feature_window_size: u16,
pub clear_fraction: f32,
pub despeckle_threshold: u8,
pub valid_region: Shape,
}Expand description
Configuration parameters for feature detection.
These parameters are used in the 2D feature detection step. As such, they are used to parameterize how incoming images are analyzed so that relevant features are extracted and sent onwards for consideration as candidates for 3D tracking.
Fields§
§do_update_background_model: boolSwitch whether to continuously update the background model or not.
polarity: ContrastPolarityWhat kind of difference from the background model to detect.
alpha: f32How much to weight the update of the background model.
Valid range is 0.0 - 1.0. 0.0 means never update, 1.0 means complete replacement on every update.
n_sigma: f32Number of standard deviations a pixel must differ by to be detected.
Used when use_cmp is true. No effect when use_cmp is false. Valid
range is 0.0 - infinity. 0.0 means any difference is detected, large
value means only large deviations from mean are detected.
bright_non_gaussian_cutoff: u8(used when use_cmp is true)
bright_non_gaussian_replacement: u8(used when use_cmp is true)
bg_update_interval: u32How often to update the background model, in number of frames.
Valid range is 0-4294967295.
diff_threshold: u8This is the absolute difference required to detect a point. (For both
use_cmp true and false.)
use_cmp: boolIf use_cmp is true, use n_sigma based difference.
max_num_points: u16How many points above threshold can be detected.
feature_window_size: u16Half the width (and half the height) of the analysis region. In pixels.
clear_fraction: f32Reduces moment arm when detecting pixels.
The result of this computation or despecked_threshold is used,
whichever is larger. Fraction of the maximum difference value in pixel
intensity. Valid range is 0.0 - 1.0. 0.0 means the value is 0, 1.0 means
the value used is the maximum difference in pixel intensity between the
current image and the mean of the background model.
despeckle_threshold: u8Reduces moment arm when detecting pixels.
This value or the result of the clear_fraction computation is used,
whichever is larger. Intensity difference value. Value range is 0-255.
valid_region: ShapeThe shape of the reason over which detected points are checked.
Trait Implementations§
source§impl Clone for ImPtDetectCfg
impl Clone for ImPtDetectCfg
source§fn clone(&self) -> ImPtDetectCfg
fn clone(&self) -> ImPtDetectCfg
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for ImPtDetectCfg
impl Debug for ImPtDetectCfg
source§impl<'de> Deserialize<'de> for ImPtDetectCfg
impl<'de> Deserialize<'de> for ImPtDetectCfg
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>,
source§impl PartialEq for ImPtDetectCfg
impl PartialEq for ImPtDetectCfg
source§fn eq(&self, other: &ImPtDetectCfg) -> bool
fn eq(&self, other: &ImPtDetectCfg) -> bool
self and other values to be equal, and is used
by ==.