ReUseX  0.0.5
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
reusex::slam::FramePairIcpResult Struct Reference

#include <frame_pair_icp.hpp>

Collaboration diagram for reusex::slam::FramePairIcpResult:

Public Attributes

std::array< double, 16 > relative_pose
 Row-major 4x4 relative pose T_to^{-1} * T_icp_delta * T_from, between the two frames' stored POSE frames (the device/base frames the transform blob describes; the camera's local_transform is not part of it): maps a point from "from"'s pose frame into "to"'s pose frame.
std::array< double, 16 > world_delta
 The ICP correction applied to the "from" cloud in world space (identity when the stored poses already agree), row-major 4x4.
double source_center_shift_m = 0.0
 How far the correction moves the "from" camera's optical centre (m): |delta * c - c|.
double rotation_deg = 0.0
 Rotation angle of world_delta (degrees).
double fitness = 0.0
 RMS correspondence error after ICP (m).
double inlier_fraction = 0.0
 share of "from" points within the gate
bool converged = false
int source_points = 0
 back-projected points of the "from" frame
int target_points = 0
 back-projected points of the "to" frame

Detailed Description

Definition at line 32 of file frame_pair_icp.hpp.

Member Data Documentation

◆ converged

bool reusex::slam::FramePairIcpResult::converged = false

Definition at line 52 of file frame_pair_icp.hpp.

◆ fitness

double reusex::slam::FramePairIcpResult::fitness = 0.0

RMS correspondence error after ICP (m).

Definition at line 50 of file frame_pair_icp.hpp.

◆ inlier_fraction

double reusex::slam::FramePairIcpResult::inlier_fraction = 0.0

share of "from" points within the gate

Definition at line 51 of file frame_pair_icp.hpp.

◆ relative_pose

std::array<double, 16> reusex::slam::FramePairIcpResult::relative_pose
Initial value:
{1, 0, 0, 0, 0, 1, 0, 0,
0, 0, 1, 0, 0, 0, 0, 1}

Row-major 4x4 relative pose T_to^{-1} * T_icp_delta * T_from, between the two frames' stored POSE frames (the device/base frames the transform blob describes; the camera's local_transform is not part of it): maps a point from "from"'s pose frame into "to"'s pose frame.

Definition at line 37 of file frame_pair_icp.hpp.

◆ rotation_deg

double reusex::slam::FramePairIcpResult::rotation_deg = 0.0

Rotation angle of world_delta (degrees).

Definition at line 49 of file frame_pair_icp.hpp.

◆ source_center_shift_m

double reusex::slam::FramePairIcpResult::source_center_shift_m = 0.0

How far the correction moves the "from" camera's optical centre (m): |delta * c - c|.

This is the shift a user means; the translation part of world_delta also folds in the rotation's lever arm about the WORLD origin, so it grows with the distance from the origin.

Definition at line 47 of file frame_pair_icp.hpp.

◆ source_points

int reusex::slam::FramePairIcpResult::source_points = 0

back-projected points of the "from" frame

Definition at line 53 of file frame_pair_icp.hpp.

◆ target_points

int reusex::slam::FramePairIcpResult::target_points = 0

back-projected points of the "to" frame

Definition at line 54 of file frame_pair_icp.hpp.

◆ world_delta

std::array<double, 16> reusex::slam::FramePairIcpResult::world_delta
Initial value:
{1, 0, 0, 0, 0, 1, 0, 0,
0, 0, 1, 0, 0, 0, 0, 1}

The ICP correction applied to the "from" cloud in world space (identity when the stored poses already agree), row-major 4x4.

Definition at line 41 of file frame_pair_icp.hpp.


The documentation for this struct was generated from the following file: