pub struct IcpResult {
pub pose: Se3,
pub iterations: usize,
pub converged: bool,
pub rmse: f64,
pub correspondences: usize,
pub information: Matrix6<f64>,
}Expand description
The result of a registration.
Fields§
§pose: Se3The transform found: it carries the source into the target frame.
iterations: usizeHow many iterations ran.
converged: boolWhether the step fell below the thresholds.
rmse: f64Root-mean-square residual over the accepted correspondences.
correspondences: usizeHow many correspondences survived rejection.
information: Matrix6<f64>The matrix H = JᵀWJ at the final pose.
Keeping it in the result is a deliberate choice rather than a convenience: this matrix is what the whole project is about. It is what the TSQR path is compared against, and what the conditioning analysis is derived from.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for IcpResult
impl RefUnwindSafe for IcpResult
impl Send for IcpResult
impl Sync for IcpResult
impl Unpin for IcpResult
impl UnsafeUnpin for IcpResult
impl UnwindSafe for IcpResult
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
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> ⓘ
Converts
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> ⓘ
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.