Skip to main content

PointToPlaneIcp

Struct PointToPlaneIcp 

Source
pub struct PointToPlaneIcp { /* private fields */ }
Expand description

Point-to-plane ICP registration.

Implementations§

Source§

impl PointToPlaneIcp

Source

pub fn align_with_gpu_reduction( &self, runtime: &WgpuRuntime, source: &PointCloud, target: &PointCloud, ) -> SpatialResult<GpuPointToPlaneReductionDiagnostics>

Retains source/target/tree/raw normals on GPU for transforms, nearest matching, plane Hessian/gradient and raw-normal plane fitness reductions. CPU solves normalized 6x6 equations and converts the linearized step to the existing world update/stopping convention. Each evaluation explicitly downloads 256 bytes; post-update equations feed the next solve/final fitness. No CPU fallback occurs. Raw normals keep relative length weights and need not be unit vectors. f32 arithmetic may change matches, pose and stopping.

Source§

impl PointToPlaneIcp

Source

pub const fn new(config: PointToPlaneIcpConfig) -> Self

Creates a point-to-plane ICP algorithm from config.

Source

pub const fn config(&self) -> PointToPlaneIcpConfig

Returns the config.

Source

pub fn align_with_diagnostics( &self, source: &PointCloud, target: &PointCloud, ) -> SpatialResult<RegistrationResult>

Aligns source to target minimizing point-to-plane distance.

target must provide normals.

Trait Implementations§

Source§

impl Clone for PointToPlaneIcp

Source§

fn clone(&self) -> PointToPlaneIcp

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 Copy for PointToPlaneIcp

Source§

impl Debug for PointToPlaneIcp

Source§

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

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

impl PartialEq for PointToPlaneIcp

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl PointCloudRegistration for PointToPlaneIcp

Source§

fn name(&self) -> &'static str

Human-readable registration algorithm name.
Source§

fn align( &self, source: &PointCloud, target: &PointCloud, ) -> SpatialResult<RegistrationResult>

Aligns source to target and returns the estimated transform.
Source§

impl StructuralPartialEq for PointToPlaneIcp

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,