Skip to main content

GicpConfig

Struct GicpConfig 

Source
pub struct GicpConfig {
    pub max_iterations: usize,
    pub max_correspondence_distance: f32,
    pub k_neighbors: usize,
    pub epsilon: f64,
    pub transformation_epsilon: f64,
    pub fitness_epsilon: f64,
    pub min_correspondences: usize,
    pub initial_guess: Isometry3<f32>,
    pub covariance_radius: Option<f32>,
}
Expand description

Configuration for Generalized ICP (plane-to-plane).

GICP models each point’s local surface as an anisotropic Gaussian and minimizes the Mahalanobis distance between correspondences, combining the robustness of point-to-plane ICP for both clouds. Local covariances are estimated from k-nearest neighbors and regularized toward planar disks.

Fields§

§max_iterations: usize

Maximum number of GICP iterations.

§max_correspondence_distance: f32

Maximum correspondence distance.

§k_neighbors: usize

Number of neighbors used to estimate per-point covariance.

§epsilon: f64

Planar regularization: eigenvalue assigned along the surface normal.

§transformation_epsilon: f64

Stop when the transform update is smaller than this threshold.

§fitness_epsilon: f64

Stop when the fitness is smaller than this threshold.

§min_correspondences: usize

Minimum number of correspondences required per iteration.

§initial_guess: Isometry3<f32>

Initial transform guess mapping source into target frame.

§covariance_radius: Option<f32>

When set (and the register-gicp-gpu feature is enabled), estimate per-point covariances on the GPU using a uniform grid neighbor search of this radius instead of the CPU KD-tree. Falls back to CPU on GPU errors.

Implementations§

Source§

impl GicpConfig

Source

pub fn with_correspondence_distance(max_correspondence_distance: f32) -> Self

Creates a config with the given correspondence distance.

Trait Implementations§

Source§

impl Clone for GicpConfig

Source§

fn clone(&self) -> GicpConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GicpConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GicpConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for GicpConfig

Source§

fn eq(&self, other: &GicpConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for GicpConfig

Source§

impl StructuralPartialEq for GicpConfig

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<T> WasmNotSend for T
where T: Send,

§

impl<T> WasmNotSendSync for T
where T: WasmNotSend + WasmNotSync,

§

impl<T> WasmNotSync for T
where T: Sync,